command module
v0.5.2 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2022 License: MIT Imports: 28 Imported by: 0


redir Latest relsease

Full-featured, self-hosted URL shortener written in Go.

Features Description
Custom Domain Everything is under control with your own domain
Link Shortener Support /s/semantic-name for short semantic alias for anonymous shortening
Go Vanity Import Redirect /x/repo-name to configured VCS and for API documentation
Access Control 1) Private links won't be listed in public index page; 2) Allow link to be accessible only after a configured time point; 3) Allow warn to visitors about external URL redirects (for liability control)
Public Indexes Router /s provides a list of avaliable short links
Admin Dashboard Dashboard /s?mode=admin provides full management ability
Visitor Analysis Statistics visualization regarding PV, UV, Referrer, Devices, Location, etc
GDPR Compliant Including imprint, privacy, contact pages; optional warning about external redirects, etc.


Web Interfaces

There are three major pages available in redir.

Admin Dashboard Access Control Public Indexes
Router: /s?mode=admin for management:
Control a link should only be available after a certain time:
Router /s provides public accessibility to see all public links:

CLI Usage

The redir command offers server side operation feature from shell:

$ redir

redir is a featured URL shortener. The redir server (run via '-s' option),
will connect to the default database address mongodb://localhost:27018.
It is possible to reconfig redir using an external configuration file.
See for more details.

Version: dev

GoVersion: devel go1.18-39e08c6cd7 Tue Sep 21 13:18:09 2021 +0000

Command line usage:

$ redir [-s] [-f <file>] [-d <file>] [-op <operator> -a <alias> -l <link> -p -trust -vt <time>]



You can configure redir using a configuration file. The default configuration is embedded into the binary.

Alternative configuration can be used to replace default config and specified in environtment variable REDIR_CONF, for example REDIR_CONF=/path/to/config.yml redir -s to run the redir server under given configuration.


Download Pre-Builds

Please check the release page.

Build from Source

You need install Go to build the redir command.

Build everything into a single native binary:

$ make dashboard # build front-end
$ make           # build back-end and embed front-end files into binary

$ redir -s # run the server, require an external database

Build and deploy with Docker:

$ docker network create traefik_proxy
$ make dashboard && make build && make up


Easiest way to contribute is to provide feedback! We would love to hear what you like and what you think is missing. PRs are also welcome.


MIT © 2020-2021 Changkun Ou


The Go Gopher

There is no documentation for this package.


Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL