A production-ready, AI-powered platform for generating customized, functioning Next.js applications directly from prompts, powered by Gemini AI and secure E2B cloud sandboxes.
Vibe Website Builder leverages massive generative models to create, compile, and run fully-functional Next.js web applications on the fly. It utilizes Gemini's advanced chat completion capabilities, integrated seamlessly within deeply scalable background jobs via Inngest. Code execution is isolated using E2B Sandboxes to ensure a secure, fault-tolerant user experience with robust system tools.
- Generative AI Engine: End-to-end integration with Google Gemini for powerful, prompt-based code generation.
- Secure Sandboxed Execution: Dynamic generation, linting, and execution inside isolated E2B containers.
- Modern Tech Stack: React, Next.js 15, Shadcn UI, and Tailwind CSS.
- Durable Workflows: Resilient background operations managed by Inngest.
- Typesafe API & DB: Powered by tRPC, Prisma ORM, and serverless PostgreSQL (NeonDB).
Ensure you have the following installed and configured before proceeding:
- Node.js (v18 or higher)
- Docker (For local E2B sandbox workflows)
- Essential accounts:
- Database provider (e.g., NeonDB)
- Analytics/Jobs provider (Inngest)
- Sandbox execution (E2B)
- AI Engine (Google Gemini AI)
- Clone the repository:
git clone https://github.com/your-org/vibe-website-builder.git
cd vibe-website-builder- Install dependencies:
npm install- Configure Environment Variables: Copy the template to initialize your configuration file:
cp .env.example .envEnsure that GEMINI_API_KEY, DATABASE_URL, and other required secrets are configured properly within .env.
Utilize Prisma to scaffold your local PostgreSQL schema.
- Init or push your schema:
npx prisma db push- Optionally, seed your database or generate standard migrations:
npx prisma migrate dev --name init_dbRunning this platform requires starting Next.js concurrently with the Inngest local development server.
- Start the Next.js server:
npm run dev- Start the Inngest local server (in a separate terminal):
npx inngest-cli@latest devThe primary interface will be available at http://localhost:3000.
Vibe relies on dynamic prompting stored in src/prompt.ts, instructing Gemini AI to act as an expert UI/UX developer. The model interacts with the user directory dynamically.
Sandbox templates (sandbox-templates/nextjs/) provide the isolated environments where generated code is installed (npm i), compiled (npx next dev --turbopack), and verified.
For further details regarding the underlying tools, refer to their respective technical documentation:
- Next.js Documentation
- E2B Documentation
- Inngest Documentation
- tRPC Documentation
- Gemini API Documentation
We welcome community contributions. Please ensure that all changes adhere to standard format conventions (npm run lint) and do not introduce hardcoded secrets.
MIT License. See LICENSE for more details.