A multi-platform AI assistant system with desktop control, mobile app, and wearable device support.
- Gemini AI Integration - Powered by Google's Gemini AI
- Natural Language Processing - Conversational AI interactions
- Context-Aware Responses - Remembers conversation history
- Multi-Device Sync - Seamless experience across devices
- Remote Desktop Control - Control your computer from your phone
- Application Launcher - Open Steam, CS2, Spotify, Chrome, etc.
- Command Execution - Run shell commands remotely
- SSH Support - Connect to servers from your desktop
- Cross-Platform - Windows, macOS, and Linux support
- React Native - iOS and Android support
- Voice Input - Talk to your AI assistant
- Desktop Control - Control your computer remotely
- Device Management - Manage connected devices
- Offline Support - Works without internet
- Electron-based - Native desktop experience
- System Tray - Runs in background
- Floating Window - Quick access assistant
- Global Shortcuts - Keyboard shortcuts for quick access
- Auto-updates - Automatic updates via Electron
- ESP32-based - Custom wearable device
- Gesture Control - Control with hand gestures
- Voice Detection - Wake word detection
- Haptic Feedback - Vibration feedback
- BLE Communication - Bluetooth Low Energy
# Clone the repository
git clone https://github.com/dilyorm/bil.git
cd bil
# Install dependencies
npm install
# Start PostgreSQL and Redis
docker-compose -f docker-compose.dev.yml up -d
# Setup environment variables
cp packages/backend/.env.example packages/backend/.env
# Edit packages/backend/.env and add your API keys
# Start backend
cd packages/backend
npm run dev
# Start desktop app (new terminal)
cd packages/desktop
npm run dev
# Start mobile app (new terminal)
cd packages/mobile
npx expo start- Quick Start Guide - Get started in 5 minutes
- Desktop Control Guide - Complete desktop control documentation
- Desktop App Guide - Desktop application documentation
- Production Setup - Deploy to production
- Security Guide - Security best practices
┌─────────────────────────────────────────────────────────┐
│ BIL System │
├─────────────────────────────────────────────────────────┤
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Mobile │ │ Desktop │ │ Wearable │ │
│ │ App │ │ App │ │ Device │ │
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
│ │ │ │ │
│ └─────────────┼──────────────┘ │
│ │ │
│ ┌──────▼──────┐ │
│ │ Backend │ │
│ │ API │ │
│ └──────┬──────┘ │
│ │ │
│ ┌─────────────┼─────────────┐ │
│ │ │ │ │
│ ┌────▼────┐ ┌────▼────┐ ┌────▼────┐ │
│ │ Gemini │ │PostgreSQL│ │ Redis │ │
│ │ AI │ │ Database │ │ Cache │ │
│ └─────────┘ └─────────┘ └─────────┘ │
│ │
└─────────────────────────────────────────────────────────┘
- Node.js + TypeScript - Runtime and language
- Express - Web framework
- PostgreSQL - Primary database
- Redis - Caching and pub/sub
- WebSocket - Real-time communication
- JWT - Authentication
- Electron - Desktop framework
- React - UI framework
- TypeScript - Type safety
- Vite - Build tool
- React Native - Mobile framework
- Expo - Development platform
- TypeScript - Type safety
- ESP32 - Microcontroller
- C++ - Programming language
- BLE - Communication protocol
- Google Gemini - Primary AI model
- OpenAI (optional) - Alternative AI model
bil/
├── packages/
│ ├── backend/ # Node.js backend API
│ ├── desktop/ # Electron desktop app
│ ├── mobile/ # React Native mobile app
│ └── wearable/ # ESP32 firmware
├── infrastructure/ # Deployment configs
│ ├── k8s/ # Kubernetes manifests
│ ├── terraform/ # Terraform configs
│ └── nginx/ # Nginx configs
├── scripts/ # Utility scripts
├── tests/ # Integration tests
└── docs/ # Documentation
Edit packages/backend/.env:
# Required
GEMINI_API_KEY=your_api_key_here
DATABASE_URL=postgresql://user:pass@localhost:5432/bil
JWT_SECRET=your_secret_here
# Optional
OPENAI_API_KEY=your_openai_key
REDIS_URL=redis://localhost:6379Edit packages/desktop/.env:
VITE_API_URL=http://localhost:3000Edit packages/mobile/src/config/constants.ts:
export const API_URL = 'http://localhost:3000';# Run all tests
npm test
# Run backend tests
cd packages/backend
npm test
# Run desktop tests
cd packages/desktop
npm test
# Run mobile tests
cd packages/mobile
npm test# Install Railway CLI
npm install -g @railway/cli
# Login
railway login
# Deploy
railway up# Configure AWS credentials
aws configure
# Deploy with Terraform
cd infrastructure/terraform
terraform init
terraform apply# Build images
docker-compose build
# Start services
docker-compose up -dContributions are welcome! Please read our Contributing Guide first.
- 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.
- Google Gemini - AI capabilities
- Electron - Desktop framework
- React Native - Mobile framework
- Expo - Mobile development platform
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@bil.example.com
- Voice control from mobile
- Scheduled commands
- Command macros
- Multi-language support
- Cloud sync
- Plugin system
- Web interface
Made with ❤️ by the BIL Team