AI-Powered Development Platform
A monorepo containing the Supercode dashboard, documentation, terminal AI client, and shared packages.
Supercode is a full-stack AI-powered development platform built as a monorepo using Turborepo. It provides:
- Dashboard - Web interface for managing repositories, viewing analytics, and GitHub OAuth integration
- Documentation - MDX-based documentation site
- Terminal Client - AI-powered terminal coding assistant (in development)
- Video Generation - Remotion-based video creation tools
- Open Model - Fine-tuning open-source LLMs (Qwen3, GLM-4) for coding tasks
This is a monorepo managed with Turborepo, containing multiple applications and shared packages.
| App | Description | Port |
|---|---|---|
apps/web |
Next.js dashboard application | 3000 |
apps/docs |
MDX documentation site | 3001 |
apps/supercode-cli/client |
Terminal AI web client | TBD |
apps/supercode-cli/server |
Terminal WebSocket server | TBD |
apps/api |
API server (scaffolded) | TBD |
apps/video |
Remotion video generation | - |
| Package | Description |
|---|---|
@super/db |
Prisma database client and schema |
@super/auth |
Better-Auth configuration (server & client) |
@super/ui |
Shared UI components |
@super/sdk |
SDK package |
@super/config |
Shared configuration |
@super/dashboard |
Dashboard components |
We're building a coding-focused LLM by fine-tuning open-source models for the Supercode Terminal. This project runs in parallel with the main platform.
Fine-tune open models to create an AI assistant specialized in:
- Code generation and completion
- Debugging and error fixing
- Code explanation and documentation
- Multi-language programming support
We're using a dual-track approach to train two models simultaneously:
| Track | Infrastructure | Model | Method | Estimated Cost |
|---|---|---|---|---|
| Track 1 | Tinker (Managed) | Qwen3-8B | LoRA | $150 free credits |
| Track 2 | Modal + Axolotl | GLM-4-9B | LoRA/QLoRA | ~$15-20 |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β PARALLEL TRAINING TRACKS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β Track 1: Tinker + Qwen3 Track 2: Modal + GLM-4 β
β β
β Setup β Dataset β Fine-tune β Evaluate β Compare β Deploy β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
supercode-openmodel/
βββ training/
β βββ data/ # Dataset preparation scripts
β βββ tinker_qwen3/ # Tinker + Qwen3 training code
β βββ evaluation/ # Model evaluation scripts
βββ models/ # Model checkpoints
βββ config/ # Training configurations
βββ supercode-openmodel.md # Detailed training guide
We use high-quality coding datasets:
| Dataset | Size | Purpose |
|---|---|---|
| CodeAlpaca | 20K | Instruction tuning |
| OpenCodeReasoning | 100K+ | Reasoning + coding |
| CodeFeedback | 156K | Instruction-response |
-
Set up Tinker (Track 1)
pip install tinker export TINKER_API_KEY="your-key" cd supercode-openmodel/training/tinker_qwen3 python train.py
-
Set up Modal (Track 2)
pip install modal modal token new # Configure HuggingFace token in Modal secrets modal run --detach src.train --config=config/glm4.yml
For detailed setup instructions, dataset preparation, and evaluation metrics, see:
- supercode-openmodel.md - Complete training guide with code examples
π§ In Progress - Actively training and evaluating models. The best-performing model will be deployed to the Supercode Terminal app.
- Next.js 16 - React framework with App Router
- React 19 - UI library
- TypeScript 5 - Type safety
- Bun - JavaScript runtime & package manager
- Turborepo - Build system for monorepos
- PostgreSQL - Primary database
- Prisma 7 - Database ORM
- Pinecone - Vector database
- Better Auth - Authentication system
- GitHub OAuth - Social login
- Tailwind CSS v4 - Utility-first CSS
- Radix UI - Component primitives
- Framer Motion - Animations
- Lucide Icons - Icon library
- TanStack Query - Server state management
- React Hook Form - Form handling
- Zod - Schema validation
- Google Gemini - AI model (embeddings)
- AI SDK - AI integration
-
Clone the repository
git clone https://github.com/yashdev9274/supercli.git cd supercli -
Install dependencies
bun install
-
Set up environment variables
cp .env.example .env
Edit
.envwith your configuration. Required variables:DATABASE_URL="postgresql://..." BETTER_AUTH_SECRET="your-secret-key" BETTER_AUTH_URL="http://localhost:3000" GITHUB_CLIENT_ID="your-github-oauth-id" GITHUB_CLIENT_SECRET="your-github-oauth-secret"
-
Set up the database
cd packages/db bunx prisma migrate dev bun run db:generate cd ../..
-
Start development servers
# Start all apps bun run dev # Or start specific apps bun run dev:web # Dashboard on port 3000 bun run dev:docs # Docs on port 3001 bun run dev:terminal # Terminal client
-
Open your browser
- Dashboard: http://localhost:3000
- Documentation: http://localhost:3001
- Go to GitHub Developer Settings
- Create a new OAuth App
- Set Authorization callback URL:
http://localhost:3000/api/auth/callback/github - Copy Client ID and Client Secret to your
.envfile
supercli/
βββ apps/
β βββ web/ # Dashboard application
β β βββ app/ # Next.js App Router
β β β βββ (auth)/ # Auth pages
β β β βββ dashboard/ # Dashboard pages
β β β βββ api/ # API routes
β β βββ components/ # React components
β β βββ lib/ # Utilities
β β βββ modules/ # Feature modules
β β
β βββ docs/ # Documentation site
β β βββ app/ # Next.js App Router
β β βββ content/ # MDX content
β β
β βββ supercode-cli/ # Terminal AI app
β β βββ client/ # Web client
β β βββ server/ # WebSocket server
β β
β βββ api/ # API server
β βββ video/ # Video generation #optional
β
βββ packages/
β βββ db/ # Prisma client
β β βββ prisma/
β β βββ schema.prisma
β β
β βββ auth/ # Better-Auth config
β β βββ server.ts
β β βββ client.ts
β β
β βββ ui/ # Shared UI
β βββ sdk/ # SDK
β βββ config/ # Config
β βββ dashboard/ # Dashboard components
β
βββ supercode-openmodel/ # LLM fine-tuning project
β βββ training/ # Training scripts
β βββ models/ # Model checkpoints
β βββ config/ # Training configs
β βββ supercode-openmodel.md # Training guide
β
βββ turbo.json # Turborepo config
βββ package.json # Root package
βββ .env.example # Environment template
βββ CONTRIBUTING.md # Contribution guide
βββ README.md # This file
bun run dev # Start all apps
bun run dev:web # Dashboard only (port 3000)
bun run dev:docs # Docs only (port 3001)
bun run dev:terminal # Terminal client only
bun run dev:api # API server onlybun run build # Build all apps and packages
bun run lint # Run ESLint across all packages
bun run typecheck # Run TypeScript checkscd packages/db
bun run db:generate # Generate Prisma client
bun run db:migrate # Deploy migrations
bunx prisma studio # Open Prisma Studio
bunx prisma migrate dev --name migration_name # Create migrationbun run dev:video # Start Remotion studio
bun run build:video # Build video
bun run build:video:square # Square format
bun run build:video:vertical # Vertical formatSee .env.example for all available environment variables.
| Variable | Description |
|---|---|
DATABASE_URL |
PostgreSQL connection string |
BETTER_AUTH_SECRET |
Session encryption secret |
BETTER_AUTH_URL |
Base URL (http://localhost:3000) |
GITHUB_CLIENT_ID |
GitHub OAuth app client ID |
GITHUB_CLIENT_SECRET |
GitHub OAuth app secret |
| Variable | Description |
|---|---|
GOOGLE_GEMINI_API_KEY |
Google Gemini AI API key |
PINECONE_DB_API_KEY |
Pinecone vector database key |
HUGGING_FACE_TOKEN |
Hugging Face API token |
TINKER_API_KEY |
Tinker API key for LLM fine-tuning |
We welcome contributions! Please see our Contributing Guide for details on:
- Development setup
- Code style guidelines
- Commit conventions
- Pull request process
This project is currently private and proprietary.