// PROJECT
LIVEMarketix
Self-hostable short-link & analytics platform for teams. Short URLs with custom domains, password protection and expiry, QR codes, and detailed click statistics with a geo world map — multi-tenant, with passkeys and 2FA.
What it is
Marketix is a self-hostable platform for managing and analyzing short links. Teams work in projects (tenants): custom domains, short URLs with targets, redirect rules, optional password protection and expiry — plus QR codes and detailed click statistics. Everything runs on your own infrastructure; the visitor IP is stored only as a hash, never in plain text.
Highlights
- Short links — slug, target, redirect type, password protection, and an expiry date per link.
- Custom domains — multiple domains per project, each with its own redirect rules.
- Multi-tenant — users belong to projects (roles/permissions via a pivot); a fast project switcher lives in the sidebar.
- Click statistics — geo resolution (GeoLite2) with an interactive world map (d3-geo/TopoJSON), device, referrer, and a time series as charts.
- QR codes — generated for any link and exportable.
- PDF export — analytics and reports rendered server-side (Browsershot/Puppeteer).
- Secure sign-in — passkeys (WebAuthn), TOTP 2FA, Sanctum sessions.
- MCP server — optional Model Context Protocol access so AI tools can work with links and statistics.
- Activity log — an audit trail of changes to links, domains, and projects.
Tech stack
- Laravel 13 & PHP 8.3 on the backend, Laravel Horizon (queues) and Octane for throughput
- React 19 & TypeScript, wired up through Inertia.js — fully custom UI (no Filament), styled with Tailwind CSS 4
- MariaDB as the default database (SQLite also supported)
- Recharts / Chart.js for charts, d3-geo + world-atlas for the map
- GeoIP2 (GeoLite2), bacon-qr-code for QR codes, spatie/laravel-pdf for reports
- Shipped as a Docker stack (Traefik → FrankenPHP/Caddy → PHP)
For developers
git clone https://github.com/NoiXdev/marketix.git
cd marketix
composer run setup # deps, .env, key, migrations, build
composer run dev # Laravel server + queue + logs + Vite (concurrent)
A DDEV setup is also included — no local PHP/Node install needed:
ddev start # boot the containers (Laravel env, PHP 8.4)
ddev launch # open the app in your browser (https://marketix.ddev.site)
Run the test suite with composer run test.
Status
Marketix is LIVE (v2.x) and under active development. Issues and PRs are welcome — github.com/NoiXdev/marketix.