Athena AI is a business-to-business intelligence platform that embeds collaborative AI agents inside enterprise workflows. It gives go-to-market, research, and operations teams a command center where machine teammates gather context, draft deliverables, and keep humans in the loop.
# Clone the repository
git clone <repository-url>
cd athena-ai
# Install dependencies
pnpm install
# Start development environment (client + server + database studio)
pnpm dev- Product Overview
- Architecture
- Prerequisites
- Installation
- Development
- Available Commands
- Project Structure
- Technology Stack
- Contributing
- Documentation
Operators, analysts, and customer-facing teams inside growth-stage B2B companies
Accelerates insight generation, document production, and customer responses without breaking compliance guardrails
- π€ Agent Workstreams: Spin up dedicated agent workflows for research, account planning, and knowledge retrieval
- π Knowledge Libraries: Centralize organizational knowledge that agents cite automatically
- π Human-AI Collaboration: Route responsibilities with assignment flows, approvals, and notifications
- π Real-time Monitoring: Track usage, latency, and quality metrics
- π Enterprise Security: Multi-tenant architecture with role-based access controls
- β‘ Live Collaboration: Stream token-level progress for real-time review and intervention
| Layer | Technology | Purpose |
|---|---|---|
Experience (client) |
React 19 + TanStack Router + Tailwind | Web interface for command console, organization admin, and transcript playback |
Services (server) |
Bun + Hono + tRPC + Drizzle | API with type-safe endpoints, database persistence, and streaming |
Orchestration (mastra) |
Mastra + AI SDK | Agent workflows coordinating OpenAI, Exa, PostHog, and custom tools |
| Shared Foundation | Turbo + pnpm + Biome + TypeScript | Build orchestration, package management, and code quality |
- Node.js: 20.9.0 or higher
- pnpm: 10.0.0 or higher
- Bun: 1.0+ (for server runtime)
- Docker: For test databases (optional)
- PostgreSQL: For production database (can use Neon, Supabase, etc.)
-
Clone the repository
git clone <repository-url> cd athena-ai
-
Install dependencies
pnpm install
-
Set up environment variables
# Copy environment templates cp client/.env.example client/.env.local cp server/.env.example server/.env.local cp mastra/.env.example mastra/.env.local -
Configure your environment
- OpenAI API key (for AI features)
- Database connection string
- Authentication secrets
- Other service API keys as needed
pnpm devThis launches:
- Client: React dev server on http://localhost:3000
- Server: Bun dev server with hot reload
- Database Studio: Drizzle Studio for database management
# Client only
pnpm dev:client
# Server only
pnpm dev:server
# Database studio only
pnpm dev:db-studio
# Mastra orchestration
pnpm dev:mastra# Build all packages
pnpm build
# Build individual packages
pnpm -F @athena-ai/client build
pnpm -F @athena-ai/server build
pnpm -F @athena-ai/mastra build# Development
pnpm dev # Start all services (client + server + db studio)
pnpm build # Build all packages
pnpm check-types # Type checking across workspace
pnpm clean # Clean caches and node_modules
# Individual services
pnpm dev:client # Client only
pnpm dev:server # Server only
pnpm dev:db-studio # Database studio only
pnpm dev:mastra # Mastra orchestration onlycd client
pnpm dev # Start Vite dev server
pnpm build # Production build
pnpm serve # Preview production build
pnpm check-types # TypeScript type checking
pnpm test # Run Vitest tests
pnpm format # Format with Biome
pnpm lint # Lint with Biome
pnpm check # Full Biome checkcd server
pnpm dev # Start Bun dev server with hot reload
pnpm build # TypeScript compilation
pnpm start # Production server
# Testing
pnpm test # Run tests
pnpm test:watch # Watch mode tests
pnpm test:coverage # Coverage report
pnpm test:typecheck # Type checking
# Database
pnpm db:studio # Drizzle Studio
pnpm db:push # Push schema changes
# Test database
pnpm test:db:up # Start test database
pnpm test:db:down # Stop test database
pnpm test:db:reset # Reset test database
pnpm test:db:migrate # Run migrations
pnpm test:db:generate # Generate migrations
pnpm test:db:push # Push schema to test db
pnpm test:setup # Full test setup (db + schema)
pnpm test:full # Setup + run testscd mastra
pnpm dev # Start Mastra development server
pnpm build # Build Mastra agents and workflows
pnpm start # Production Mastra serverathena-ai/
βββ client/ # React frontend
β βββ src/
β β βββ components/ # UI components
β β βββ routes/ # TanStack Router routes
β β βββ services/ # API services
β β βββ store/ # Zustand stores
β β βββ types/ # TypeScript types
β βββ public/ # Static assets
β βββ package.json
βββ server/ # Bun backend API
β βββ src/
β β βββ modules/ # Feature modules
β β βββ db/ # Database schemas/migrations
β β βββ trpc/ # tRPC routes
β β βββ middleware/ # Server middleware
β β βββ __tests__/ # Integration tests
β βββ package.json
βββ mastra/ # AI orchestration
β βββ src/mastra/
β β βββ agents/ # AI agents
β β βββ workflows/ # Agent workflows
β β βββ tools/ # Custom tools
β β βββ prompts/ # Prompt templates
β βββ package.json
βββ package.json # Workspace root
βββ turbo.json # Build orchestration
βββ tsconfig.json # TypeScript config
βββ biome.jsonc # Code formatting/linting
- React 19 - Latest React with concurrent features
- TanStack Router - Type-safe routing with file-based routing
- Tailwind CSS - Utility-first CSS framework
- Radix UI - Accessible component primitives
- TanStack Query - Powerful data fetching and caching
- Zustand - Lightweight state management
- Vite - Fast build tool and dev server
- Bun - Fast JavaScript runtime and bundler
- Hono - Lightweight web framework
- tRPC - Type-safe API layer
- Drizzle ORM - Type-safe SQL query builder
- PostgreSQL - Primary database
- Better Auth - Authentication and authorization
- Redis - Caching and session storage
- Mastra - AI agent orchestration framework
- OpenAI - LLM provider
- Exa - Web search and research
- PostHog - Analytics and monitoring
- AI SDK - Unified AI interface
- TypeScript - Type-safe JavaScript
- Biome - Fast formatter and linter
- Turbo - Build orchestration and caching
- Vitest - Fast unit testing
- Playwright - E2E testing (future)
- Branch: Create feature branches from
main - Commits: Use conventional commits (
feat:,fix:,chore:, etc.) - PRs: Write descriptive pull requests explaining the problem and solution
- Testing: Ensure tests pass and add new tests for features
- Code Quality: Run
pnpm checkbefore committing
- Biome: Automatic formatting and linting
- TypeScript: Strict type checking enabled
- Conventional Commits: For clean release notes
- Pre-commit hooks: Automated quality checks
- Frontend: Vitest for unit tests with Testing Library
- Backend: Bun test runner with integration tests
- Database: Docker-based test databases
- E2E: Playwright (planned)
- AGENTS.md β Contributor handbook and development setup
- client/README.md β Frontend architecture and patterns
- server/README.md β Backend API and database design
- mastra/README.md β AI orchestration and agent configuration
- server/docs/ β Detailed technical documentation
This project is licensed under the ISC License.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: See individual package READMEs for detailed guides
Athena AI β Where human intelligence meets artificial capability π€β¨