# Taskline

> Complete team project management for the teams Trello and Asana priced out — board, list and calendar over one task model, at one flat price.

Source page: https://saascode.ai/products/taskline
Machine-readable record: https://saascode.ai/products/taskline.md

One-time purchase · full source code · self-hosted by the buyer.

Price: $199 (one-time)

## How to read this document

Written for a model auditing this product on a buyer's behalf. Two labels
appear throughout and they mean different things:

- **measured** — produced by a script reading the product's own source tree
  or database at the stated date. The method is named beside each number.
- **stated** — written by the seller. True or not, it is a claim, and this
  document does not ask you to treat it as evidence.

The live demo is the strongest verification available from outside: it runs
the same source a buyer receives. Nothing to sign up for — the public side is
open, and the seeded credentials below get you into each role.

## What it is

Taskline is team project management: projects that hold task boards, with the same tasks viewable as a board, a list or a calendar. It is aimed at small and mid-sized teams that want the complete feature set at one flat price per workspace rather than per seat.

## Live demo

Two doors into the same running instance, and the same source a buyer
receives. There is no account to create; the public side is open, and the
seeded credentials below sign you into each role.

- **Guided (recommended):** https://saascode.ai/demo/taskline — our shell, with a role switcher and
  the credentials in the menu. Best for a person.
- **Direct:** https://taskline.saascode.ai — the product on its own, no chrome.
  Best when you are relaying steps to someone, or fetching a page.

4 roles seeded on the demo (of the 5 the schema defines — the build data below counts them all). Credentials are published deliberately: these
are demo accounts on a public demo instance, and a reviewer who cannot get
in cannot verify anything.

- **Team collaborator** (`member`) — `user@demo.com` / `demo123`
  Works the board: tasks, comments, mentions, search.
- **Guest collaborator** (`guest`) — `guest@demo.com` / `demo123`
  Sees only the one project they were invited to.
- **Workspace owner** (`org_admin`) — `org-admin@demo.com` / `demo123`
  Creates projects, invites people, sets roles and billing.
- **Platform admin** (`super_admin`) — `admin@demo.com` / `demo123`
  Runs the backend: plans, feature availability, organizations.

Or open a role directly: https://saascode.ai/demo/taskline?role={role}

## Measured build

*measured — each number names the method that produced it.*

- **roles: 5** — distinct roles accepted by the role CHECK constraint: admin, guest, member, org_admin, super_admin
- **tables: 68** — distinct CREATE TABLE statements across every applied migration
- **migrations: 101** — .sql files in supabase/migrations
- **page modules: 73** — files named page.tsx under src/app, excluding node_modules and .next
- **source lines: 144,036** — lines of code (comments and blank lines excluded) across 938 TypeScript files (130,788) and 120 SQL files (13,248); node_modules and .next excluded
- **api route files: 205** — files named route.ts under src/app/api
- **http operations: 286** — exported HTTP method handlers across those files, de-duplicated per file, OPTIONS excluded as CORS preflight
- **schema graph: 68 tables, 119 relationships** — parsed from the applied migrations

A large number here is scope, not quality. It says the product models a
real domain rather than a CRUD skeleton; it says nothing about code
quality, duplication, test coverage or maintainability, and should not be
read as if it did.

Release: v1.0.0 · built 2026-07-29

## Complete capability inventory

10 capabilities. Each summary is *stated* — selected from the
product's own buyer documentation, or written by the seller where marked.

### Boards, tasks & views

