Self-host go-urlsh
v1.0.1Go URL shortener with web UI and API
- Stars
- 159
- Port
- 2000 (HTTP web UI and API)
What is go-urlsh?
urlsh is a URL shortener and bookmarker service written in Go. It provides a web interface and REST API for creating and managing short URLs, with features like hit counting, URL expiration, custom keywords, and duplicate prevention. The admin API is protected by a static bearer token. It uses PostgreSQL as the primary database and optionally Redis for caching popular URLs. The project includes a terminal client (urlshc) for command-line usage. Deployment is primarily via docker-compose, which spins up the Go application alongside PostgreSQL and Redis containers. The codebase is MIT-licensed and maintained by Jitendra Adhikari.
Should you self-host go-urlsh?
go-urlsh scores 44/100 on selfhost.directory (how scoring works) and ranks #14 of 23 in URL Shortener. It has 159 GitHub stars.
There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.
Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in Go.
Its closest alternative on selfhost.directory is dub-links (74/100, 24 961 stars). It scores higher overall, so compare the two before you pick. See go-urlsh vs dub-links side by side.
Features
- Admin API
- Custom Keywords
- Duplicate Prevention
- Hit Counter
- OpenID Connect ProvidersEnv vars defined but implementation not documented
- REST API
- Terminal client
- URL Expiration
- URL Shortening
go-urlsh README
More in Link Management
KuttSelf-hosted, open-source URL shortener with custom domains, link passwords, expiry, private stats, an admin panel, OIDC login and a REST API.
link-checker-serviceA self-hosted web service that checks batches of URLs for broken links with caching, rate limiting, and JWT authentication.
LinkStackOpen-source, self-hosted link-in-bio page: multiple user accounts, uploadable themes, link analytics, and a drag-and-drop install on a PHP web host or Docker.
LinkStack DockerLinkStack Docker is the official container image for LinkStack, a self-hosted link sharing platform for creating customizable profile pages with multiple links.
linkyLinky is a self-hosted, open-source link-in-bio builder with live blocks that auto-update from Spotify, Instagram, TikTok, GitHub, and more.
LittleLinkOpen source tool for creating personal link pages with over 100 branded button styles. No JavaScript or frameworks required.
lua.shlua.sh is a self-hosted, open-source URL shortener that puts links on your own domain with detailed click analytics on every plan. Includes REST API and MCP server.
PinkaryPinkary is an open-source, self-hosted link landing page and social network for profiles, links, posts, and follows — built with Laravel.
rushomonRushomon is a self-hosted, open-source URL shortener on Cloudflare Workers with fast edge redirects, per-link analytics, OAuth auth, and multi-organization support.
skarfSkarf is a self-hosted, open-source Linktree alternative built with Flask for customizable profile pages with links, Ko-Fi, and static site generation.
SlashOpen-source self-hosted link manager with s/ shortcuts, team sharing, analytics, and browser extensions.
SmartyURLSelf-hosted, open-source URL shortener with analytics and smart redirects by visitor location or device. PHP 8.1+, MySQL, Composer install.

0 comments