Transform text prompts into beautiful UI components powered by multiple AI providers
v0.diy is an open-source alternative to v0.dev that puts the power of AI-driven UI generation in your hands. Create, customize, and manage UI components using your preferred frameworks and AI providers.
- 🎯 Multi-Framework Support: Generate components for shadcn/ui, NextUI, and more
- 🤖 Multiple AI Providers: Choose from OpenAI, Anthropic, Google AI, Mistral, etc.
- 🎨 Advanced Customization: Full control over themes, styles, and responsive design
- 🔄 Version Control: Track changes, fork components, and collaborate seamlessly
- Generate components from text prompts or images
- Support for multiple UI frameworks
- Real-time preview and editing
- Responsive design analyzer
- Multiple provider support
- Custom model selection
- Optimized prompts for UI generation
- Advanced context understanding
- Code copy functionality
- Component forking
- Theme management
- Version control
- Collaborative development
- Node.js 18.x or later
- PostgreSQL database
- Git
- Clone the repository:
git clone https://github.com/yourusername/v0.diy.git
cd v0.diy
- Install dependencies:
npm install
-
Set up environment variables:
- Create a
.env.local
file in the root directory - Copy the contents from
.env.example
- Fill in your configuration values
- Create a
-
Start the development server:
npm run dev
Visit http://localhost:3000
to start generating UI components!
Create a .env.local
file with:
# Database
DATABASE_URL=postgresql_url_here
# Authentication
AUTH_SECRET=your_auth_secret
AUTH_GITHUB_ID=your_auth_github_id
AUTH_GITHUB_SECRET=your_auth_github_secret
# Optional: Redis for view count
UPSTASH_REDIS_REST_URL=your_upstash_redis_rest_url
UPSTASH_REDIS_REST_TOKEN=your_upstash_redis_rest_token
- Framework: Next.js 15
- Styling: Tailwind CSS
- UI Components: shadcn/ui, NextUI
- Database: PostgreSQL with Prisma
- Authentication: NextAuth.js
- State Management: Zustand
- AI Integration: Vercel AI SDK
We welcome contributions! Check out our Contributing Guide to get started.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.