An AI-powered code generator that creates preview-ready HTML5 + JavaScript prototypes with streaming generation and surgical editing capabilities.
- π€ AI-Powered Generation: Support for multiple AI models (DeepSeek, OpenAI, Claude, etc.) via LiteLLM
- π Real-time Streaming: Live progress updates with WebSocket integration
- π Intelligent Planning: Automated complexity analysis and generation planning
- π― Multi-Model Support: Switch between different AI providers seamlessly
- βοΈ Surgical Editing: Precise element selection and diff-patch modifications
- π± Responsive Preview: Desktop, tablet, and mobile preview modes with device frames
- πΌοΈ Interactive Preview: Element highlighting and live interaction
- π Live Code Streaming: Watch code generation in real-time
- π Code Workspace: Syntax highlighting with multi-language support
- ποΈ Section Navigation: Organized code sections for easy browsing
- π Auto Documentation: Generate comprehensive project documentation
- πΎ Project Management: Save, load, and manage multiple projects
- π€ Export Options: Download as ZIP or individual files
- π§ͺ Built-in Testing: Quality assurance and automated testing
- π Performance Monitoring: Real-time performance metrics and optimization
- π¨ Error Recovery: Comprehensive error handling and recovery mechanisms
- π Undo/Redo: Full operation history with undo/redo support
- π¨ Beautiful UI: Modern interface with TailwindCSS styling
- π± Fully Responsive: Optimized for all device sizes
- π Theme Support: Dark and light mode options
- π Smart Notifications: Toast notifications and loading states
- β‘ Optimized Performance: Lazy loading and React 18 optimizations
- Frontend: React 18 + TypeScript + Vite + TailwindCSS
- Backend: Node.js + Express + TypeScript + WebSocket
- Database: PostgreSQL + Prisma ORM
- AI: LiteLLM Gateway integration
New to the project? Check out our Quick Start Guide for a 5-minute setup!
-
Clone and install
git clone https://github.com/sanjeev23oct/open-prototype.git cd open-prototype npm run install:all -
Configure environment
cp .env.example .env # Add your database URL and AI provider API keys -
Set up database
npm run db:migrate npm run db:seed
-
Start development
npm run dev
π Open http://localhost:3000 and start creating!
docker-compose up -dThat's it! The application will be available at http://localhost:3000.
Create a .env file in the backend directory:
# Database
DATABASE_URL="postgresql://postgres:password@localhost:5432/ai_prototype_generator"
# DeepSeek Configuration
DEEPSEEK_API_KEY="your-deepseek-api-key"
DEEPSEEK_API_URL="https://api.deepseek.com/v1"
DEFAULT_MODEL="deepseek-chat"
# Server Configuration
PORT=3001
WS_PORT=3002
NODE_ENV=development
# Hardcoded User ID for MVP
DEFAULT_USER_ID="user-12345"
# CORS Origins
CORS_ORIGINS="http://localhost:3000"- Visit platform.deepseek.com
- Sign up or log in to your account
- Navigate to API Keys section
- Create a new API key
- Copy the key and add it to your
.envfile
- deepseek-chat: General purpose model, great for planning and documentation
- deepseek-coder: Specialized for code generation tasks
βββ frontend/ # React + Vite frontend
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Page components
β β βββ stores/ # Zustand state management
β β βββ services/ # API and WebSocket services
β β βββ types/ # TypeScript type definitions
βββ backend/ # Node.js + Express backend
β βββ src/
β β βββ routes/ # API route handlers
β β βββ services/ # Business logic services
β β βββ models/ # Database models
β β βββ websocket/ # WebSocket handlers
β β βββ utils/ # Utility functions
βββ prisma/ # Database schema and migrations
- All code files are kept under 300 lines for maintainability
- Modular architecture with clear separation of concerns
- TypeScript for type safety across the entire stack
- Comprehensive error handling and recovery mechanisms
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and add tests
- Commit your changes:
git commit -m 'feat: 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.
- Thanks to all contributors who help improve this project
- Built with amazing open source technologies
- Special thanks to the AI/ML community for inspiration
- π§ Email: [email protected]
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
If you find this project useful, please consider giving it a star! β
Made with β€οΈ by Sanjeev Kumar