awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
shlinkio avatar

shlinkio/shlink

0
View on GitHub↗
5,117 stars·397 forks·PHP·MIT·25 viewsshlink.io↗

Shlink

Shlink is a self-hosted URL shortener designed for creating and managing shortened web addresses on custom domains with full data ownership. It functions as a dynamic URL redirector and a multi-domain link manager, allowing a single installation to organize and serve aliases across several different root domains.

The system is centered around a REST API for programmatic link management, enabling external applications to automate the creation, updating, and deletion of short URLs. It includes a dedicated traffic analytics engine that records visits, detects bots, and provides geolocation data to analyze interaction patterns.

The project provides advanced traffic routing that can send visitors to different destinations based on device type, headers, or custom priority rules. It covers broader capabilities including QR code generation, distributed shared caching, and API key administration with granular permissions.

Installation is supported via a command-line interface and interactive configuration tools for self-hosted infrastructure deployment.

Features

  • URL Shorteners - Provides a complete system for creating and managing shortened web aliases on custom domains.
  • Programmatic Administration APIs - Exposes a REST API for external applications to programmatically create, update, and delete short links.
  • Relational Database Backends - Supports using relational databases as the primary application state storage for shortened links and analytics.
  • Geolocation Databases - Uses geographic databases to identify the physical location of users accessing shortened links via their IP addresses.
  • Relational Database Storage - Persists short URLs and visit data using various relational database management systems for stability and scale.
  • Self-Hosted Deployments - Supports full installation and operation on user-owned infrastructure to ensure total data ownership.
  • Advanced Traffic Routing - Implements routing logic based on priority rules, request headers, device types, and query parameters.
  • REST API Interfaces - Implements server-side RESTful endpoints for the programmatic management of the shortening service.
  • Header-Based Redirectors - Redirects users based on HTTP headers, device types, and custom rules.
  • Dynamic Redirection Rules - Routes visitors to different destination URLs based on device type, geolocation, or custom priority rules.
  • Dynamic Routing - Routes a single short URL to different destinations based on requester attributes and context.
  • API Request Authentication - Validates client identity by requiring a secret key in the request header before granting API access.
  • Short URL Visit Tracking - Records every access to a short URL and geolocates the visitor to provide traffic insights.
  • RESTful URL Management APIs - Provides a REST interface to programmatically create, update, and delete shortened web addresses and their configurations.
  • Link Visit Analytics - Records every access to a short URL and provides geolocation and bot detection data.
  • Domain Management - Manages multiple root domains within a single instance to provide varied shortening services.
  • Short URL Management APIs - Exposes a REST API that enables external applications to programmatically create and manage shortened web addresses.
  • Dynamic Destination Routing - Resolves destination URLs by evaluating priority rules based on device type, headers, and query parameters.
  • URL Redirections - Sets unique destination URLs for special redirects on a per-domain basis with global fallbacks.
  • URL Visit Analytics - Includes a dedicated analytics engine to track visits, detect bots, and provide geolocation data.
  • Query Parameter Forwarding - Preserves and passes request query parameters from a short URL to the final destination.
  • Distributed Caches - Stores frequently accessed information on a remote server to increase speed and maintain consistency across multiple instances.
  • Link Data Imports - Allows importing existing shortened links and visit data from CSV files or external services.
  • Administrative CLI Tools - Allows administrative tasks and short link management via a command-line interface.
  • Distributed Locks - Coordinates access to shared resources across multiple nodes to prevent race conditions and ensure data integrity.
  • Distributed Resumption Locking - Implements distributed locking via a shared memory store to prevent concurrent operations across a cluster.
  • Redirect Path Placeholders - Replaces placeholders in redirection URLs with the visited domain or path to create dynamic addresses.
  • Application Server Runtimes - Uses RoadRunner to keep the application in memory for higher performance and reduced request latency.
  • PHP Application Servers - Utilizes a high-performance PHP application server via RoadRunner to eliminate request bootstrapping overhead.
  • Worker Mode Runtimes - Employs a worker-based execution model to maintain application state in memory across HTTP requests.
  • API Key Lifecycle Management - Provides a command-line interface for the creation and revocation of security keys to control API access.
  • via REST API - Provides programmatic endpoints to manage API authentication keys and system settings.
  • Granular Access Controls - Assigns specific roles to API keys to limit actions such as domain access or URL creation.
  • Asynchronous Background Processors - Offloads heavy operations and real-time updates to background workers to maintain application responsiveness.
  • Geographic IP Lookups - Maps visitor IP addresses to physical locations using a geographic database for traffic analytics.
  • Case-Insensitive URL Routing - Allows configuration of whether short URL codes are treated as case-sensitive or case-insensitive.
  • HTTP Redirects - Allows configuration of HTTP status codes and custom fallback URLs for link redirections.
  • Multi-Domain Link Management - Allows a single installation to organize and serve short aliases across several different root domains.
  • Path Segment Forwarding - Appends additional path segments following a short code to the destination URL.
  • Hierarchical Slugs - Supports the use of forward slashes within short codes to create hierarchical URL structures.
  • Device-Based Redirection - Directs visitors to different destination URLs based on the device platform they are using.
  • Shortening Configurations - Allows definition of default code lengths and matching modes for generated short URLs.
  • Url Shorteners - URL shortener featuring a web interface, API, and analytics.