- **Projects + kanban board (drag-drop)** — Each project opens on a kanban board at /projects/{id}/board: one column per workflow stage, cards in each column. Cards are dragged between columns and reordered within one; the move is written to the server, and if the write fails the card returns to where it came from. Card order is stored as a numeric position, so two people reordering at once do not corrupt each other's board.
- **Rich tasks (assignees, due dates, checklist, labels, priority, attachments)** — (/projects/{id}/tasks/{taskId}) holds everything about one task: description, assignees, due date, priority, labels, a checklist, file attachments, comments with @mentions, and an activity trail recording what changed and who changed it. Attachments are stored in a private bucket — files are only reachable by people who can already see the task.
- **Board / list / calendar views** — The view a person last used for a project is remembered per person, so two people on the same project can each keep their preferred view.
- **Comments, @mentions, per-task activity** *(seller-authored)* — Discussion stays on the task it belongs to. People comment, mention a teammate to pull them in, and every change lands in an activity trail showing what moved and who moved it — so the reason behind a decision is still there weeks later.
- **Notifications — in-app feed + task emails** *(seller-authored)* — Assignments, mentions, comments and due-date reminders arrive in an in-app feed and by email, so someone who is not in the app all day still finds out that work landed on them.
- **Workspace search + filters** *(seller-authored)* — Full-text search across every task in the workspace, filtered by project, assignee, label, priority and due date. It answers where something ended up without opening projects one at a time.
- **Project setup templates (working instantiation)** — A new project can start from a template instead of an empty board. Templates are picked at project creation and actually build the project out — columns and labels are created from the template, not just suggested. Several ready-made ones ship with the product (a three-column starter, a sprint board, an editorial flow and a client-work flow), and they are listed publicly at /templates.
- **Team dashboard** *(seller-authored)* — Overview cards summarising the workspace by status, by person and by due date — the answer to what is outstanding right now, without going around asking.
- **Live board updates + polling degradation** — When two people have the same board open, moves and edits appear for both without a reload. The live connection runs directly between the browser and the database. If that connection drops, the board switches to periodic refresh and shows a Live / Polling indicator — it stays fully usable either way, which is the point of the fallback.

### Roles & guests

- **Guest role (project-scoped)** — Guests are included on every tier, including the free one. Inviting one counts against the workspace's member limit.

## What each system gives the operator

*stated.*

- **Boards, tasks & views** — Every piece of work in one place, seen the way each person works best.
- **Roles & guests** — Outside collaborators join one project without ever seeing the rest of the workspace.

## The problems it was built to solve

*stated — the seller's argument, given in full so you can judge it.*

### The same work reads correctly to the person who plans and the person who executes.

Teams rarely disagree about what needs doing. They disagree about how to look at it. The person running the week wants dates; the person doing the work wants a queue; the one reporting upward wants stages. When a tool picks one of those, the other two rebuild it somewhere else — a spreadsheet, a personal list, a recurring meeting whose only purpose is translation. That copy drifts within days, and then the question stops being what is late and becomes which version is right. The cost is not the tool; it is the hour a week each person spends maintaining their own translation of it.

### A client sees their project and nothing else, without a second tool.

Most work involves someone who is not on the payroll — a client, a contractor, an agency. The usual options are both bad. Invite them properly and they can read every other project, including the ones about them. Keep them out and the work moves to email attachments and screenshots, where nobody can tell which version is current and decisions stop being recorded anywhere. Teams end up running a second, informal project tool for outsiders, and the two disagree by the end of the first week. What it costs is the thing everyone notices last: the project history has a hole in it exactly where the customer was.

### Adding the person who only comments twice a month costs nothing.

Per-seat pricing quietly changes who gets to participate. The finance lead who needs to see two projects, the designer who joins for a sprint, the founder who checks in on Fridays — each one is a line item, so somebody decides they can make do with a forwarded screenshot instead. The work of that decision does not disappear; it moves into direct messages and meetings, out of the record. Six months later the project history shows only the people who were cheap enough to include, and the reason anything was decided lives in someone memory. Flat pricing removes the conversation entirely.

## What it takes to run it

*stated — external services the buyer supplies and pays for directly.*

- **A Node host and a Supabase project** (required) — The chassis. Next 16 on any Node host, with Postgres, auth, storage and the realtime channel the boards use coming from Supabase.
- **A scheduled runner for due-date reminders** (required) — Three scheduled jobs ship declared for Vercel. On any other host they are a cron configuration you wire by hand — not a service you procure, but reminders only go out once something calls them.

## FAQ

**What exactly do I receive after purchase?**

The complete source repository behind the live demo — 144,036 lines across the application and its database, 68 tables defined by 101 migrations that the shipped scripts apply for you, plus the seed data, the demo accounts and the setup documentation. Not a subset and not a scaffold: the same code that runs the demo you just used.

