apps/api
The core API server. All media transformation, upload, and storage logic lives here.hono, sharp, fluent-ffmpeg, @aws-sdk/client-s3, better-sqlite3, better-auth
apps/web
The Next.js 15 admin dashboard. Provides a UI for managing uploads, API keys, and video queue status.next, react, @tanstack/react-query, better-auth, Radix UI, Tailwind CSS v4
packages/shared
Shared code consumed by bothapi and web. Keeps auth configuration and the SQLite instance in one place so both apps always use the same database.
Dependency flow
shared via the "shared" and "shared/*" path aliases defined in packages/shared/package.json.
Next steps
Local Development
Run the monorepo locally with pnpm.
Security
Auth architecture, API keys, and route reference.