LinkStack

Self-hosted, privacy-focused Linktree alternative with themes, analytics, and a drag-and-drop admin panel.

3.7Kstars
411forks
GNU AGPLv3
PHP

LinkStack is an open-source, self-hostable platform that lets users create customizable multi-link profile pages, solving the one-link limitation of social media platforms. Individuals, creators, businesses, and communities can consolidate all their important links — social media profiles, portfolios, stores, and contact pages — into a single branded landing page they fully own and control.

Built on Laravel and PHP with Blade templating, LinkStack supports deployment via simple file upload (drag and drop to web server), Docker, or community-hosted instances. It ships with SQLite out of the box so no separate database server is required, and optionally supports MySQL for larger installations. The admin panel provides drag-and-drop link management, built-in click analytics, and a one-click automatic updater that creates backups before applying updates.

What separates LinkStack from other link-page tools is its extensibility model: community-published themes can be uploaded as ZIP files directly from the admin panel, and a modular blocks system allows self-contained plugins to add new link types without touching core code. Multi-user support lets administrators run a shared instance where multiple users each manage their own profile pages, making it suitable for teams, communities, and organizations.

LinkStack prioritizes user privacy and data autonomy — no third-party tracking, full data export and import between instances, and complete control over where data is stored. The platform has released over 100 versions since 2022 and maintains an active Discord community.

What You Get

  • Drag-and-Drop Admin Panel - Intuitive interface to add, reorder, and manage links without writing code or running terminal commands.
  • Theme Customization - Upload pre-built or custom themes as ZIP files directly from the admin panel to fully redesign your profile page appearance.
  • Built-in Click Analytics - Track per-link click counts and page visitor statistics including operating system breakdown, referrer sources, and country data.
  • One-Click Automatic Updater - Update to new releases with a single button click; the updater creates a backup of your instance before applying any changes.
  • Multi-User Support - Allow other users to register and create their own profile pages on your hosted instance, with admin controls over all user accounts.
  • Modular Blocks System - Install community-published blocks from the blocks directory to add new link types — embedded videos, dynamic feeds, vCards — without modifying core files.
  • SQLite by Default - Runs without a separate database server using SQLite, with optional MySQL support for larger multi-user deployments.
  • Docker Support - Official Docker image based on Alpine Linux with Apache2 and PHP 8.2 for containerized, portable deployment in any environment.
  • OAuth Social Login - Support for multiple OAuth providers via Laravel Socialite so users can register and log in with their existing social accounts.
  • Data Export and Import - Fully export your links, settings, and profile data to migrate between instances or self-hosted environments.

Common Use Cases

  • Content Creator Link Hub - A YouTuber or podcaster deploys LinkStack on their own domain to provide followers with a single page linking to all their platforms, merchandise, newsletter, and Patreon — avoiding Linktree’s free-tier branding and data collection.
  • Small Business Contact Page - A freelance designer or consultant self-hosts LinkStack on shared hosting via file upload to create a professional landing page with portfolio, booking link, payment options, and social profiles all in one place.
  • Community Instance for Groups - A Discord server admin or organization hosts a multi-user LinkStack instance where members each create their own profile pages, managed centrally through the admin panel.
  • Privacy-Focused Personal Page - A journalist, researcher, or privacy-conscious professional hosts LinkStack on their own VPS to maintain complete data ownership and avoid commercial link-shortening services that sell usage data.
  • Team Directory for Organizations - A small organization deploys LinkStack so each team member can maintain their own link page on a shared company-branded instance with unified admin oversight.

Under The Hood

Architecture LinkStack follows a conventional Laravel MVC monolith where routes dispatch to controllers that query Eloquent models and return Blade views. The application separates concerns reasonably well at the top level, but exhibits characteristic fat-controller tendencies where AdminController and UserController accumulate diverse responsibilities — file handling, ZIP extraction, email sending, and environment variable editing — within single classes. The installer, updater, and admin subsystems communicate through filesystem state flags rather than a formal state machine, which is pragmatic for shared-hosting environments but creates coupling between web server filesystem access and application flow. The modular blocks system introduced in v4.8.3 adds a genuine plugin-like extensibility layer where self-contained blocks live in a dedicated directory and are loaded dynamically, paralleling the ZIP-uploadable theme system.

