An intelligent email classification app that uses AI to automatically organize your Gmail inbox into smart buckets.
cp backend/.env.example backend/.env # then fill in your credentials
docker-compose up --build- Google OAuth - Securely connect your Gmail account
- AI-Powered Classification - Uses Claude to intelligently categorize emails
- Smart Buckets - Default categories (Important, Can Wait, Newsletter, Auto-archive) plus custom buckets
- Auto-Classification - New emails are automatically classified on refresh
- Docker & Docker Compose
- Google Cloud Project with Gmail API enabled
- Anthropic API Key
- Go to Google Cloud Console
- Create a new project (or select existing)
- Enable the Gmail API (APIs & Services > Library)
- Configure OAuth consent screen:
- Choose "External" user type
- Add scope:
gmail.readonly - Add your email as a test user
- Create OAuth credentials:
- Go to Credentials > Create Credentials > OAuth client ID
- Choose "Web application"
- Add redirect URI:
http://localhost:8000/auth/callback - Save the Client ID and Client Secret
- Go to Anthropic Console
- Generate an API key
cp backend/.env.example backend/.envEdit backend/.env:
DATABASE_URL=postgresql://postgres:postgres@postgres:5432/inbox_concierge
GOOGLE_CLIENT_ID=your-google-client-id
GOOGLE_CLIENT_SECRET=your-google-client-secret
GOOGLE_REDIRECT_URI=http://localhost:8000/auth/callback
ANTHROPIC_API_KEY=your-anthropic-api-key
SESSION_SECRET=generate-a-random-secret-here
FRONTEND_URL=http://localhost:5173
BACKEND_URL=http://localhost:8000Generate a session secret:
openssl rand -hex 32docker-compose up --buildThe app will be available at:
- Frontend: http://localhost:5173
- Backend: http://localhost:8000
To stop:
docker-compose downTo stop and clear data:
docker-compose down -v- Open http://localhost:5173
- Click "Sign in with Google"
- Authorize Gmail access
- Wait for initial email fetch and classification
- Browse emails by bucket using the tabs
- Use "Manage Buckets" to customize categories
- Frontend: React, TypeScript, Vite, Tailwind CSS
- Backend: Python, FastAPI, SQLAlchemy
- Database: PostgreSQL
- AI: Anthropic Claude
"Invalid redirect URI" - Ensure http://localhost:8000/auth/callback is set in Google Cloud OAuth credentials.
"Gmail API not enabled" - Enable Gmail API in your Google Cloud project.
Database errors - Check that PostgreSQL container is running: docker-compose ps