Project architecture
Overview of the LCMD db project structure and dependencies
Development infrastructure
LCMD db combines a Django API, a Vite/TanStack Router web app, and a Next.js/Fumadocs documentation site.

The development setup includes:
- Django backend with PostgreSQL
- Vite + TanStack Router web app
- Next.js/Fumadocs documentation site
- SeaweedFS for S3-compatible object storage
Project structure
Turborepo + pnpm workspaces + uv workspaces. Everything shippable lives under apps/ or packages/.
Dependencies
Backend core dependencies
Django REST Framework
REST API framework for Django
django-allauth
Browser session authentication flows
DRF Spectacular
OpenAPI schema generation
Web app core dependencies
Vite
Development server and production bundle pipeline
TanStack Router
File-based routing, loaders, guards, and search params
TanStack Query
Client-side API caching and mutations
shadcn/ui
UI component primitives
Docs core dependencies
Development environment
Package management
Frontend package installation:
# Global dependency
just pnpm add react-hook-form -w
# Web app dependency
just pnpm --filter webapp add react-hook-formBackend package installation:
just uv add djangorestframeworkSeaweedFS storage
SeaweedFS — a single weed mini container — provides the S3-compatible object store for local development.
Storage configuration
- S3 API endpoint:
http://localhost:8333 - Health check:
GET http://localhost:8333/healthz - No web console — browse the store with the AWS CLI or any S3 client
AWS_ACCESS_KEY_ID=seaweed AWS_SECRET_ACCESS_KEY=seaweed123 \
aws --endpoint-url http://localhost:8333 s3 lsBuckets
Created by manage.py initialize_buckets (runs as part of just reset_db):
local-media: general media storage (default Django storage)compounds: structure files attached to molecules
Files are streamed through the Django API — the storage endpoint is not exposed publicly.
Default credentials
Development only
These credentials are for development only. Change them in production.
Access key: seaweed
Secret key: seaweed123