NoiXdev
← All projects
live

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.