Marketix
Self-hostable marketing platform for teams: short links with custom domains, a QR designer with brand templates, cookieless website analytics with goals and campaigns, and reports that mail themselves out on a schedule — multi-tenant, with passkeys and 2FA.
What it is
Marketix bundles what small marketing teams usually spread across three subscriptions: short links, QR codes, and website analytics. Teams work in projects (tenants) with their own domains, short URLs, designed QR codes, and per-site analytics — including goals, campaigns, and reports that land in your inbox on their own. Everything runs on your own infrastructure; the visitor IP is stored only as a hash, never in plain text, and the analytics work without cookies.
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.
- Click statistics — geo resolution (GeoLite2) with an interactive world map (d3-geo/TopoJSON), device, referrer, and a time series as charts.
- QR designer — a purpose-built render engine instead of an off-the-shelf library: rounded modules, gradients, a logo, and frames, plus a scannability check (contrast, logo size against the error correction level, quiet zone). Save and apply per-project brand templates; export as SVG, PNG, or PDF.
- Website analytics — a small tracking snippet per site; visits, page views, devices, and referrers without cookies, with a configurable retention window.
- Goals & events — report custom events, define goals, and analyze conversions, broken down by event property.
- Campaigns — UTM parameters are captured on first touch and per view, then rolled up into a campaign breakdown.
- Scheduled reports — recurring analyses that go out as PDF and CSV by mail at the time you pick; send-now included.
- Multi-tenant — users belong to projects (roles/permissions via a pivot), mail invitations, and a fast project switcher in the sidebar.
- API & MCP — personal API tokens for automation plus optional Model Context Protocol access, so AI tools can read and create links, QR codes, and statistics.
- Secure sign-in — passkeys (WebAuthn), TOTP 2FA, Sanctum sessions.
- Activity log — an audit trail of changes to links, domains, and projects.
- Internationalized — German, English, French, and Dutch.
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) for geo resolution, spatie/laravel-pdf for reports
- A purpose-built SVG engine for QR rendering (geometry, gradients, logo, frames)
- 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.0.x) and under active development. Issues and PRs are welcome — github.com/NoiXdev/marketix.