Tech Stack The backend runs PHP 8.0+ on Laravel 9.x, with Livewire 2.x providing reactive components for the admin user table and Alpine.js handling lightweight frontend interactivity. Blade templates drive all server-rendered views. The database layer uses Eloquent ORM with Doctrine DBAL for schema migrations, defaulting to SQLite with optional MySQL support. Authentication extends to OAuth via Laravel Socialite with configurable providers. Analytics are powered by the awssat/laravel-visits package backed by Redis or the application database. Notable integrations include spatie/laravel-backup for automated backups, simplesoftwareio/simple-qrcode for QR generation, jeroendesloovere/vcard for vCard export, and cohensive/oembed for link embedding. The official Docker image runs on Alpine Linux with Apache2 and PHP 8.2, and assets compile through Laravel Mix on webpack.

Code Quality Test coverage is effectively absent despite PHPUnit being listed as a development dependency — no test files exist in the repository. Error handling is inconsistent: OAuth flows are wrapped in try/catch blocks while most controllers rely on uncaught exceptions. Type hints and return type declarations are largely missing from controller and function signatures. The codebase mixes Eloquent model calls with direct DB facade queries in the same controller methods. StyleCI is referenced in contributing documentation suggesting some style enforcement exists in CI, but no GitHub Actions workflows were found in the repository. Naming conventions vary across files, and the global functions helper contains substantial logic that would benefit from being encapsulated in service classes.

What Makes It Unique The modular blocks system is a meaningfully differentiated feature: community members can publish self-contained PHP and Blade block packages that extend the link type system without modifying core files, enabling a genuine ecosystem of installable extensions. The user and link ID randomization system generates non-sequential IDs of configurable digit length, providing practical privacy protection against user enumeration without the URL verbosity of UUIDs. The filesystem-based installer that transitions between INSTALLING and INSTALLERLOCK state flags makes zero-terminal deployment to shared hosting environments accessible to non-technical users — a deliberate design choice absent from most self-hosted alternatives. The community theme directory at linkstack.org/themes, combined with in-panel ZIP upload, creates a real marketplace dynamic for visual customization.

Self-Hosting

LinkStack is released under the GNU Affero General Public License v3.0 (AGPL-3.0), a strong copyleft license. In practical terms, this means you can use, modify, and self-host LinkStack freely for any purpose including commercial use. However, the AGPL’s network use clause requires that if you modify LinkStack and make it available over a network — including running it as a service for others — you must publish the source code of your modifications under the same license. For organizations running their own private internal instance with no external users, this restriction rarely applies, but agencies or businesses building customized link-page products on top of LinkStack need to be aware of the source disclosure obligation.

Running LinkStack yourself requires a web server with PHP 8.0+ (Apache or Nginx), write access to the filesystem for themes, blocks, and backups, and either SQLite (included with most PHP installations) or MySQL for larger deployments. The recommended path for most self-hosters is the official Docker image, which packages Apache2, PHP 8.2, and the application into a ready-to-deploy container. Installation on shared hosting is genuinely accessible — you upload the release ZIP, run the web-based setup wizard, and the application configures itself, no terminal access required. Updates come through a one-click updater in the admin panel that automatically backs up the current installation before applying changes. You are responsible for server uptime, backup retention beyond the built-in pre-update snapshots, PHP version management, and monitoring.

LinkStack does not offer a paid cloud or managed hosting tier from the developers — it is entirely community-funded through GitHub Sponsors, Patreon, and LiberaPay. This means there is no vendor-managed SaaS alternative to compare against for SLAs, managed upgrades, or priority support. Community instances exist at linkstack.org/instances where third-party hosts offer free registration, but these carry no formal uptime guarantees. Support is provided through a Discord server and GitHub issues. Organizations that need guaranteed uptime, automatic scaling, or professional support contracts would need to self-manage those concerns or engage a third-party managed hosting provider.

Join founders buildingwith open source

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

Subscribe on Substack

No spam. Unsubscribe anytime.

Join 750+ subscribers
No spam. Unsubscribe anytime.

Search