Our Dashboard is a modern, feature-rich web application built to manage and monitor E2B services. Built with Next.js 15 and React 19, it provides a seamless user experience for managing sandboxes, API keys, and usage analytics.
- Modern Stack: Built with Next.js 15, React 19, and TypeScript
- Real-time Analytics: Monitor your sandbox usage and performance
- Authentication: Secure authentication powered by Supabase
- Documentation: Integrated MDX documentation support
- Type Safety: Full TypeScript support throughout the codebase
- Node.js 18+ or Bun 1.2+
- Git
- Vercel account
- Supabase account
- PostHog account (optional for analytics)
- Clone the repository
git clone https://github.com/e2b-dev/dashboard.git
cd dashboard
- Install dependencies
bun install
# or
npm install
- Set up required services:
# Install Vercel CLI
npm i -g vercel
# Link project to Vercel
vercel link
# Set up Vercel KV
vercel storage add
# Select "KV" and follow the prompts
- Create a new Supabase project
- Go to Project Settings > API
- Copy the
anon key
andservice_role key
- Copy the project URL
# Copy the example env file
cp .env.example .env.local
# Pull environment variables from Vercel (recommended)
vercel env pull .env.local
# Or manually configure the environment variables outlined in the .env.example file
- Start the development server
bun run dev
# or
npm run dev
The application will be available at http://localhost:3000
This application is optimized for deployment on Vercel:
- Push your changes to GitHub
- Import your repository in Vercel
- Deploy!
Note: The application uses Partial Prerendering (PPR) which is currently only supported on Vercel's infrastructure. This can be turned off inside
next.config.mjs
.
bun run dev
- Start development server with Turbo and pretty loggingbun run build
- Create optimized production buildbun run start
- Start production server with pretty loggingbun run preview
- Build and start production server locallybun run lint
- Run ESLint checksbun run lint:fix
- Run ESLint and auto-fix issuesbun run dev:scan
- Start dev server with file scanningbun run start:scan
- Start prod server with file scanningbun run storybook
- Launch Storybook for component developmentbun run db:types
- Generate TypeScript types from Supabase schemabun run db:migration
- Create new database migration
Required variables for local development:
See src/lib/env.ts
for all required environment variables and their validation schemas.
src/
├── app/ # Next.js app router pages
├── features/ # Feature-specific components
├── ui/ # Reusable UI components
├── lib/ # Utility functions and shared logic
├── styles/ # Global styles and Tailwind config
└── types/ # TypeScript type definitions
└── server/ # Server only logic & actions
We welcome contributions! Please see our Contributing Guide for details.
This project is licensed under the terms specified in LICENSE.
- Documentation: E2B Docs
- Issues: GitHub Issues
- Discord: Join our Community