The main backend service for Xether AI, providing the core API layer, authentication, authorization, and metadata management for the enterprise data infrastructure platform.
- User authentication via OAuth2 and JWT
- Role-based access control (RBAC)
- Team and project-level permissions
- API key management for programmatic access
- Central metadata registry for all datasets
- Dataset versioning and lineage tracking
- Schema validation and statistics storage
- Immutable historical snapshots
- User account management
- Team and organization structure
- Project workspace management
- Access policies and governance
- RESTful API for external clients
- Request routing and validation
- Rate limiting and quota management
- API documentation (OpenAPI/Swagger)
- Pipeline execution triggers
- Job scheduling and monitoring
- Event publishing to message bus
- Status tracking and notifications
- REST API: External client communication, CRUD operations (FastAPI)
- gRPC: Internal service-to-service communication foundation initialized.
- Event Bus: Redis Streams for asynchronous event publishing (datasets, pipelines).
- Language: Python 3.11+
- Framework: FastAPI
- ASGI Server: Uvicorn + Gunicorn (production)
- ORM: SQLAlchemy 2.0 (Async)
- Database: PostgreSQL 15+
- Migrations: Alembic
- Auth: OAuth2 + JWT (Internal implementation)
- Cache: Redis 7+
- Async Tasks: Celery with Redis backend
- Observability: Prometheus metrics + Structured JSON Logging
- Python 3.11+
- Docker & Docker Compose
- Redis (Optional if running locally without Docker)
- PostgreSQL (Optional if running locally without Docker)
- Clone the repository
- Setup virtual environment:
python -m venv venv source venv/bin/activate pip install -r requirements.txt - Start Infrastructure:
docker compose up -d
- Run Migrations:
alembic upgrade head
- Start Application:
uvicorn main:app --reload
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc
/api/v1
├── /auth # Authentication & Token management
├── /users # User profiles & Admin management
├── /teams # Team & Membership management
├── /projects # Project workspaces & RBAC
├── /datasets # Dataset registry & Versioning
├── /pipelines # Pipeline config & Execution triggering
└── /audit-logs # System audit trails
Run the full test suite with coverage:
pytest --cov=app tests/✅ Phase 7 Complete - Core API, Auth, Integration, and Testing (76% coverage) implemented. 🚀 Phase 8/9 in Progress - Documentation and Production preparation.