Created by Arian Rudd
Turn ideas into production-ready apps and solutions. Zero code required. CODAI enables anyone to build fully functional applications using natural language.
π Website: codai.ai
π¦ Creator: @AriRudd
CODAI/
βββ server/ # FastAPI backend
β βββ routes/ # API endpoints
β βββ middleware/ # Request middleware
β βββ app.py # Main application
βββ frontend/ # Next.js frontend
β βββ src/ # Source code
β β βββ components/# React components
β β βββ hooks/ # Custom hooks
β β βββ lib/ # Utilities
β βββ package.json # Frontend dependencies
βββ core/ # Core backend functionality
β βββ api/ # Claude API integration
β βββ logging/ # Logging system
β βββ schemas/ # Data schemas
βββ tools/ # Tool implementations
β βββ computer/ # Computer use tools
β βββ web/ # Web interaction
β βββ pdf/ # PDF processing
βββ config/ # YAML configuration
βββ Docs/ # Documentation
- Python 3.9+
- Node.js 18+
- Git
- Anthropic API key
The open-source web version allows you to run CODAI in your browser with full functionality. Perfect for:
- Immediate access without installation
- Cross-platform compatibility (Windows, Mac, Linux)
- Team collaboration
- Cloud deployment
Native Electron desktop application with enhanced capabilities:
- Self-contained application (no separate install required)
- Local file system access with native dialogs
- Bundled Python backend (no Python install needed)
- Works offline once installed
- Available for Windows, macOS, and Linux
- Clone the repository:
git clone https://github.com/thecodai/Codai
cd Codai- Choose your platform:
# Run the Electron setup wizard
.\setup-electron.ps1
# or
setup-electron.bat
# Start the desktop app
npm run dev# Run the Electron setup
./setup-electron.sh
# Start the desktop app
npm run dev.\setup.ps1This provides a user-friendly wizard interface with colored output and system checks.
setup.batpython -m setup./setup.shThis provides a user-friendly wizard interface with colored output and system checks.
python -m setupThis will:
- Create virtual environment
- Install Python dependencies
- Install frontend dependencies
- Set up configuration files
- Initialize the database
- Set your API key in the UI:
- Open http://localhost:8001
- Click Settings β API Keys
- Add your Anthropic API key
python run_server.py
# Or with options:
python run_server.py --env development --log-level debugcd frontend
npm run dev# Backend tests
pytest
# Frontend tests
cd frontend
npm test
npm run lint- No Coding Required: If you can describe it, CODAI can build it
- As Simple as Google: Just type what you want in plain English
- Complete Applications: Not just code snippets - full, production-ready apps
- Open Source: Web-based version available now, desktop version coming soon
- Claude 4 Integration: Latest Anthropic models with extended thinking
- Intelligent Context Management: Automatic summarization and token optimization
- Multi-Model Support: Claude 4 Opus, Sonnet, and Haiku models
- Computer Use: Automated screen capture and interaction capabilities
- Secure API Key Management: Military-grade encryption (AES-256-GCM)
- Session Management: Persistent conversations with import/export
- Comprehensive Monitoring: Real-time performance and usage analytics
- Error Recovery: Robust error handling with automatic recovery
# Encryption secret (auto-generated on first run if not set)
ENCRYPTION_SECRET=<auto-generated-or-your-custom-secret>
# Optional - users can add via UI instead
ANTHROPIC_API_KEY=sk-ant-api-key
# Environment
APP_ENV=developmentNote: The encryption secret is now automatically generated on first server start if not provided.
config/base.yaml- Base configurationconfig/environments/*.yaml- Environment overridesconfig/local.yaml- Local overrides (git ignored)
Users can add their Anthropic API keys through the UI:
- Open Settings (gear icon)
- Navigate to API Keys
- Enter your key (must start with
sk-ant-) - Save and test the connection
- Click "Continue to Chat" when validated
Keys are:
- Encrypted with AES-256-GCM
- Stored securely in the backend database
- Never exposed in logs or responses
- Tied to user sessions
Configure complex reasoning in config/base.yaml:
ai:
extended_thinking:
enabled: true
budget_tokens: 5000 # 1024-16000
show_thinking: true
auto_detect: true- API Keys: Encrypted storage with session isolation
- CORS: Configured for development/production
- Rate Limiting: 60 requests/minute per IP
- Input Validation: Comprehensive request validation
- Audit Logging: All API key operations logged
See /Docs/New/ for detailed documentation:
- Architecture overview
- Feature implementations
- API documentation
- Configuration guide
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Copyright (c) 2025 Arian Rudd
The author kindly requests that any derivative works or implementations:
- Keep the CODAI branding or mention "Based on CODAI" in your derivative works
- Include attribution: "Originally created by Arian Rudd"
- Link back to this repository when practical
The CODAI logo and visual identity are proprietary. Please see BRANDING.md for usage guidelines.
Under GPL-3.0, you must:
- Provide source code when distributing the software
- License any derivative works under GPL-3.0
- Include copyright and license notices
- Document any changes made to the original code
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Created and maintained by Arian Rudd
CODAI represents a significant investment of time and effort. If you find it useful, please consider:
- β Starring this repository
- π Linking back to this project
- π£ Sharing your experience with CODAI
- π Visiting codai.ai for more information
- Website: codai.ai
- X (Twitter): @AriRudd
- GitHub: thecodai/Codai
For questions about commercial use or custom implementations, please visit codai.ai or reach out on X.