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.