Kutt is a modern URL shortener with support for custom domains. Shorten URLs, manage your links and view the click rate statistics.
- Free and open source.
- Custom domain support.
- Custom URLs for shortened links
- Set password for links.
- Set description for links.
- Expiration time for links.
- Private statistics for shortened URLs.
- View, edit, delete and manage your links.
- Admin account to view, delete and ban links.
- Ability to disable registration and anonymous link creation for private use.
- RESTful API.
- Node (Web server)
- Express (Web server framework)
- Passport (Authentication)
- React (UI library)
- Next (Universal/server-side rendered React)
- Easy Peasy (State management)
- styled-components (CSS styling solution library)
- Recharts (Chart library)
- PostgreSQL (database)
- Redis (Cache layer)
- Clone this repository or download the latest zip.
.envand fill it properly (see below).
- Install dependencies:
- Run for development:
npm run dev.
- Run for production:
npm run buildthen
docker-compose.yml and the
.docker.env-file from the repository and configure the
.docker.env (see below). To execute Kutt you simply have to run
docker-compose up -d command and then the app should be ready on port "3000".
docker-compose.yml uses the official kutt docker image available on Docker Hub.
For the minimal configuration the following settings have to be changed in the
- DEFAULT_DOMAIN: The domain of your kutt instance
- DB_: The DB credentials (when you use docker-compose you can skip these)
- ADMIN_EMAILS: A comma-separated list of the administrator-accounts
- RECAPTCHA_: Enter your credentials to use reCaptchas or delete this setting if you don't want to use it
- MAIL_: Enter the SMTP-server's credentials (The experience shows SSL works better than STARTTLS; The mail config is required to easily create accounts, see this comment how it can be done manually)
- REPORT_EMAIL: Kutt offers a form to report malicious links which are sent to this mail-address
Download Kutt's extension for web browsers via below links. You can also find the source code on kutt-extension.
Visit API v2 documentation on docs.kutt.it
3rd Party packages
|C# (.NET)||KuttSharp||.NET package for Kutt.it url shortener|
|Python||kutt-cli||Command-line client for Kutt written in Python|
|Ruby||kutt.rb||Kutt library written in Ruby|
|Rust||urlshortener||URL shortener library written in Rust|
|Rust||kutt-rs||Command line tool written in Rust|
|Node.js||node-kutt||Node.js client for Kutt.it url shortener|
|Java||kutt-desktop||A Cross platform Java desktop application for Kutt|
|Go||kutt-go||Go client for Kutt.it url shortener|
|BASH||GitHub Gist||Simple BASH function to access the API|
|BASH||url-shortener||Simple BASH script with GUI|