Star history

Star history chart for shlinkio/shlinkStar history chart for shlinkio/shlink

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Shlink

These projects share indexed features with Shlink. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • cydrobolt/polrcydrobolt avatar

    cydrobolt/polr

    5,099View on GitHub↗

    Polr is a self-hosted URL shortener and link analytics platform. It allows users to create concise aliases for long web addresses and store all redirection and analytics data on private infrastructure to maintain full ownership of information. The system functions as a custom domain link manager, enabling the assignment of branded domains or specific naming schemes to shortened URLs. It also serves as a programmatic link orchestrator, providing a structured API and a command-line interface to automate link generation and perform administrative tasks without a manual dashboard. The platform c

    PHP
    View on GitHub↗5,099
  • ash-jc-allen/short-urlash-jc-allen avatar

    ash-jc-allen/short-url

    1,368View on GitHub↗

    This project is a URL shortening framework designed for managing, tracking, and resolving shortened web links. It provides a database-driven routing system that maps unique aliases to destination addresses while enforcing lifecycle controls, such as activation and expiration timestamps, to manage link availability. The platform distinguishes itself through its extensibility and support for multi-tenant infrastructure. Developers can inject custom routing logic and middleware into the redirection process, allowing for tailored behavior such as specific HTTP status codes or dynamic parameter fo

    PHPhacktoberfestlaravel
    View on GitHub↗1,368
  • ccbikai/sinkccbikai avatar

    ccbikai/Sink

    6,843View on GitHub↗

    Sink is a link shortening and management service built on Cloudflare Workers and KV for serverless redirection. It provides a suite of tools for creating branded web addresses, monitoring visitor statistics through a real-time analytics dashboard, and managing how links are distributed. The project features a dynamic traffic router that redirects visitors based on geographic location or device type and an AI metadata generator that automatically creates descriptive slugs and social media preview tags. It also includes a QR code generator for creating scannable codes that point to shortened ad

    Vue
    View on GitHub↗6,843
  • dubinc/dubdubinc avatar

    dubinc/dub

    23,722View on GitHub↗

    This project is a comprehensive link management and marketing attribution platform designed for creating, tracking, and analyzing shortened URLs. It functions as a centralized hub for marketing analytics, providing tools to monitor link performance, visualize conversion funnels, and manage affiliate programs through a unified dashboard. The platform distinguishes itself by integrating advanced attribution modeling and partner management directly into the link infrastructure. It supports complex marketing workflows, including automated commission calculations, fraud detection, and payout distr

    TypeScriptclickhousemysqlnextjs
    View on GitHub↗23,722
Compare all 30 related projects→

Frequently asked questions

What does shlinkio/shlink do?

Shlink is a self-hosted URL shortener designed for creating and managing shortened web addresses on custom domains with full data ownership. It functions as a dynamic URL redirector and a multi-domain link manager, allowing a single installation to organize and serve aliases across several different root domains.

What are the main features of shlinkio/shlink?

The main features of shlinkio/shlink are: URL Shorteners, Programmatic Administration APIs, Relational Database Backends, Geolocation Databases, Relational Database Storage, Self-Hosted Deployments, Advanced Traffic Routing, REST API Interfaces.

Which projects share features with shlinkio/shlink?

Projects with overlapping indexed features include: cydrobolt/polr — Polr is a self-hosted URL shortener and link analytics platform. It allows users to create concise aliases for long… ash-jc-allen/short-url — This project is a URL shortening framework designed for managing, tracking, and resolving shortened web links. It… ccbikai/sink — Sink is a link shortening and management service built on Cloudflare Workers and KV for serverless redirection. It… dubinc/dub — This project is a comprehensive link management and marketing attribution platform designed for creating, tracking,… thedevs-network/kutt — Kutt is a self-hosted URL shortening service built with Node.js and PostgreSQL. It allows users to create short links… requestly/requestly.