Skip to content

DeepFlowAI/OpenDesk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenDesk

Open-source full-stack customer support platform — tickets, multi-channel inbox, conversation routing, visual flow designer, unified field system.

Docker Hub · Self-hosting · Issues

License Docker pulls (api) Docker pulls (web) Latest release GitHub stars

English 简体中文

✨ Features

  • Multi-channel inbox — web chat, voice, email, and more, unified into one agent workspace.
  • Visual flow designer — drag-and-drop routing rules and IVR voice flows; no code required.
  • Powerful ticket system — fully customizable fields, layouts, and lifecycle.
  • Real-time agent workspace — live chat, call center, ticket queue, all in a single SPA.
  • Unified field system — share field definitions across users, organizations, tickets, and conversation summaries.
  • Multi-tenant ready — single-tenant out of the box; the Enterprise edition adds platform-level tenant management.
  • Production-grade stack — FastAPI · async SQLAlchemy 2.0 · PostgreSQL · Redis · Next.js 15 · React 19.

🚀 Quick Start

git clone https://github.com/DeepFlowAI/OpenDesk.git
cd OpenDesk/docker
cp .env.example .env
python -c "import secrets; print('SECRET_KEY=' + secrets.token_hex(32))" >> .env

docker compose up -d        # bundles PostgreSQL + Redis by default

Open http://localhost:3000 and sign in:

Field Default
Tenant default
Username admin
Password admin123

⚠️ Change the password immediately after first login in any non-local deployment.

Bring your own database / Redis

Edit COMPOSE_PROFILES= in .env to drop the bundled service(s), then set DATABASE_URL / REDIS_URL. The command stays docker compose up -d. Full deployment guide (4 modes · production checklist · nginx reverse proxy · backup) → docker/README.md.

🛠️ Local Development

# Backend
cd server && python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env.dev   # set DATABASE_URL / REDIS_URL to your local instances
uvicorn app.main:app --reload --port 5001

# Frontend
cd web && npm install
cp .env.example .env.dev
npm run dev
Service URL
Frontend http://localhost:3000
Backend API http://localhost:5001
API docs (Swagger) http://localhost:5001/docs

🧭 Pages

Section Routes
Auth /login · /login/forgot-password
Admin /employees · /employee-groups · /flow-studio · /channels · /session-routing · /service-hours · /system-settings
Agent workspace /workspace/chat · /workspace/call · /workspace/records

🧩 Architecture

┌─────────────────────────┐    ┌─────────────────────────┐
│  Next.js 15 + React 19  │◄──►│   FastAPI + Socket.IO   │
│  (web)                  │    │   (api)                 │
└─────────────────────────┘    └────────────┬────────────┘
                                            │
                          ┌─────────────────┼─────────────────┐
                          ▼                 ▼                 ▼
                  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐
                  │ PostgreSQL 15│  │   Redis 7    │  │ Object store │
                  │ (data)       │  │ (cache+pub)  │  │ (uploads)    │
                  └──────────────┘  └──────────────┘  └──────────────┘

Backend follows a strict Router → Service → Repository → Model layering with Pydantic schemas for I/O. Closed-source extensions (e.g. multi-tenant management) plug in via a convention-based loader at app/extensions/.

🏢 Editions

Edition Tenants Tenant management API
Community Single auto-provisioned default
Enterprise Multi-tenant /api/v1/tenants (closed)

The Community edition (this repository) is feature-complete for single-organization deployments. The Enterprise extension adds the platform-level tenant CRUD API for SaaS operators.

🤝 Contributing

Issues, discussions, and pull requests are welcome. Before opening a PR please make sure tests pass:

cd server && pytest

📜 License

OpenDesk is released under the GNU Affero General Public License v3.0.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors