Overview
OpenShort is an open-source URL shortener built for developers and teams who want more than what free link-shortening services offer. The premise is simple: link management is a real product need, and it should not require trusting your data to a third-party service with opaque analytics and unpredictable pricing.
OpenShort is self-hostable, developer-friendly, and designed to serve both individual use and team environments.
What it does
- Shortens URLs with custom slugs or auto-generated identifiers
- Tracks click analytics per link — visits, referrers, geographic data
- Exposes a clean REST API for programmatic link management
- Built-in authentication with JWT-based sessions and role-based access control
- Supports link expiration and optional password protection
- Deployable with Docker in minutes on any VPS or cloud environment
- Built with a clean API-first architecture suitable for integration or extension
Why it exists
Most URL shorteners fall into two categories: free services with limited features and data you don’t control, or enterprise platforms with pricing that doesn’t fit individual use or small teams.
OpenShort occupies the middle ground: a fully capable link management tool that you own entirely. The codebase is clean enough to fork, extend, or embed into a larger product.
Technical approach
The frontend is built with Angular, providing a structured, component-driven UI with strong typing end-to-end. The backend exposes a clean REST API in TypeScript, with MySQL for production deployments and SQLite support for lightweight or local setups — making it easy to run the full stack with zero external dependencies.
Authentication is handled via JWT tokens with refresh token rotation, supporting both individual accounts and team access scenarios. Role-based access control allows fine-grained permissions over link management and analytics visibility.
Link resolution is optimised for low latency: it’s the hot path, and redirect performance matters. Everything else — analytics ingestion, auth management — is handled asynchronously.
Product potential
Beyond the open-source release, OpenShort has natural SaaS potential: multi-tenant support, team workspaces, branded domains, and a managed hosted version are natural extensions of the current architecture.
The project serves as both a useful tool and a reference for how to build a clean, extensible product with a real use case from day one.
Status
Active development. Core link shortening, analytics, and authentication are functional. API documentation and additional analytics dimensions are in progress.