Skip to content27% offProofmatch for ₹10,999 ₹14,999
CloneifyPro

Trackline · Ticket tracker

A team ticket tracker with subtasks, notes, watchers, linked tickets and the emails it sends.

Trackline walkthrough video
Video

Walkthrough: the board, a ticket's notes with an @mention, subtasks, and the email it sends

1 / 7

What Trackline runs

  • A board you drag tickets across, plus table, backlog and closed views
  • Tickets with notes and @mentions, subtasks, watchers and five kinds of link
  • Email for every change that matters, kept in an outbox with its delivery status
  • Five counts above the board that double as filters, and quick search on /
  • Invitations, admin and member roles, and password resets
  • PGlite with nothing to install, or any Postgres in production
Platform
Web, responsive
Best for
Teams that track work as tickets
User roles
Admin, member
Database
PGlite or any Postgres

Who it is for

  • Product and engineering teams

    A focused tracker with the parts a team uses every day, and no per-seat pricing.

  • Support and operations

    Tickets that email the right people and keep a record of every message they sent.

  • Agencies and developers

    A readable Next.js and Postgres codebase to rebrand or extend for a client.

Live now

Demo access

Try it before you download it. The Harbor team's workspace: six people, 25 tickets with notes, subtasks, links and three weeks of history. No sign-up.

Open the demo
  • Team board

    The board, table, backlog, outbox and people, opened as Priya, the admin.

    Open team board
  • A busy ticket

    TRK-14 opened: notes with an @mention, subtasks, links and the emails it sent.

    Open a busy ticket
  • The outbox

    Every email the team's changes caused, with a preview of each message.

    Open the outbox

People in the demo

No password in the demo. Switch person with “Acting as” in the sidebar.

Postgres runs in your tab and keeps your changes in this browser. “Reset the sample data” in the sidebar starts over.

On your own machine

Install it and sign in

  1. 1
    npm install
  2. 2
    SEED_PASSWORD=choose-a-password npm run db:seed
  3. 3
    npm run dev

Then sign in with the sample admin:

Password

choose-a-password

Or whatever you set SEED_PASSWORD to. Every sample person signs in with it.

Without the seed, the first visit asks you to create the first account, which becomes the admin.

Features

Grouped by where the work happens.

Board and lists

5
  • Three columns, To do, In progress and Done; drag cards to reorder or move them
  • Keyboard moves too: Space picks a card up, the arrow keys move it, Space drops it
  • A table view, a Backlog for ideas, and a Closed archive grouped by month with Reopen
  • Counts that filter: open, assigned to me, watching, overdue, unassigned
  • Filters by assignee, team, label, priority and text; quick search with /

Tickets

6
  • Keys like TRK-14, with the prefix set by one environment variable
  • Title and description edit in place; status, assignee, team, priority, due date and labels in the side panel
  • Notes with @mentions, pinning and editing; a ticket key in a note becomes a link
  • Subtasks with their own owner and due date, drag to reorder, and a progress bar
  • Links: blocks, is blocked by, duplicates, is duplicated by, relates to
  • Activity in plain sentences, and every email the ticket caused with a preview

Notifications

4
  • Email on assignment, reassignment, status change, new notes and @mentions
  • Due today, tomorrow or overdue: once per kind per day, to the assignee and watchers
  • Nobody is emailed about something they did themselves
  • Sent over SMTP and always recorded in the Outbox, with its delivery status

Team admin

4
  • Invite people by email; the link works once and expires after seven days
  • Admin and member roles; the last admin cannot be demoted
  • Deactivate someone and their open tickets become unassigned
  • Manage teams and labels

Tech and requirements

Exact versions, because that is the first thing a developer checks.

Stack

Framework
Next.js 16, App Router
Interface
React 19, Tailwind CSS 4
Language
TypeScript
Database
PGlite by default, or PostgreSQL (Supabase, Neon, your own)
Email
Any SMTP server, with an outbox in the app
Sign-in
Signed HTTP-only cookie, scrypt passwords

To run it

Node.js
22.6 or newer
Database
None to start; Postgres for production
Email
Optional SMTP server
Hosting
Vercel, or any server that runs Node.js

What you get in the download

trackline.zip, 116 KB: the whole project as it unzips, counted from the zip itself.

  • Complete source code, nothing obfuscated
  • A seed script with the sample data the demo shows
  • A README: quick start, configuration and deploying
  • An .env.example with every setting and its default
  • The script that builds the browser demo
trackline.zip54 files · 116 KB
  • Pages and API routes13 files
    13 KB
  • Core logic7 files
    90 KB
  • Server5 files
    9 KB
  • Screens and components16 files
    134 KB
  • Scripts4 files
    5 KB
  • README and configuration9 files
    100 KB

Common questions

01. Do I need a database server to start?

No. Trackline runs on PGlite, a real Postgres compiled to WebAssembly and stored in ./data/pglite. Point DATABASE_URL at Supabase, Neon or your own Postgres when you go to production.

02. What if I haven't set up email yet?

Every notification is still written to the Outbox, so nothing is lost. Invitations wait there too, and an admin can copy the link from it.

03. How do due-date reminders run?

On Vercel, vercel.json already schedules the reminder job daily at 08:00 UTC (1:30 pm IST). On your own server, run npm run reminders from cron. Each ticket gets at most one reminder of each kind per day.

04. Can I change the TRK prefix?

Yes. Set NEXT_PUBLIC_TICKET_PREFIX=OPS and keys read OPS-12.

More products

All products

Leadtrail

Sales CRM

A sales CRM for any number of companies: enquiries from IndiaMART, JustDial, Facebook and the website, a repeat check on every mobile number, follow-ups, WhatsApp templates, a drag-and-drop pipeline, and one-click invoices in Billcraft.

  • Next.js 16
  • React 19
  • TypeScript
  • PostgreSQL
Files
74
Lines
10,823
Source
₹12,499

Renewly

Membership management

Memberships and fees for gyms, studios, dance academies and coaching classes: members and plans, part payments with receipts, renewals and pauses, WhatsApp reminders, Razorpay payment links, and a Today screen of who to collect from and who to renew.

  • Next.js 16
  • React 19
  • TypeScript
  • PostgreSQL
Files
86
Lines
12,718
Source
₹9,999

Consentdesk

DPDP privacy and consent

Privacy and consent for India's DPDP Act and Rules: a notice in English and Indian languages, a consent banner and form (a parent's email code for under-18s), a receipt for every answer, a privacy page where people withdraw consent or ask to see, correct or erase their data, requests with deadlines, a 72-hour breach register, and a data map with vendors.

  • Next.js 16
  • React 19
  • TypeScript
  • PostgreSQL
Files
84
Lines
10,531
Source
₹12,499