Prerequisites
You’ll need the following installed:- Bun (latest version) - Install Bun
- Node.js 20+ (for compatibility with some tools)
- A code editor (VS Code recommended)
Quick Start
Start the development server
Available Scripts
Run these from theweb/ directory:
| Script | Command | Description |
|---|---|---|
| Development | bun dev | Start dev server with hot reload |
| Build | bun build | Create production build |
| Start | bun start | Run production server |
| Lint | bun lint | Run oxlint for code quality |
| Format | bun format | Format code with oxfmt |
Tech Stack
The web app uses a modern, curated stack:Framework
Next.js 16 with App RouterReact 19 Server Components
Runtime
Bun for fast installs and executionNative APIs preferred over Node.js
UI Components
shadcn/ui (Base UI primitives)Tailwind CSS for styling
Code Quality
oxlint/oxfmt for linting and formattingTypeScript strict mode
Project Configuration
TypeScript Configuration
The project uses strict TypeScript with path aliases:web/tsconfig.json
The
@/ alias maps to the web root, so @/components/ui/button resolves to web/components/ui/button.tsxNext.js Configuration
Minimal configuration for flexibility:web/next.config.ts
shadcn/ui Configuration
Component library setup:web/components.json
Environment Setup
Troubleshooting
Port 3000 already in use
Port 3000 already in use
Kill the process using port 3000 or use a different port:
Dependencies won't install
Dependencies won't install
Clear the Bun cache and try again:
Type errors in editor
Type errors in editor
Restart your TypeScript server:
- VS Code:
Cmd+Shift+P→ “TypeScript: Restart TS Server”
Next Steps
Project Structure
Learn the directory conventions
Components
Explore the component library
Features
Understand feature-based architecture
Linting
Configure oxlint and oxfmt