mirror of
https://github.com/aljazceru/enclava.git
synced 2025-12-17 07:24:34 +01:00
05cfa58228f15dbc74cfceeb2ad4305fc4e60a4d
This review covers: - Complete architecture analysis - Database schema deep dive (18 models) - Security assessment (75/100 score) - API routes analysis (155+ endpoints) - Frontend analysis (147 TS files) - AI/ML integration review (LLM, RAG, embeddings) - Module system analysis - Testing coverage (525 tests) - Critical issues and recommendations Key Findings: - Overall Score: 7.2/10 (Good - Production-ready with improvements) - 10 Critical security issues identified - 20 High priority issues documented - Production-ready after P0 fixes (~30 hours) Critical Issues: - Missing CSRF protection - No authentication on platform endpoints - Weak bcrypt configuration (6 rounds) - Missing database indexes on high-volume tables - Frontend XSS vulnerabilities Recommendations organized by priority (P0, P1, P2) with time estimates
Enclava
Confidential AI Platform for businesses
Enclava is a comprehensive AI platform that makes privacy practical. It provides easy to create openai compatible chatbots and API endpoints with knowledge base access (RAG). All in a completely confidential way through privatemode.ai
Key Features
- AI Chatbots - Customizable chatbots with prompt templates and RAG integration (openai compatible)
- RAG System - Document upload, processing, and semantic search with Qdrant
- TEE Security - Privacy-protected LLM inference via confidential computing
- OpenAI Compatible - Standard API endpoints for seamless integration with existing tools
- Budget Management - Built-in spend tracking and usage limits
Quick Start
Prerequisites
- Docker and Docker Compose
- Git
- privatemode.ai api key
1. Clone Repository
git clone <repository-url>
cd enclava
2. Configure Environment
# Copy example environment file
cp .env.example .env
# Edit .env with your settings
vim .env
Required Configuration:
# Security
JWT_SECRET=your-super-secret-jwt-key-here-change-in-production
# PrivateMode.ai API Key (optional but recommended)
PRIVATEMODE_API_KEY=your-privatemode-api-key
# Base URL for CORS and frontend
BASE_URL=localhost
3. Deploy with Docker
# Start all services
docker compose up --build
# Or run in background
docker compose up --build -d
4. Access Application
- Main Application: http://localhost
- API Documentation: http://localhost/docs (backend API)
- Qdrant Dashboard: http://localhost:56333/dashboard
5. Default Login
- Username:
admin - Password:
admin123
Change default credentials immediately in production!
Configuration
Environment Variables
See .env.example for all available configuration options.
Support
- Documentation: docs.enclava.ai
- Issues: Use the GitHub issue tracker
- Security: Report security issues privately
Description
Languages
Python
72.3%
TypeScript
26.9%
Shell
0.3%
CSS
0.3%
JavaScript
0.1%