{"id":49887895,"url":"https://github.com/jtgsystems/phone-control-project","last_synced_at":"2026-05-15T19:05:33.942Z","repository":{"id":251709531,"uuid":"838137270","full_name":"jtgsystems/Phone-Control-Project","owner":"jtgsystems","description":"📱 Phone control system - Remote device management \u0026 automation","archived":false,"fork":false,"pushed_at":"2026-04-13T18:52:51.000Z","size":6421,"stargazers_count":1,"open_issues_count":10,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-13T19:25:39.403Z","etag":null,"topics":["ai","android","automation","device-management","docker","fastapi","html","ios","javascript","linux","llm","nextjs","nlp","phone","python","rag","react","remote-control","tools","web"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jtgsystems.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2024-08-05T02:52:55.000Z","updated_at":"2026-04-13T18:52:56.000Z","dependencies_parsed_at":"2025-10-22T11:19:37.229Z","dependency_job_id":"b5b4669f-2ef0-48e8-8490-4f7abf3a16fa","html_url":"https://github.com/jtgsystems/Phone-Control-Project","commit_stats":null,"previous_names":["jtgsystems/phone-control-project"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jtgsystems/Phone-Control-Project","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FPhone-Control-Project","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FPhone-Control-Project/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FPhone-Control-Project/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FPhone-Control-Project/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jtgsystems","download_url":"https://codeload.github.com/jtgsystems/Phone-Control-Project/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FPhone-Control-Project/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33075277,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T11:35:32.926Z","status":"ssl_error","status_checked_at":"2026-05-15T11:35:31.362Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","android","automation","device-management","docker","fastapi","html","ios","javascript","linux","llm","nextjs","nlp","phone","python","rag","react","remote-control","tools","web"],"created_at":"2026-05-15T19:05:29.265Z","updated_at":"2026-05-15T19:05:33.933Z","avatar_url":"https://github.com/jtgsystems.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Banner](banner.png)\n\n# Phone Control Project 2.0 🚀\n\nAdvanced Android device control with modern web interface, wireless connectivity, and comprehensive automation features.\n\n## ✨ Features\n\n### 🔥 New in v2.0\n- **Modern Web Interface** - Beautiful, responsive UI with real-time controls\n- **Wireless ADB Connection** - Connect devices over WiFi without USB cables\n- **Cross-Platform Support** - Works on Windows, macOS, and Linux\n- **Advanced Automation** - Batch operations, performance monitoring, and scripting\n- **Electron Desktop App** - Native desktop experience with system integration\n- **Docker Support** - Easy deployment with containerization\n- **Python API** - FastAPI backend with comprehensive device management\n- **File Transfer** - Drag-and-drop file transfers between device and computer\n- **Screen Recording** - Built-in screen recording with customizable settings\n\n### 📱 Core Features\n- Real-time device discovery and management\n- High-quality screen mirroring with scrcpy\n- Remote shell access and command execution\n- APK installation and management\n- Device backup and restore\n- Performance monitoring and optimization\n- Network speed testing\n- Automated app testing\n\n## 🚀 Quick Start\n\n### Prerequisites\n- Node.js 18+ \n- Python 3.8+\n- Android device with USB debugging enabled\n\n### Installation\n\n#### Option 1: Traditional Setup\n```bash\n# Clone the repository\ngit clone https://github.com/jtgsystems/Phone-Control-Project.git\ncd Phone-Control-Project\n\n# Install Node.js dependencies\nnpm install\n\n# Install Python dependencies\npip install -r requirements.txt\n\n# Start the application\nnpm start\n```\n\n#### Option 2: Docker Setup\n```bash\n# Clone and start with Docker\ngit clone https://github.com/jtgsystems/Phone-Control-Project.git\ncd Phone-Control-Project\n\n# Start all services\ndocker-compose up -d\n\n# Access the web interface\nopen http://localhost:3000\n```\n\n#### Option 3: Electron Desktop App\n```bash\n# Install and start Electron app\nnpm install\nnpm run electron\n```\n\n## 📖 Usage Guide\n\n### 1. Connect Your Device\n\n#### USB Connection\n1. Enable Developer Options on your Android device\n2. Enable USB Debugging in Developer Options\n3. Connect device via USB cable\n4. Authorize the connection when prompted\n\n#### WiFi Connection\n1. First connect via USB to enable WiFi debugging\n2. Click \"Enable WiFi\" button for your device\n3. Note your device's IP address\n4. Click \"WiFi Connect\" and enter the IP address\n5. Disconnect USB cable - you're now wireless!\n\n### 2. Screen Mirroring\n- Click \"Start Mirror\" to begin screen mirroring\n- Use keyboard shortcuts for common actions\n- Customize video quality in settings\n\n### 3. File Transfer\n- Click \"Transfer Files\" to upload/download files\n- Drag and drop files directly onto the interface\n- Monitor transfer progress in real-time\n\n### 4. Remote Shell\n- Click \"ADB Shell\" to open command interface\n- Execute any ADB command directly\n- View command history and output\n\n## 🔧 Advanced Features\n\n### Automation Scripts\n```javascript\n// Example: Batch install APKs\nconst automation = new DeviceAutomation(deviceController);\nconst results = await automation.batchInstallApks(deviceId, [\n    '/path/to/app1.apk',\n    '/path/to/app2.apk'\n]);\n```\n\n### Performance Monitoring\n```javascript\n// Monitor device performance for 60 seconds\nconst metrics = await automation.monitorPerformance(deviceId, 60000);\nconsole.log('CPU Usage:', metrics.summary.cpu.avg);\n```\n\n### Custom Automation\n```javascript\n// Automated app testing\nconst testActions = [\n    { type: 'tap', x: 500, y: 1000 },\n    { type: 'swipe', x1: 300, y1: 800, x2: 300, y2: 400 },\n    { type: 'text', text: 'Hello World' }\n];\nawait automation.testApp(deviceId, 'com.example.app', testActions);\n```\n\n## 🏗️ Architecture\n\n```\nPhone-Control-Project/\n├── src/\n│   ├── api/           # Python FastAPI backend\n│   ├── ui/            # Web interface (HTML/CSS/JS)\n│   ├── core/          # Core device management\n│   └── utils/         # Automation utilities\n├── Software/          # Bundled ADB and scrcpy\n├── electron-main.js   # Electron desktop app\n└── docker-compose.yml # Docker deployment\n```\n\n## 🔌 API Endpoints\n\n### Device Management\n- `GET /api/devices` - List connected devices\n- `POST /api/connect-wifi` - Connect via WiFi\n- `POST /api/enable-wifi/{device_id}` - Enable WiFi debugging\n\n### Screen Control\n- `POST /api/scrcpy/start` - Start screen mirroring\n- `POST /api/scrcpy/stop` - Stop screen mirroring\n- `POST /api/screenshot/{device_id}` - Take screenshot\n\n### File Operations\n- `POST /api/upload/{device_id}` - Upload file to device\n- `POST /api/download/{device_id}` - Download from device\n\n### Automation\n- `POST /api/shell-command` - Execute shell command\n- `POST /api/install-apk` - Install APK file\n- `POST /api/backup` - Backup device data\n\n## ⚙️ Configuration\n\n### Environment Variables\n```bash\n# Web Server\nPORT=3000\nNODE_ENV=production\n\n# API Server\nAPI_HOST=0.0.0.0\nAPI_PORT=8000\nPYTHONPATH=/app\n\n# Database\nREDIS_URL=redis://localhost:6379\n```\n\n### Scrcpy Options\n```json\n{\n  \"bitrate\": \"8M\",\n  \"maxSize\": \"1080\",\n  \"renderer\": \"opengl\",\n  \"stayAwake\": true,\n  \"showTouches\": true\n}\n```\n\n## 🚀 Performance Optimizations\n\n- **Concurrent Operations** - Multiple devices handled simultaneously\n- **Efficient Streaming** - Optimized video compression and transmission\n- **Memory Management** - Smart resource cleanup and monitoring\n- **Network Optimization** - Adaptive bitrate and connection pooling\n\n## 🔒 Security Features\n\n- Input validation and sanitization\n- Secure file upload handling\n- Process isolation and sandboxing\n- Authentication and authorization support\n- Certificate validation for HTTPS\n\n## 📱 Supported Platforms\n\n- **Windows** 10/11\n- **macOS** 10.15+\n- **Linux** Ubuntu 18.04+\n- **Android** 5.0+ (API level 21+)\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature-name`\n3. Make your changes and test thoroughly\n4. Commit changes: `git commit -m 'Add feature description'`\n5. Push to branch: `git push origin feature-name`\n6. Create a Pull Request\n\n## 📝 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🆘 Troubleshooting\n\n### Common Issues\n\n**Device not detected:**\n- Ensure USB debugging is enabled\n- Try different USB cable/port\n- Install device drivers (Windows)\n\n**Connection timeout:**\n- Check firewall settings\n- Verify IP address is correct\n- Ensure device and computer are on same network\n\n**Screen mirroring laggy:**\n- Reduce video bitrate in settings\n- Lower maximum resolution\n- Check network bandwidth\n\n### Getting Help\n\n- 📚 [Documentation](https://github.com/jtgsystems/Phone-Control-Project/wiki)\n- 🐛 [Report Issues](https://github.com/jtgsystems/Phone-Control-Project/issues)\n- 💬 [Discussions](https://github.com/jtgsystems/Phone-Control-Project/discussions)\n\n## 🎯 Roadmap\n\n- [ ] iOS device support\n- [ ] Cloud deployment options\n- [ ] Machine learning automation\n- [ ] Plugin system for extensions\n- [ ] Multi-language support\n- [ ] Advanced scripting interface\n\n---\n\n**Built with ❤️ by JTG Systems**\n\n*Empowering developers with advanced Android device control*\n\n### SEO Keyword Cloud\n\n`android` `adb` `phone` `control` `automation` `remote` `management` `scrcpy` `mirroring` `streaming` `wifi` `wireless` `usb` `debugging` `fastapi` `electron` `docker` `nodejs` `react` `api` `dashboard` `monitoring` `scripting` `testing` `qa` `deployment` `crossplatform` `performance` `optimization` `screenshots` `recording` `filetransfer` `backup` `restore` `shell` `commands` `telemetry` `notifications` `orchestration` `multi-device` `analytics` `productivity` `troubleshooting` `devops` `enterprise` `support` `integration` `workflow` `roadmap`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjtgsystems%2Fphone-control-project","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjtgsystems%2Fphone-control-project","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjtgsystems%2Fphone-control-project/lists"}