Kutt
URL shortener that you run on your own domain.
- Replaces
-
Paid link shortening services, such as Bitly.
All open-source alternatives to Bitly
- Difficulty
-
Difficulty: Medium
1 service, 2 volume mounts, no env values to set, no elevated host access. Heuristic score 1 of 11: easy. A source checkout is needed, and the first start builds images from source, so the rating is at least medium.
- Stack
JavaScript (language)
- Deployment
docker_compose
- Requirements
Not stated.
- License
-
MIT(OSI-approved open source)Read from github.com/thedevs-network/kutt/blob/029da42/LICENSE
- Business model
-
Unknown
The README at the pinned commit does not state a business model, so it stays unknown.
Source: github.com/thedevs-network/kutt/blob/029da42/README.md, read on .
- Repository
GitHub stats
- Stars
- 11,163
- Forks
- 1,514
- Open issues and pull requests
- 88
- Last push
- 2026-10-19
- Latest release
- v3.2.6
- Released
- 2026-07-05
From the GitHub API on . These numbers are a snapshot, not live. GitHub detected the license as MIT.
Compose file
services:
server:
build:
context: .
volumes:
- db_data_sqlite:/var/lib/kutt
- custom:/kutt/custom
environment:
DB_FILENAME: "/var/lib/kutt/data.sqlite"
ports:
- 3000:3000
volumes:
db_data_sqlite:
custom:
From the app's own repository: github.com/thedevs-network/kutt/blob/029da42/docker-compose.yml.
Compose file from thedevs-network/kutt, used inside a checkout of that repository (documented setup B).
Install
- Docker with the Compose plugin and git (github.com/thedevs-network/kutt/blob/029da42/README.md)
A host with Docker, the Docker Compose plugin and git. This entry needs a checkout of the project repository.
- Get the source at commit 029da42 (github.com/thedevs-network/kutt/blob/029da42/README.md)
git init kutt cd kutt git remote add origin https://github.com/thedevs-network/kutt.git git fetch --depth 1 origin 029da42b2459693681886665589fd9512d6b473c git checkout FETCH_HEAD - The compose file in the checkout: docker-compose.yml (shown here for reading) (github.com/thedevs-network/kutt/blob/029da42/docker-compose.yml)
Use the compose file shown above.
- What the compose file check ran with (github.com/thedevs-network/kutt/blob/029da42/README.md)
The compose file check ran in a checkout of thedevs-network/kutt at 029da42b2459693681886665589fd9512d6b473c (a sparse checkout: only the top-level files). The README tells the reader to run docker compose up from the root directory of the repository.
- Start it (github.com/thedevs-network/kutt/blob/029da42/README.md)
docker compose up -d - Open the app (github.com/thedevs-network/kutt/blob/029da42/docker-compose.yml)
Open http://localhost:3000. The compose file publishes host port 3000 for the server service.
Compose file check: config_ok on 2026-10-22.
Gotchas and maintenance
Gotchas
- Some services build from source. These services have a build section and no image: server. They need the project source next to the compose file. (github.com/thedevs-network/kutt/blob/029da42/docker-compose.yml, checked 2026-10-22)
- The compose file publishes host ports. Host ports: 3000 (server). A port without a host address listens on all host network interfaces. (github.com/thedevs-network/kutt/blob/029da42/docker-compose.yml, checked 2026-10-22)
- The first start builds images from source. The compose file has a build section. The first docker compose up builds the image from the checkout, which needs time, disk space and network access. (github.com/thedevs-network/kutt/blob/029da42/docker-compose.yml, checked 2026-10-22)
Signals
- Open issues and pull requests: 88
- Last push: 2026-10-19 (3 days before this page was built)
- Latest release: v3.2.6 on 2026-07-05 (109 days before this page was built)