An interactive web application for real-time drone assembly assistance using advanced AI technologies.
Drone Assembler helps users build drones by providing real-time component identification, step-by-step assembly instructions, and visual validation. The application leverages Google's Gemini AI for component recognition and the Janus-1.3B model for generating visual drone representations.
- Real-time Component Identification: Identifies drone parts using your device camera
- Step-by-step Assembly Instructions: Guided assembly process with visual references
- Assembly Validation: Real-time validation to ensure correct component placement
- Voice Control: Hands-free operation with voice command support
- Project Management: Save and manage multiple drone assembly projects
- Drone Visualization: Generate realistic drone images using the Janus-1.3B model
Used for real-time component recognition, assembly validation, and instruction generation.
A specialized image generation model that creates realistic drone visualizations based on component selection and assembly configuration. The Janus model enables:
- Photorealistic drone renders
- Multiple angles and perspectives
- Component-accurate visualizations
- Custom color schemes and designs
- React.js
- TailwindCSS
- Supabase Client
- Node.js with Express
- Google Generative AI (Gemini)
- Winston logger
- Supabase integration
- Python with Flask
- Janus-1.3B model
- PyTorch & Transformers
The application consists of three main components:
- Frontend Application: React-based UI with camera integration and real-time feedback
- Backend API Server: Express server handling AI processing and database operations
- Image Generation Service: Python service for Janus model integration
- Node.js (v16+)
- Python 3.9+
- Supabase account
- Google Gemini API key
-
Clone the repository
git clone https://github.com/yourusername/drone_assembler.git cd drone_assembler -
Set up the backend
cd backend npm installCreate a
.envfile with:PORT=5003 GEMINI_API_KEY=your_gemini_api_key SUPABASE_URL=your_supabase_url SUPABASE_KEY=your_supabase_key -
Set up the frontend
cd ../frontend npm installCreate a
.envfile with:REACT_APP_SUPABASE_URL=your_supabase_url REACT_APP_SUPABASE_ANON_KEY=your_supabase_key REACT_APP_API_URL=http://localhost:5003 -
Set up the image generation service
cd ../services python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt
-
Start the backend
cd backend npm start -
Start the frontend
cd frontend npm start -
Start the image generation service
cd services ./start_service.sh # On Windows: start_service.bat
/api/assembly/gemini/validate- Validate assembly progress/api/assembly/gemini/instructions- Get assembly instructions/api/assembly/gemini/identify-parts- Identify components/api/assembly/project- Project management/api/assembly/visualize- Generate visualizations
/generate- Generate drone images/progress/:taskId- Check generation progress/result/:taskId- Retrieve generated images
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.