Quick Start
Get IndieStack running from zero in minutes.
Prerequisites
- Node.js 18.17+ (nvm recommended)
- npm 9+ or pnpm 8+
- Git
- Supabase CLI (optional, for local database management)
- Docker Desktop (optional, for local PostgreSQL)
Clone & Install
bash
git clone <repo-url> indiestack
cd indiestack
pnpm installConfigure Environment
bash
cp .env.example .env.localEdit .env.local based on your development mode:
Option 1: Mock Mode (Recommended for Early Development)
No real Supabase backend needed. All data is generated by @faker-js/faker:
bash
# Mock Mode: set to true, no Supabase config needed
NEXT_PUBLIC_MOCK_ENABLED=trueOption 2: Real Supabase Backend
Create a Supabase project and get the config:
bash
NEXT_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJhbGciOiJIUzI1NiIs...
NEXT_PUBLIC_MOCK_ENABLED=falseStart Dev Server
bash
# Start with Mock mode (recommended for early development)
pnpm dev:mock
# Or start with Supabase mode
pnpm dev:supabase
# Standard mode
pnpm devOpen http://localhost:3000.
Quick Tour
Once IndieStack is running:
- Browse Home: Marketing landing page with feature showcase
- View Pricing: Three pricing tiers (Free / Pro / Enterprise)
- Login: In Mock mode, click "Sign In" to access dashboard without real credentials
- Explore Dashboard: Project management, team collaboration, analytics, notifications
- Switch Theme: Toggle light/dark/system in the top-right corner
- Switch Language: Toggle Chinese/English in the top-right corner
Build for Production
bash
pnpm build
pnpm startDatabase Setup (Supabase Mode)
If using Supabase mode, initialize the database:
bash
npx supabase login
npx supabase link --project-ref your-project-ref
pnpm db:migrate
pnpm db:types
npx supabase db seedVerify Installation
Visit these pages to confirm everything works:
| Page | Path | Description |
|---|---|---|
| Home | / | Marketing landing page |
| Features | /features | Feature showcase |
| Pricing | /pricing | Pricing plans |
| Login | /auth/login | Email + GitHub + Google |
| Register | /auth/register | New user sign up |
| Dashboard | /dashboard | Requires login |
| Profile | /dashboard/profile | User info |
| Team | /dashboard/team | Create and invite team |
| Projects | /dashboard/projects | Project management |
| Analytics | /dashboard/analytics | Usage statistics |
| Settings | /dashboard/settings | Account and appearance |
| Billing | /dashboard/billing | Subscription management |
| API Keys | /dashboard/api-keys | API key management |
| Integrations | /dashboard/integrations | Third-party services |
| Admin | /dashboard/admin | User management (admin only) |
Next Steps
- 📖 Read about Architecture for design overview
- 🏗️ Check Project Structure for code organization
- 🔐 Learn Auth Flow for permissions system
- 🚀 See Deployment to launch your app
- 🧪 Explore Mock Mode for mock data development
- ⚙️ Browse Configuration for full environment setup