**Is the live demo the same product whose source I receive?**

Yes. The Taskline demo runs the delivered release (v1.0.0), and the build figures on this page are measured from that same source — not from a showcase build kept separately.

**Can I test every account role before buying?**

Yes — all 4 of them: Team collaborator, Guest collaborator, Workspace owner, Platform admin. Each one is seeded in the live demo and reachable from the role board above, so you can inspect the product from the customer's side, the agent's side and the administrator's side before you decide.

**Is this a complete product or a starter template?**

Complete. 73 page modules and 286 HTTP operations, with authentication, roles, billing, an administration panel, background jobs and seeded demo data all wired and running. A template gives you the shape of an application; this is one you can deploy and start operating.

**Can I rebrand and modify it?**

Yes, without asking. The name, identity, copy, styling and code are yours to change. Rebranding and operating it as your own service is exactly what the licence is for.

**What does the licence allow?**

A perpetual, worldwide, non-exclusive, non-transferable licence to the product you bought and to every update released for it. The Standard licence covers one business — yours. If you deploy for clients, the Client licence covers up to five. You can modify it, rebrand it, deploy it and charge your own customers.

**Can I resell the source code?**

No. Reselling, redistributing, sublicensing or giving away the source itself is not permitted under either licence. You build and deliver products with it — the code stays with you.

**What services and ongoing costs are required?**

You bring your own accounts, so we never mark anything up and there is no ongoing cost to us beyond the purchase. Required: A Node host and a Supabase project, A scheduled runner for due-date reminders. Optional: none. The table above says exactly what stops working without each one; most have usable free tiers at low volume.

**How difficult is deployment?**

Two ways, and most buyers use the first. The installer in your saascode dashboard walks it: you create free accounts at Vercel and Supabase, connect them, and it provisions the database, applies 101 migrations, seeds the data, deploys and verifies the result — you watch the steps go green. Or take the source and do it yourself with the shipped scripts and docs, which is the same sequence run by hand.

**What updates and support are included?**

Updates to that product for as long as we maintain it — no renewal fee and no expiry date on your access. Support covers download problems, defects in the code as shipped, questions about what the product does and how it is structured, and licence questions. It does not cover debugging your own modifications, building features for you, or setting up your hosting and third-party accounts.

**Why does a complete codebase cost $199?**

Because it was built once and is distributed many times. SaaSCode builds each product and ships the same finished release through the catalog, so the price reflects repeatable distribution — not a reduced codebase, an unfinished template, or what the same work would cost commissioned.

**Do I need to be a developer?**

No, for the normal path. You create free accounts at Vercel and Supabase, connect them to the installer in your saascode dashboard, and it does the deployment for you — provision, migrate, seed, deploy, verify. What it asks of you is creating two accounts and copying a token, not writing code. If you would rather deploy it yourself, or host it somewhere else, the full source and the scripts are yours to do that with. Running the product day to day needs no technical skill at all: that happens through its own interface, which is what the demo shows.

## Licence

The buyer receives the complete source and may deploy, modify and operate it
as their own SaaS, charging their own customers. The source itself is not
resold or redistributed: you build and deliver **with** it, you do not sell **it**.

## What this document cannot tell you

Stated plainly because a review that misses it is not a review:

- code quality, duplication, or architectural consistency
- test coverage
- query performance under load
- security posture beyond what the stack implies
- how maintainable it will be in a year

Scope is measurable from outside; implementation quality is not. Anyone
evaluating this should say so rather than infer quality from size.

## Written about it

- [Taskline vs Plane — the seat math, the AGPL question, and the decision you are actually making](https://saascode.ai/inside/taskline-vs-plane.md)
- [The Self-Hosted Team Project Management Buyer's Guide (2026)](https://saascode.ai/inside/the-self-hosted-team-project-management-buyer-s-guide-2026.md)
- [How we built Taskline](https://saascode.ai/inside/how-we-built-taskline.md)

## Links

- Catalog page: https://saascode.ai/products/taskline
- Product record: https://saascode.ai/inside/products/taskline
- Live demo: https://taskline.saascode.ai
- Every product: https://saascode.ai/llms.txt

