A professional FastAPI-powered development automation server for iOS development. Built to streamline Xcode workflows, automate builds, and provide remote development control through a clean web interface.

- 🔨 Automated iOS Builds - Build and install apps directly to connected devices
- 📱 Remote App Launch - Launch installed apps on iPhone remotely
- 📊 System Monitoring - Real-time CPU, memory, and disk usage stats
- 🔐 Secure API - API key authentication with localhost bypass
- 📋 Job Management - Organized development tasks with detailed logging
- 🎯 Professional Dashboard - Clean web interface for all operations
apiai-hub/
├── app/
│ ├── server.py # Main FastAPI server
│ ├── config/ # Configuration management
│ ├── api/ # API endpoints (health, jobs, logs)
│ ├── jobs/ # Job definitions and executor
│ ├── utils/ # System utilities
│ └── static/ # Web dashboard
├── bin/ # Development scripts
├── logs/ # Execution logs
└── scripts/ # Job scripts
- Python 3.13+
- Xcode (for iOS development features)
- Connected iPhone (for device builds)
- Clone the repository
git clone https://github.com/nicedreamzapp/apiai-hub.git
cd apiai-hub- Set up virtual environment
python -m venv .venv
source .venv/bin/activate- Install dependencies
pip install -r requirements.txt- Configure environment
cp .env.example .env
# Edit .env with your API key and settings- Run the server
./run.shVisit http://127.0.0.1:8765 to access the dashboard.
| Variable | Description | Default |
|---|---|---|
MINI_API_KEY |
API authentication key | Required |
HOST |
Server host address | 127.0.0.1 |
PORT |
Server port | 8765 |
The server includes specialized jobs for iOS development:
- Xcode Build & Install - Automated device deployment
- App Launch Control - Remote app launching
- System Monitoring - Resource usage tracking
- Log Management - Centralized logging system
GET /health # Health check and system status
GET /stats # System performance metrics
GET /api/jobs # Available job definitions
POST /api/jobs/{job_id} # Execute specific job
GET /api/logs/{log_file} # Retrieve job logs- API Key: Required for remote access via
X-API-Keyheader - Localhost: Automatic bypass for local development
- Security: Environment-based key management
Jobs are organized into logical groups:
- Build & Install on iPhone
- Launch on Device
- Project Management
- Performance Monitoring
- Log Analysis
- Resource Management
Real-time system metrics:
- CPU usage percentage
- Memory utilization
- Disk space tracking
- System uptime
- Define job in
app/jobs/definitions.py:
"new_job_id": {
"name": "Job Name",
"description": "What this job does",
"cmd": "shell command to execute"
}- Job will automatically appear in dashboard
Place executable scripts in scripts/ directory for complex workflows.
All job executions are logged to logs/ with:
- Timestamp information
- Execution output
- Error details
- Performance metrics
- Backend: FastAPI + Uvicorn
- Authentication: API key + localhost bypass
- System: psutil for monitoring
- Frontend: HTML/CSS/JavaScript dashboard
- iOS: Xcode command line tools
- Environment-based API key storage
- Localhost development bypass
- Secure file path handling
- Command injection protection
MIT License - see LICENSE file for details.
- Fork the repository
- Create feature branch
- Make your changes
- Add tests if applicable
- Submit pull request
For questions or issues:
- Open GitHub issue
- Check logs in
logs/directory - Verify environment configuration
Built for professional iOS development workflows 🍎