Why consolidate issues, docs and chat into one tool
A Linear subscription, a Notion workspace, a Slack plan and GitHub Projects can easily add up to €40–80 per developer per month. Beyond cost, each tool creates a silo: a decision made in chat is never linked to the issue it triggered, and the wiki lives separately from the kanban board. Huly is released under the EPL-2.0 licence, which is highly permissive for self-hosting and allows commercial deployment without any per-seat royalty.
What Huly consolidates in your infrastructure
- Issues and sprints — create tickets, organise them into sprints and roadmaps with built-in Kanban boards, all without leaving the application.
- Wiki and documentation — write structured pages directly in Huly; docs are versioned and linked to the relevant projects.
- Real-time chat — channel and thread-based messaging with built-in video calls, replacing Slack without an additional subscription.
- Bidirectional GitHub sync — Huly issues are mirrored in GitHub and vice-versa; GitHub pull requests appear automatically in their linked issues.
- Time tracking — log time spent on each issue directly from the interface, with no third-party extension needed.
Prerequisites before deploying
Huly runs on a VPS with at least 4 GB of RAM (8 GB recommended in production) and 2 vCPU. You will need Docker and Docker Compose installed on the host, a domain name pointing to your server, and a dedicated subdomain for the interface — the reverse proxy will expose ports 80 and 443 over HTTPS to the internal services.
Deploy Huly on a VPS in five steps
Clone the official repository
Fetch the Docker Compose configuration from the public repository: git clone https://github.com/hcengineering/huly-selfhost.git && cd huly-selfhost. The repository includes docker-compose.yaml and a ready-to-edit .env.example template.
Configure the `.env` file
Copy .env.example to .env, then set at minimum HULY_HOST (your public subdomain, e.g. huly.example.com), the JWT secrets (SECRET), and the MinIO credentials. Leave the internal ports unchanged if you are using a reverse proxy.
Start the services with Docker Compose
Bring up the full stack — front end, application server, MongoDB, Elasticsearch and MinIO — with docker compose up -d. On first start, Elasticsearch and MongoDB initialise their data stores; allow two to three minutes before the interface becomes available.
Configure the HTTPS reverse proxy
Point your reverse proxy (Nginx, Caddy or Traefik) to the internal port of the huly-front service (default 8083). Enable TLS with a Let's Encrypt certificate for your chosen subdomain, and make sure WebSockets are correctly proxied (Upgrade and Connection headers).
Create the first workspace and invite your team
Open your subdomain in a browser, create an administrator account, then generate your first workspace. From the workspace settings, send email invitations to your team members. No seats are counted: you only pay for the storage and bandwidth consumed on your VPS.
To enable GitHub synchronisation, go to Settings → Integrations in your Huly workspace. Connect your GitHub organisation in a few clicks via OAuth. Issues created in Huly then appear automatically in the matching repository, and GitHub pull requests are linked to their corresponding issues — no webhook configuration required.
Which teams does Huly suit best?
Huly is a good fit for agencies and technical teams of 5 to 50 people who want to reduce their SaaS footprint without losing features. It also suits teams handling sensitive data for whom keeping communications and documentation on-premises is a regulatory or contractual requirement. If per-seat subscription costs are becoming a growth bottleneck, a single VPS is enough to cover the full collaborative toolset.