Zaban is a SaaS platform offering AI-powered APIs for Text-to-Speech (TTS), Speech-to-Text (STT), Translation, and Transliteration. It focuses on developer experience, allowing users to sign up, generate API keys, and integrate capabilities into their apps.
- Backend: Python FastAPI (with SQLAlchemy, Alembic, PostgreSQL)
- Frontend: Next.js (React, Tailwind CSS)
- Database: PostgreSQL
- Infrastructure: Docker & Docker Compose
zaban_backend/: The FastAPI backend application.frontend/: The Next.js frontend dashboard.docker-compose.yml: Root Docker Compose configuration for orchestrating the services.
Note: Do not add the models/ folder to .gitignore as it contains actual model files (not AIML models), and these files should be tracked in version control.
The easiest way to run the entire stack is using Docker Compose.
- Docker
- Docker Compose
This project relies on environment variables for configuration. You need to set up .env files for both the frontend and backend.
Backend (zaban_backend/.env):
Copy zaban_backend/.env.example to zaban_backend/.env:
cp zaban_backend/.env.example zaban_backend/.envFrontend (frontend/.env):
Copy frontend/.env.example to frontend/.env:
cp frontend/.env.example frontend/.envBuild and start the services:
docker-compose up --buildThis will start:
- Postgres:
localhost:5432 - Backend:
localhost:8000 - Frontend:
localhost:3000
If you prefer to run services individually without Docker, please refer to the specific READMEs:
- Authentication: Google SSO integration.
- API Management: Issue, rotate, and revoke API keys via the dashboard.
- AI Services:
- Text-to-Speech (TTS): Generate natural-sounding audio.
- Speech-to-Text (STT): Transcribe audio to text.
- Translation: Translate text between supported languages.
- Transliteration: Convert text between scripts.
Private repository. All rights reserved.