Developer Resources

Welcome to the GAIA development documentation. Whether you want to contribute to the project or customize GAIA for your specific needs, this section has everything you need to get started.

Getting Started

Development Workflow

1

Environment Setup

Run our setup script or follow the manual setup guide to get your development environment ready.
2

Code & Test

Make your changes and run the test suite to ensure everything works correctly.
3

Submit Changes

Follow our contribution guidelines to submit your changes via pull request.

Key Technologies

GAIA is built with modern technologies that make development efficient and scalable:
  • Backend: FastAPI (Python) for high-performance API development
  • Frontend: Next.js (React/TypeScript) for modern web application development
  • Database: PostgreSQL with MongoDB for different data types
  • Vector Storage: ChromaDB for AI embeddings and semantic search
  • Caching: Redis for fast data access and session management
  • Message Queue: RabbitMQ for asynchronous task processing
  • Containerization: Docker for consistent development and deployment

Quick Commands

Once your environment is set up, these commands will help you develop efficiently:
# Start all services
docker compose up

# Run backend in development mode
cd backend && uv run uvicorn app.main:app --reload

# Run frontend in development mode
cd frontend && pnpm dev

# Run tests
cd backend && uv run pytest
cd frontend && pnpm test

Community & Support

  • GitHub: github.com/gaia-ai/gaia - main repository
  • Issues: Report bugs or request features
  • Discussions: Ask questions and share ideas
  • Discord: Join our developer community
New to the codebase? Start with the development setup guide and then explore the backend and frontend architecture docs to understand how everything fits together.