All 33 Dependencies

Every package Shlink depends on, ranked by repo health score.

Shlink is a self-hosted URL shortening service written in PHP that gives you complete ownership of your short links and their analytics. Instead of sending traffic through a third-party platform like Bitly or TinyURL, you run Shlink on your own infrastructure under your own domain. Every click is logged with geolocation, device type, browser, referrer, and timestamp — all stored in a database you control.

The application exposes both a REST API and a command-line interface, so it fits naturally into automated workflows, CI/CD pipelines, and custom dashboards. An official web client (Shlink Web Client and Shlink Dashboard) can be pointed at any Shlink instance, and third-party integrations can consume the same documented API. API keys support per-domain and per-URL permissions, giving teams fine-grained access control.

Deployment is straightforward: grab the official Docker image or a pre-built dist package, wire it to MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, or SQLite, and run the installer. High-performance PHP application servers — RoadRunner and FrankenPHP — are both supported out of the box for production workloads that need worker-pool concurrency. Redis, RabbitMQ, and Mercure integrations allow real-time visit notifications and caching at scale.

As of v5.1, Shlink ships with a mature dynamic redirect rules engine that can branch on device type, browser, geolocation (country or city), language, IP address, query parameters, and ISO-8601 date conditions — enabling time-based campaigns, device-aware deep links, and geo-targeted marketing without any client-side JavaScript.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search