Build with AI

How to build a project & task manager with Lovable

One browser tab, prompt by prompt, and your team’s work in one place at the end of it. Projects and boards, the same tasks as a board, a list, a calendar and a timeline, comments, tracked time, and live updates, with the tables designed in the same conversation that produces the screens.

August 2026 · 52 min read · Updated September 2026

Lovable

$ I want my own project tracker: projects with boards and columns, tasks I can drag between columns, the same tasks as a list, a calendar and a timeline, comments with files, a timer that adds up, and everybody’s screen updating without a refresh.

  • Tables designed in chat
  • Four views designed over one model
  • Ready to preview
You describe it, Lovable builds it
Start here

What a project & task manager actually is

One list of tasks, viewed four different ways, by a whole team at once. Most of the complexity in project management comes from that single sentence, not from how any app looks.

Strip the design away, and a task manager is surprisingly simple: projects, boards, columns, tasks, and basic details like assignees, due dates, comments, and time spent. That much you could sketch on a napkin.

What makes it powerful is that the same data answers four distinct questions. A board asks where work stands and in what order. A list asks how to sort and filter hundreds of tasks instantly. A calendar focuses purely on deadlines, ignoring tasks without dates. A timeline maps out start and end dates to show project flow. Four views, one dataset, four ways to keep everyone clear on priorities.

Then real teamwork happens. Someone moves a card while a teammate is checking the same task in a list. Someone tracks time, steps away, and returns to find the task updated. This is where a tracker turns from a simple spreadsheet into shared team infrastructure, where the real value is in instant clarity, not just drag-and-drop mechanics.

Four ways to see your work

If you build views as separate features, you end up with conflicting truths, where a deadline shows on your calendar but vanishes from your timeline. Building them on a single dataset means changing a date anywhere instantly updates it everywhere, keeping your workspace reliable and effortless to maintain.

Card position sets team focus

Moving a card isn’t just a visual tweak. It resets team priorities. Storing order directly at the data level ensures that a card sitting third in a column stays third across page refreshes, mobile devices, and colleague screens. Your workflow stays locked in, no matter who moves what.

Real-time accuracy by default

The moment two people use a tracker, a stale screen means two colleagues confidently disagreeing on project status. Instant real-time updates guarantee everyone works from the exact same reality, eliminating double work, constant pings, and manual refreshes.

What work looks like without one place for it

275

interruptions a day (a ping about every two minutes of an eight-hour day) among the most-pinged fifth of the workers in Microsoft’s June 2025 study of its own telemetry and a survey of 31,000 knowledge workers. Read the qualifier rather than the headline: this is the top 20% by ping volume, not the average person. It is still the clearest picture available of what happens when the state of the work lives in everybody’s inbox instead of somewhere both of you can look.

Microsoft Work Trend Index special report, published June 2025 · checked report published June 2025

What a project tracker needs

The parts every project tracker is built from

The first of these six is the foundation for all the rest. Get that one right, and the entire system stays clear, reliable, and effortless to use.

01

One single truth across four views

A board, a list, a calendar, and a timeline aren’t four separate tools: they are four ways to look at the exact same work. When you update a deadline in a list, it must change instantly on the timeline and calendar. Keeping every view synchronized on a single dataset prevents conflicting information and eliminates duplicate work.

02

Card position drives real team priorities

If a task sits third in a column, it represents a team priority. That position needs to survive page refreshes, mobile app views, and colleague updates. Dragging a card isn’t just a visual adjustment: it sets what your team focuses on next, so that order must remain rock-solid for everyone.

03

Instant real-time synchronization

A project tracker is only useful if everyone sees active data. Changes should appear instantly, without requiring anyone to press refresh. The moment information gets stale, two colleagues end up confidently disagreeing on project status or repeating the same work. Live updates keep the entire team aligned.

04

The task is where your team’s memory lives

Beyond due dates and assignees, a task holds essential context: subtasks, attachments, and the discussions behind key decisions. Standard fields tell you what needs to be done, but the conversation explains why. Six months later, that comment thread is the only reliable record of how a project was delivered.

05

Time tracking only works if the numbers add up

A simple start/stop timer is easy, but real value comes from automatic rollups. Time entries must attach cleanly to tasks and people, survive page reloads, and calculate totals automatically. Done right, you instantly know what a project actually cost to complete. Done wrong, you get confusing numbers nobody trusts.

06

Clear permissions and privacy from day one

A solo workspace functions differently than a shared team hub. Establishing who can view or edit specific projects keeps client data private while keeping internal collaboration open. Setting these access boundaries upfront protects sensitive work as your business grows.

Build vs buy

Buy it once or pay per user forever

Popular tools like Trello, Asana, Monday, and ClickUp charge anywhere from $5 to $30 per user every month. Before comparing features, answer one question: how many team members, contractors, and clients will ever need access? Per-seat pricing quietly turns your business growth into a recurring monthly penalty.

Build your own

An app you own has no seat meter on it. The views everybody else keeps behind an upgrade are just queries, and with an AI coding tool writing the schema, the access rules, and the live updates, that build is weeks rather than quarters.

  • The eleventh person to need a look at the board costs nothing, so adding somebody is not also a budget conversation
  • A board, a list, a calendar and a timeline are four queries over one table rather than a plan tier
  • Your projects live on your own domain, not a workspace subdomain somebody else owns
  • Every task, comment, attachment and tracked minute is in your own database, queryable without an export request
  • What a column means, what counts as done, and which fields a task carries are yours to change in a sentence
  • Nothing gets taken away when a vendor reshuffles its tiers, because there are no tiers

Rent the tracker

Trello · Asana · monday.com · ClickUp · Basecamp

Renting a tracker buys you 15 years of ready-made infrastructure: automated workflows, tool integrations, mobile apps, client access, and instant customer support. This template provides none of these out of the box: it trades turn-key convenience for complete data ownership and zero per-seat fees.

  • Working the day you sign up, with mobile apps, notifications that reach a phone, and a support contract behind them
  • Automations and rules, so a card moving can assign somebody without you writing a trigger
  • Integrations with the tools work actually arrives through, a category this template does not attempt
  • Real multi-person collaboration out of the box: invites, guests, and permissions, which this template genuinely does not have
  • Notifications that leave the building. This template raises them inside the app and sends nothing out of it
  • Four of the five bill per person per month, and two of them put the timeline view itself behind that bill
TrelloFree, then $5 (Standard), $10 (Premium), and $17.50 (Enterprise) per user/month billed annually - $6 and $12.50 billed monthly for the first two

Here first because its own pricing page states this guide’s argument more plainly than we could. The Premium column carries the feature line “Views: Calendar, Timeline, Table, Dashboard, and Map”, so the four views this template ships are the reason to upgrade, and neither the Free nor the Standard column lists a view feature at all. Its free tier is generous where it matters least: “Unlimited cards”, but “Up to 10 collaborators per Workspace”, “Up to 10 boards per Workspace”, and “250 Workspace command runs per month”.

trello.com · checked August 2026

Asana$10.99 (Starter) and $24.99 (Advanced) per user/month billed annually, or $13.49 and $30.49 billed monthly, with Enterprise quoted on request

The same story at a higher price point. Its free Personal plan includes “List, board, and calendar views” and stops there. Timeline and Gantt begin on Starter, which the page describes as “a clean, simplified scheduling view” plus “detailed project management features like task hierarchy and progress tracking”. Personal is capped at “Up to 2 users can collaborate for free”, so the free tier is out for a team of three before any feature comparison starts. And read this promise carefully: “Add as many team members as you need without hitting a cap or paying extra per person” is about seat caps, not the per-seat bill, which continues.

asana.com · checked August 2026

monday.comFree (up to 2 seats), then €9 (Basic), €12 (Standard), and €19 (Pro) per seat/month billed annually on its Work Management plans

The clearest per-seat ladder of the five, and the one that prices the same product several ways depending on what you call your team: its CRM and Service plans at comparable tiers run €12 to €28 and €31 to €45 a seat. Two honesty notes. The page served euros rather than dollars, so euros are quoted. And its Work Management columns showed us annual figures only. The CRM columns showed both bases and advertised “billed annually saves 33%”, so month-to-month runs higher here by an amount we cannot state without inventing it. Its team-size selector starts at three seats.

monday.com · checked August 2026

ClickUpFree Forever, then $7 (Unlimited) and $12 (Business) per user/month billed annually - $10 and $19 billed monthly - with AI sold separately at $9 or $28 per user/month

The counter-example on seats, and the one whose free tier fails in an instructive way. Free Forever advertises “Unlimited Tasks” and “Unlimited Free Plan Members”, so the meter is “60MB Storage” rather than people, roughly a dozen photographs, and the wall you meet the first time somebody attaches files to a task. The other thing to notice is the separate AI ladder: the assistant is its own per-user line on top of the plan, at $9 or $28 a user a month.

clickup.com · checked August 2026

Basecamp$15 per user/month billed monthly (Pro), or $299/month billed annually for unlimited users (Pro Unlimited) - free for one project and up to 20 users

The honest exception: one well-known vendor does sell a way off the seat meter, and its page says so: “Unlimited users, no per-user fees”, “Your whole organization for one fixed price”. The arithmetic is ours, not theirs, and it is why this row is here: $299 a month against $15 per user means the flat plan only pays off around twenty people, so for a small team it is the dearer of Basecamp’s own two options. Roughly $3.6k a year, in perpetuity, for software.

basecamp.com · checked August 2026

Rule of thumb: if work arrives from a dozen other systems, if clients need guest access, if people live in the mobile app, or if somebody in compliance needs an audit trail, rent. Those are real products and none of them is a weekend of describing. If what you want is your team’s work in one place, in the views you find useful, with fields that match how you talk about it, and a bill that does not grow every time you hire, that is the half worth owning. Two things to weigh either way. This template ships with a project belonging to one person, and the shared-workspace version is an addition described in the steps below rather than something already built. And the paid tier you would replace is more than a paywall over four views: the automations, the integrations, and the phone in somebody’s pocket.

No dev needed

Why build with Lovable

A working app needs more than screens: something has to store what people enter, decide who may see it, and reject what does not make sense. That part is where a solo build stalls, not the parts a user sees.

Lovable turns that work into a conversation: describe a screen or a rule in plain language and watch it appear in the live preview, in the same tab:

The build loop
1

Prompt

Say what you want to add or change, in plain language.

2

Watch

The live preview rebuilds in the browser as Lovable writes the code.

3

Try it

Click through the real app, with real buttons, forms and data rather than a mockup.

Refine

Select what’s off and describe the fix, or ask for what’s next.

Loop back to Describe

None of that requires a computer science background or writing code, and the whole build happens in one browser tab, one request at a time.

Data & backendhandled automatically

Connect your database in a single step, right from the chat. Lovable builds the tables, sets up the logins, writes the server-side functions, and turns on live updates, each one an ordinary request in plain language, not a separate tool to learn.

Click to point instead of describing where

Select any element in the live preview with Lovable’s Select elements tool, and your next message applies to exactly that piece.

Full ownership and complete privacy

The app and the records in it are yours. Every change is saved automatically, and the repository Lovable syncs to GitHub is private on every plan, with no technical setup and not one Git command.

What it costs

Pay a developer, or do it with AI

Neither option charges you per seat. A workspace built for ten colleagues costs the exact same as a workspace built for one.

Hire a developer

Custom build, from scratch
Developer
~$13k-$50k
Supabase (backend)
Free tier · $25/mo (Pro plan)*
Hosting
$0 free tier
Build time
~250 hrs of their work

~$13k-$50k to build, then from $25/mo after launch

Our ~250-hour estimate, priced at the rates in the survey linked below: it has senior US developers at $100-$150+ an hour, and agencies charging 20-40% more than the freelancers they bid against, which is where $50/hr and $200/hr come from rather than from a shrug. Read the distribution rather than the total, though. Roughly a third of those hours go on the access rules, the live updates, and the arithmetic that rolls tracked time onto a task, and none of the three can be photographed. It is why a quote for “a Kanban board” tends to come back at a multiple of what the mockups implied.

Build it with Lovable

From scratch, with Lovable
Lovable
Free (30 credits/mo) to $25+/month (Pro, from 100 credits)
Backend (Supabase)
Free tier · $25/month (Pro plan)*
Hosting
$0 on a Lovable subdomain
Your time
~118 hrs

Free to try the idea, ~$25-$50+/month on Pro while you build a real one, then whichever credit tier you keep using

Lovable bills by credits, so what you pay tracks what you build: importing the pre-built template can fit inside the Free plan’s 30 credits a month, while a full from-scratch build burns through Free fast and usually needs Pro. Pro’s entry rung is $25/month (or $250/year, roughly $21/month effective) for 100 credits, the bottom of a ladder where 200 credits runs $50/month (or $500/year, about $42/month), and a multi-session build often lands on that rung or higher rather than the entry price.

* Ignore the 500 MB database limit. Tasks and comments are text, and text is small. Two other free-tier lines matter. The 1 GB of file storage is what attachments spend, and it goes faster than you expect once people start dragging screenshots onto cards. And a free project pauses after a week of inactivity, which for a tracker means the week your team quietly drifts back to a spreadsheet. Pro, from $25/mo, ends the pause, takes file storage to 100 GB and egress to 250 GB (then $0.09 per GB), and keeps a daily backup for 7 days.

What separates the two columns is which way the bill moves. Renting gets more expensive with every person who joins. Owning costs the same at thirty people as at three, and the only line that shifts is whichever AI model you choose to call. One of those two shapes suits a team that is growing, and growing is the only thing anybody is trying to do.

Prices and rates from supabase.com, developex.com and docs.lovable.dev, checked August 2026.

Plan first

Decide before you build

Define six core rules before writing a single line of code. Getting the first rule right sets the foundation for your entire system.

01

Whether this is yours or your team’s

Decide early if this tracker is for one person or a team. A solo tracker is simple. A shared system requires access control for every project, view, and live update. Changing this after the system is built means rewriting your security rules from scratch.

02

What a project contains, and how deep it goes

Project, board, column, task is one shape. Project, task, subtask is another. Milestones or sprints are a third. Write two or three of your own real projects out longhand and see which they fall into. Wrong nesting is the thing you feel every day.

03

Which views you will actually live in

Four views is what the products you are comparing against charge for, not automatically what you need. Pick the one you would open by default and build it properly before adding a second. A timeline costs most and gets used least: it needs start dates, and nobody enters those unless forced.

04

What done means, and who is allowed to say so

Your columns are a workflow whether or not you call it that. Write the sequence out, decide whether anybody may move any card or only its assignee, and decide what happens to a finished card: it stays, it archives, it disappears. Cheaper to write now than to migrate later.

05

Whether you track time, and what you will do with it

Tracked time is only worth the friction if somebody reads it. Billing by the hour makes it the point of the application and it should be one press to start. Otherwise it is a field that makes every task feel like paperwork. If you do track it, settle whether one person may see how long a colleague took.

06

Where the files go, and who may open them

Attachments turn a task into a record, and they carry this app’s sharpest privacy edge. A contract or a screenshot of a customer’s account is not a Kanban card. Decide whether a file is readable by anybody with the link or only by people who may see the task: two different systems, and the easy one is the leaky one.

Approaches

Comparing your build options

Designing screens is the fast part. The real work is real-time synchronization, data consistency, and user permissions across four live views. Here is how three build approaches compare in time and complexity.

~250 hrsBuilding by hand

The four views are not the expensive part. What costs you the month is that they are four readings of one set of rows, and every one of them has to stay honest while somebody drags a card, starts a timer, and posts a comment on a different machine. Getting one view right takes an afternoon. Getting the fourth one to agree with the first three, live, is the job.

~185 hrsGeneric UI starter kit

A kit hands you a board, a table, a calendar widget, and a dashboard shell, which looks like most of a project tracker and is the half you would have finished anyway. None of it knows what a project is, who may open one, that reordering a column is a fact to be stored, or that the person in the next room needs to see the card move. All of that is still yours.

~118 hrsBuilt with Lovable

A browser tab and one message at a time. The tables, the four views reading them, the live updates and the access rules all get designed in a single conversation, with a running preview you drag cards around in before asking for the next thing.

Interactive calculator

Estimate your exact build timeframe

Uncheck any features your team doesn’t need to see your build time drop immediately.

What your project tracker needs

Your estimate

118 hrs

start to finish

Based on the 7 of 7 features you’ve selected, plus ~26h of groundwork. Toggle any on the left to watch the number move, and open the groundwork row to untick what you have already, such as a database that is already running or going live if you are only building a mock-up for now.

A rough estimate, not a quote. Real time depends on how much you customize and how clean your data is.

Setting up your workspace

Let’s set up the tools you need

Nothing gets installed, because the whole workspace is a browser tab. Three things to sort out before step 01, and a fourth worth adding once the project matters to you. After that, you build by describing what you want.

1

Lovable account

Cost: Free

Nothing to download. Sign up with an email, Google, or GitHub account and you land straight in the chat where you describe what to build.

Sign up for Lovable
2

Lovable subscription

Cost: $25/month (Pro) and up

Lovable bills by build credits, so the plan you need follows what you build. Free gives you 5 credits a day, capped at 30 a month, which is enough to try it rather than to finish an app. Pro is $25/month for 100 credits ($250/year, about $21/month), and that is the bottom rung: a build spread over several sessions usually lands on 200 credits at $50/month, or higher.

Compare Lovable plans
3

Supabase project

Cost: Free to start

Where your app keeps its data. Connect your own Supabase project from the chat, or let Lovable create one for you. Either way it designs the tables, adds the logins, and wires the screens to them from there.

Connect Supabase to Lovable
Optional
4

GitHub connection

Cost: Free

Not needed to build anything, since Lovable keeps its own history of every change. Link a GitHub account and it also keeps a private repository in sync, so a copy of the real code exists outside the browser tab. Worth doing before the project is one you would hate to lose.

Set up GitHub sync

Only the first three are needed to start, and none of it touches your computer. From here, you describe what you want and Lovable builds it in the browser.

Step by step

Build your project tracker, prompt by prompt

Nothing installs. You describe a piece, Lovable builds it, you click through the preview, and you ask for the next one. The order below is shaped by one awkward fact: a preview is a generous judge of this particular app, because you are the only account signed in, nobody else is dragging anything, and every row belongs to you. The access rules and the live updates get asked for in explicit terms and then tested against that generosity.

  1. 01

    Attach the database before you ask for a single screen

    A board designed against data that does not exist yet is a board you rebuild the day it does. Attach the database first, and get the two rules into the conversation while it is still short enough for them to stick.

    PromptSet up the project
    Connect my Supabase project before building any screens at all. Then set up a project and task manager, and hold two rules for the rest of this project. First: the board, the list, the calendar and the timeline are four ways of showing one tasks table, so a new field goes on the task once and then appears in whichever views need it, never four versions of the same idea. Second: whether somebody may see a row is decided in the database rather than in a screen, and that includes rows arriving through a realtime subscription. Use these words consistently: project, board, column, task, subtask, comment, attachment, time entry, notification. Confirm the connection is live, then tell me which of those two rules changes how you will design the tasks table, before you design it.

    That closing question earns its extra exchange. It is the cheapest way to find out now whether the model Lovable has in mind gives a task a stored position and a real parent reference, or whether the board is planning to remember the order itself, and only one of those two survives a second person opening the same board.

  2. 02

    Design the tables, and answer the question about other people

    The one step where getting it right is worth more than getting it visible. Everything you build afterwards reads what you settle here.

    PromptModel it once, and decide whose it is
    Design the tables, with no sign-in yet. Projects with a name, description, colour and an owner. Boards belong to a project. Columns belong to a board with a stored position. Tasks belong to a column with a title, description, priority, status, due date, an optional start date for the timeline, an assignee, a stored position within the column, and an optional parent task so a subtask is just a task with a parent. Comments belong to a task with an author and an optional attachment. Time entries belong to a task and a person with a start, an end and a duration. Notifications belong to a person. Add sample data with deliberately different shapes: one project with two boards, one with sixty tasks, one whose tasks have no due dates. Before you build any of it, tell me which of these two you are designing for: a project belongs to one person, or a project has members, and if it is members, put that table in now rather than later.

    Answer that before you send the next message, and bookmark the version once the tables exist. Changing the access shape later is the one change in this build that touches everything at once, and remember that restoring code in Lovable does not roll back your database, so a bookmark and a clear decision are worth more here than anywhere else.

  3. 03

    The board, and proving a dropped card is written down

    The part Lovable is fastest at, and the part where a preview is most likely to flatter you. Dragging that looks right and forgets is the specific failure to check for.

    PromptBuild the board
    Build the Kanban board over those tables. Columns across the screen in their stored order, task cards inside them in theirs, drag-and-drop within a column and between columns, a count on each column header, and a card showing priority, assignee, due date, and how many subtasks and comments it has. When a card is dropped, save the new position and column to the database and then reconcile the screen against what came back, rather than leaving a move on screen that the database refused. Then, in the preview, do two things for me: drag a card, reload the page, and show me it is still where I put it, and open the preview in a second browser window, drag a card in one, and confirm out loud that the other window does not update, because I have not asked for live updates yet.

    Use Select elements for the visual corrections here rather than describing them. A board is mostly spacing and drop targets, and the difference between a column you can drop into comfortably and one you fight is exactly the sort of thing that is quicker to point at than to word.

  4. 04

    The other three views, then make the whole thing live

    Three more views over the rows you can already see, then the subscriptions that stop any of them going stale. Bookmark before this one.

    PromptAdd the other three views
    Add the remaining three views over exactly the same tasks, with no new fields and no second source of truth. A list view: sortable and groupable by column, priority, assignee and due date, filterable, editable in place, with subtasks nested under their parent. A calendar view: a month grid by due date, with a clearly labelled place for tasks that have none rather than dropping them. A timeline view: a bar per task from its start date to its due date, treating a missing start or end honestly instead of inventing a range. Then turn on realtime: subscribe to changes on projects, boards, columns, tasks, comments, time entries and notifications, and have all four views update from the same shared cache so one change arrives everywhere rather than each screen re-fetching. Tell me which tables I need to enable realtime on in Supabase, since it is off until I do. Then prove it in the preview: two windows, drag a card in one, and show me the list and the calendar moving in the other without a reload.

    Bookmark the version you are on before you send this. Adding subscriptions is the message most likely to take two or three goes, and coming back to a version you know worked beats untangling a half-changed set of channels, especially since restoring the code will not undo anything the attempts wrote to your database.

  5. 05

    Sign-in, the rules, and the live feed tested as a stranger

    Everything your team is working on is now in a database with a live feed on it. This step is where you find out whether the feed is a feature or a hole.

    PromptAdd auth and the access rules
    Add email-and-password sign-up, login, logout, a persisted session, and a profile row created automatically for each new account. Then turn on row-level security across every table, built for the access shape I picked in step 02. If a project belongs to one person: they read and write their own projects and everything under them, and a task is additionally readable and updatable by whoever it is assigned to, and if that is what we built, say plainly that an assignee will not be able to open the board their task sits on, and offer me the smallest change that fixes it. If a project has members: a membership row grants access, every rule on boards, columns, tasks, comments and time entries checks it through a security definer function rather than repeating a subquery, and only an owner may add or remove members. Either way: explicit with-check clauses on inserts and updates, notifications readable only by the person they are for, and a deliberate answer about the accounts table, because reading only your own row is the safe default and it means an assignee picker shows one name. Then, in the preview with a second account, show me four things: it cannot open my project, cannot see my tasks, cannot see my time entries, and does not receive my rows through the realtime feed.

    That fourth check is the reason the live updates went in before the rules. A subscription is a read, and until the policies exist it will happily deliver rows the ordinary query path would refuse, so the only way to know is to sign in as somebody else and watch what arrives.

  6. 06
    Destination

    The task drawer, the dashboard, and one last bookmark

    Subtasks, comments with files, the timer that totals, notifications, and the charts over the top. Then a whole day worked through the preview with two accounts, and a bookmark the moment it passes.

    PromptFinish the task, the dashboard, and rehearse
    Finish the app. The task drawer: description, priority, due date, assignee, subtasks I can add and tick off, and a comment thread with file attachments, and for those attachments use signed links with an expiry generated for somebody allowed to see the task, rather than making the storage bucket public. Then time tracking: a start/stop timer on a task, one running entry per person, entries that survive a reload, and a database trigger totalling them onto the task so no screen is doing that arithmetic. Then notifications raised by triggers when a task is assigned or commented on, arriving live in a dropdown. Then a dashboard: tasks by status, what is overdue, workload by assignee, and where tracked time went, with the headline counts worked out server-side and scoped to the signed-in account. Then walk me through a working day in the preview using two accounts: create a project, fill a board, drag a card and watch the other window, assign a task across accounts and see the notification arrive, start a timer and confirm the task total moves, post a comment with a file and check what the other account can and cannot open, and confirm the dashboard agrees with all of it.

    The version that gets through that day is the one to bookmark, before a domain or anything else touches it. It is your last recorded point where the four views, the live feed, the timer and both accounts demonstrably worked together, and it is the version you will want back if a later change goes sideways.

Authentication & security

Who sees what and how your data stays safe

A project tracker stores sensitive details: client budgets, internal notes, and confidential attachments. Here is how to keep your workspace secure and prevent accidental data leaks.

Hand off authentication to standard services

Use built-in database authentication for sign-ups, password resets, and user sessions. Building custom login systems adds unnecessary security risks with zero business upside.

Define clear project ownership and team roles

By default, a project belongs to a single owner while assignees view their tasks. Ensure your access rules allow team members to view the full boards their tasks actually live on.

Protect team profiles and user accounts

Users should only access necessary teammate details like display names and avatars. Restricting full user account rows prevents exposing sensitive user profile data across your workspace.

Enforce security in the database, not the design

Hiding a card in the interface doesn’t make it secure. Setting security rules directly inside the database guarantees that permissions stay intact across every view and future feature.

Test permissions with multiple user accounts

A workspace often looks fully secure when you are the only person signed in. Test access rules with different user roles before launching to spot hidden permission gaps early.

Secure real-time feeds against data leaks

Live updates and instant feeds must obey the exact same security rules as standard queries. Otherwise, real-time updates can accidentally push hidden task details to unauthorized users.

Use private links for file attachments

Public file URLs allow anyone with the link to access your documents. Switch to private, expiring links to protect internal contracts, client screenshots, and sensitive uploads.

Restrict notification preview content

Notifications often include task comments or status updates. Ensure notification feeds inherit access rules so sensitive details aren’t exposed through activity alerts.

Scope dashboard metrics to authorized data

Task counters and dashboard summaries can quietly reveal project activity across restricted boards. Ensure overall totals only count items that the signed-in user is permitted to see.

Treat tracked time as sensitive employee data

Time logs record work patterns and daily schedules. Decide who can view teammate hours upfront and ensure your time-tracking policies align with local privacy obligations.

Enable daily backups before going live

Free database tiers do not create automatic backups of your tasks, discussions, or history. Upgrade to a paid tier ($25/mo) for daily backups before your team relies on this tracker as their main workspace.

PromptCheck who can see what
Review the access rules (row-level security policies) on every table. For each one, tell me in simple terms who can view, add, edit, and delete records, confirm that people can only reach their own data while the right roles can reach more, and flag anything left open that shouldn’t be.

Paste this into the chat before launch so Lovable checks nobody can see data they shouldn’t.

One rule outranks the rest here: the database service key and any AI provider key live on the server and nowhere else: not in the app your team downloads, and not in a public repository. Treat either one that escapes as burned, and replace it the same day.

Workflow rules

What speeds the build, and what slows it

Speeds the build

  • One small request per message, such as a field, a screen or a rule, rather than the whole app at once
  • Connecting your database before building screens that need real data, not after
  • Using Select elements to point at the exact thing that should change, instead of describing its location in words
  • Bookmarking a known-good version before a redesign or a change to the data model
  • Reading each response before sending the next request, so small mistakes don’t stack up

Slows the build

  • Asking for an entire app in one message instead of one screen at a time
  • Building screens for data your database does not hold yet
  • Describing which button or section to change instead of selecting it
  • Skipping bookmarks, then scrolling far back through history to undo a bad change
  • Approving several messages in a row without previewing what actually changed
Keeping a safe copy

Connecting GitHub (Optional)

Every change in Lovable is saved automatically without any technical setup. You only need to link GitHub if you want a private copy under your own control or plan to hand the codebase over to external developers.

What Git actually is

A recorder for a project: every change becomes a version you can go back to, and nothing is ever overwritten. GitHub is the service that keeps those versions online.

Lovable already saves every change

A new version is created each time Lovable changes your project. No save button, no Git command, and the full history is there to scroll back through.

Version history, Lovable docs

Reverting undoes the code, not your data

One click restores an earlier version of your code and redeploys it, but nothing already written to your database rolls back with it. A UI or logic change is safe to undo. A change that touched real records is not.

Bookmark before a big change

Before a redesign or a change to your data model, bookmark the version you are on: one click back instead of a long scroll through history.

Connecting it, if you want to

Open your project settings, pick GitHub, and authorise the account. Lovable creates a private repository and keeps it in sync both ways: changes in Lovable reach GitHub, and anything pushed to that branch comes back in. Free on every plan.

GitHub integration, Lovable docs

It’s also how you leave, if you ever want to

The synced repository is a standard Vite and React project: clone it, hand it to a developer, or deploy it yourself.

Deployment, hosting, and ownership, Lovable docs
Going live

Where to host your application

Hosting gives your app a home on the internet so anyone can open it via a web link. Choose a service below to make your site live. (Your database, logins, and business records are stored separately in Supabase, covered below).

HostBest forNotesFree tier
LovableBuilt inPublishing from the chatThe project you have been previewing publishes itself, with nothing to configure and no account to open anywhere else. Free on any plan at a lovable.app address. Paid plans put it on your own domain: buy one through Lovable and the DNS is done for you, or point one you already own at it using the two records the setup screen shows. Certificate issued automatically either way.Free on a lovable.app subdomain · own domain on paid plans

One button, and the app you have been previewing is live.

Optional

Hosting it somewhere else

Only for a setup Lovable does not offer: a host you already pay for, or the exported code on your own account. None of it is needed to go live.

HostBest forNotesFree tier
VercelOne-click deploysConnect the repository and every push ships itself, with no configuration for a Vite project. Check which plan you belong on first: Hobby is licensed for personal, non-commercial use, and software your company runs its projects through is commercial however few of you there are, so Pro, at $20/user/mo.Pro from $20/user/mo (Hobby is non-commercial)
NetlifyDrag-and-drop or GitPoint it at your repository, or drag the built folder onto the page and be live in a minute. Do add the redirect rule it asks for: skip it and a URL aimed straight at one task answers not-found, which is the URL this app exists to hand out.Free tier
Cloudflare PagesTeams in several countriesThe app is served from wherever the person opening it happens to be. The case for it is a team spread across time zones, which is also the case where two people watching one board update is worth testing rather than assuming.Generous free tier
GitHub PagesNot really this appFree publishing straight from a GitHub project, after one routing setting. Listed to be ruled out: free means a public repository, and this repository sits next to every project your team runs and every file dragged onto a card.Free from a public repo only
Firebase HostingTeams already on GoogleOne round of configuration, then one command per release forever. No argument for it comes from the app itself. The argument is that your logins, documents and calendars are already Google.Free Spark tier
AWS Amplify HostingTeams already on AWSDeploys from the AWS console, and wants the same rewrite rule so a link to one task lands on it. You pick it because AWS is already on the invoice.Free tier (build + hosting)
SurgePublish from the terminalOne command puts the built folder online, no repository involved. Handy for letting a colleague try the board before you commit. Wrong for the address people bookmark.Free - unlimited publishing
DigitalOcean App PlatformDigitalOcean usersBuilds and serves inside the DigitalOcean account you already have. The whole case is one fewer supplier and one fewer invoice, which in a small company is a real one.Free - 3 static sites, 1 GB/mo transfer

All eight serve the app well enough that speed is not the deciding question. Three others are. Does the plan permit commercial use, given Vercel’s Hobby tier does not and a tracker your company works in is commercial by any reading. Does it publish from a private repository, given what this code sits beside. And does a deep link resolve for a browser that has never seen your site, because a URL pointing at one task is the link your team will share most.

One thing to check on the day you go live, and it is not the hosting. The live feed only works on tables you enabled it for. A board that has stopped updating in a second browser is the failure your team meets on day one and you never do, because you are usually the only person looking.

Database & backend

Keep your data in Supabase

Projects, boards, tasks, comments, attachments, tracked time, and the accounts they belong to. This is also where the rules deciding who may read which project live, and where the live feed comes from.

ServiceBest forNotesFree tier
SupabaseData, auth, files, live updatesProjects and tasks live in Postgres, accounts come out of its auth service, attachments and avatars go to its storage, and its realtime feed is the thing keeping your board, list, calendar and timeline in agreement across two browsers. Setting it up is opening a free project and handing the app two values: the project URL and the publishable key. The detail to remember afterwards is that realtime is opt-in per table, so it does nothing at all until you switch it on for each one.Free tier, then usage-based
AI workflows

Where AI genuinely helps a project tracker

There is no AI anywhere in this template, so the first prompt below is two pieces of work in one: it adds a feature, and on the way it creates the single server-side function the other four call through. Each of the rest is then one request.

Turn a wall of notes into tasks you can drag

Most projects begin as a page of meeting notes or a long message, and the tax is retyping it into cards. This is the right first feature: contained, useful the day it lands, and it never writes to your board without you.

PromptTurn a wall of notes into tasks you can drag
Build me a server-side ai function (a single place, with my provider key on it and nowhere else) plus a screen where I can paste notes, a message, or a brief. Send the text to that function and get back proposed tasks: a title, a one-line description, a suggested priority, an assignee only where the text names somebody, and a due date only where the text gives one. Show them as a reviewable list I can edit and delete from, then create into a board I pick, with nothing written until I press create. Where the text is vague, say so rather than inventing a date: “next sprint” comes back as no date and a note saying why, not a Friday you chose.

A weekly summary drawn from what actually happened

The status update is the most-resented recurring task in any team, and it is derivable: the board already knows what moved, what slipped, and what nobody touched.

PromptA weekly summary drawn from what actually happened
Add a “summarise the week” action on a project that gathers what changed over a date range I choose (tasks created, tasks that moved column, tasks completed, due dates passed unmet, and comment activity) and sends only that activity summary to my ai function, with no attachment contents. Have it return a short written update in three parts: what moved, what is stuck, what is due next. Compute every count with a query and let the model only do the writing, so no figure is invented. Print the date range on the result, and where a section is empty say nothing happened rather than padding it.

Find the work that has quietly stopped moving

Every board grows a layer of cards nobody has touched in a month and nobody wants to close. Surfacing them is easy arithmetic. The useful part is a sentence about why each looks stuck.

PromptFind the work that has quietly stopped moving
Add a panel listing tasks that look stalled (no column change, no comment, and no tracked time for a number of days I set), sending each one’s title, age, column and last activity to my ai function for one line on what appears to be blocking it and one suggested next step. Send no attachment contents and no comment text beyond the most recent. Order by how long each has been still, show the actual dates beside each row so I can check the reasoning, and where there is too little activity to say anything useful, have it say so rather than guess.

Estimate from your own history instead of your optimism

Once a few hundred finished tasks carry time against them, the tracker knows something you do not: how long this kind of work really takes here. Better than anybody’s instinct.

PromptEstimate from your own history instead of your optimism
Add an estimate suggestion on a new task. Query my own completed tasks for similar ones (same board, similar title, same priority) with their tracked totals, send those durations and titles to my ai function, and have it return a suggested range plus one line naming which past tasks it drew on. Show the sample size beside the suggestion, and refuse to suggest anything from fewer than five comparable tasks rather than guessing. It is a suggestion in a field I can overwrite, never a value written automatically.

Ask your own board a question in plain words

Your dashboard answers the questions you had when you built it. What comes up later (“which projects slipped this quarter”, “where did the time go”, “who is carrying too much”) are queries you should not have to build a screen for.

PromptAsk your own board a question in plain words
Add a panel where I ask a question about my own projects in ordinary words and get an answer with the numbers behind it. Have my ai function turn the question into a read-only query over my own data, run it under my own access rules so it can never reach a project I cannot see, and use the model only to explain the result. Show the query it ran and the figures it used under every answer, state the period and the number of rows involved, and where the sample is too thin to support the answer, say so.

You bring no key and pick no provider: Lovable manages an API key per project, and if you do not name a model it chooses one from what you describe. Match the model to the job: fast and cheap for anything that runs on every record, stronger only where the reasoning matters. Send every feature above through that one integration.

Ready-made option

Get a head start with our template

All three routes above start at an empty folder, and that is not the only available starting line. This tracker already exists and already runs, so the weeks that four agreeing views, live updates, and tracked time that adds up properly would have taken become an afternoon of typing in your own projects.

Project & Task Manager

The exact project tracker this guide builds, packaged so you can open it, point it at your own backend, and make it yours from there. A project workspace where your team's work lives in projects and boards and then shows up however suits you, as a Kanban board, a list, a calendar, or a timeline. You assign tasks, track time, comment, get realtime notifications of changes, and watch progress add up in the analytics.

React 18ViteTypeScriptTailwind CSSSupabase
Out of the box

The key benefits of starting with a template

The four views already read one model, the board already remembers where you dropped a card, and every screen already updates itself. That is most of what this saves you. Behind it, subtasks, comments with attachments, the timer, the notifications, and the dashboard are done too.

Building the core from scratch

~118 hrs

Opening the template, already built

~1 hr

~117 hrs of building you skip

Two measurements of deliberately different things. Building it yourself is the ~118 hrs. Adopting the built one is the ~1 hr: open it, aim it at a database of your own, and get a first project and a real board in. Working out your columns, your fields and your definition of done costs the same on either path, so neither figure includes it.

Four views over one set of rows

A Kanban board with drag-and-drop between columns, a list you can sort and filter, a calendar over due dates, and a timeline, all reading the same tasks, so a change in one is a change in all four. Position is stored per task, which is why a card you moved is still where you left it after a refresh and in somebody else’s browser.

Live updates already wired through every view

Subscriptions on projects, boards, columns, tasks, notifications and time entries, feeding a query cache rather than re-fetching the world, so a card moving, a comment landing, or a timer starting shows up without a reload. Fiddly to add later and invisible when it works, which is a bad combination to be building under deadline.

The task, with everything hanging off it

Priority, description, due date, assignee, subtasks (tasks with a parent, so they inherit the board and column rather than living in a second model), comments with file attachments, and a start/stop timer whose entries roll up into the task’s total through database triggers rather than arithmetic in a screen.

Accounts and 85 declared policies over them

Email-and-password sign-in with a profile row per person, and 85 row-level security policies declared across the migrations as the rules were written and tightened, settling on a project owned by one account, with a task also readable by whoever it is assigned to. Read the honest note in the security section above before you plan a shared workspace on top of it: making this a several-people tracker is a described addition, not a setting.

A dashboard and analytics that already count something

Completion, workload, overdue work and where the tracked time went, drawn as charts, with the headline counts coming from a server-side function scoped to the signed-in account rather than a query the browser could widen. Plus notifications raised by database triggers when a task is assigned or commented on, arriving live in an in-app dropdown.

A codebase your AI tool can keep extending

Everything typed, hooks grouped by what they query, folders named after features instead of file extensions, and a comment anywhere the reasoning would not survive a cold read. The views are where that returns the favour: a fifth one is the change you are most likely to ask for, and the four already there demonstrate how a view is supposed to put its question.

Customer story

From founders who build on our templates

We needed a working product in front of users fast. I started from one of these templates instead of a blank repo, customized it in our AI tool, and shipped in days - not the weeks it usually takes.
Jeevan ThomasJeevan ThomasFounder & CEO, Hado.ai
Got questions?

Common questions

As it ships, personal, and this is the first thing to know before you compare it with anything. A project belongs to one account, and the rules on boards, columns and time entries all check that ownership. A task is additionally readable by its assignee, but the board it sits on is not, so a colleague cannot open the board. There is no invite flow, no membership table, and no roles. Making it a genuine several-person tracker is a well-defined addition (a record of who is on which project, and every rule consulting it), and it is a described step in the build below. If you are one person with several clients, none of this is a limitation.

No, and getting that right is most of what makes this application cheap to change. The board, the list, the calendar and the timeline are four ways of asking about one table of tasks: which column and in what order, how to sort several hundred, which have a due date this month, which span a range of days. Build them as projections of one model and a fifth is an afternoon. Decide early what the timeline reads, though: a bar needs a start as well as an end, and most task records only carry a due date until somebody insists.

No. Notifications are rows written by database triggers when a task is assigned or commented on, and they arrive live in a dropdown inside the app. No mail provider sits anywhere in it, so nothing reaches an inbox or a phone. Connecting an email service is a small, well-defined addition, and it is the one most teams want first: a tracker nobody has open is a tracker nobody reads, and one email a day is usually the difference.

That your screen changes when somebody else changes something, without you reloading. The app subscribes to changes on the tables it cares about and updates its own cache as they arrive, which is why a card dragged in one browser moves in another within a second. Two practical notes: the feed is opt-in per table, so it does nothing until you enable it, and it hands out rows like any other read, so your access rules have to apply to it, or it becomes the one place they do not.

No. This is the half an AI coding tool is best at. Say what you want to happen in ordinary language and you get back the tables, the accounts, the rule deciding who may open which project, the stored position that keeps a dragged card where you dropped it, the triggers that total tracked time onto a task, and the subscriptions that keep four views in agreement. The part left to you is opening a free Supabase project for all of it to be written into.

One level, and it is worth knowing how it works: a subtask is an ordinary task with a parent, inheriting the parent’s board and column rather than living in a separate model. That is a good design (everything that works on a task works on a subtask for free) and it means going deeper is a change to the interface rather than the schema. Resist deeper for a while: a checklist inside a task is usually what people actually wanted.

A timer you start and stop on a task, writing entries against a person, with database triggers totalling those entries onto the task itself, so the number on the card is arithmetic rather than a field somebody remembered to update. It records time rather than billing or invoicing for it. If billing is the point for you, the total per task per person is the figure you would export, and that is a query rather than a feature.

Yes, on comments, and the second half of that question needs a real answer rather than a reassuring one. The template writes careful storage rules checking whether the reader uploaded the file, owns the project, or is the assignee, then makes the bucket public so the URLs work, which takes reads back out of those rules. Anybody with the link can fetch the file. For internal notes that may be fine. For a customer’s document it is not, and signed expiring links are a short change the security section above spells out.

Yes. Columns are rows in a table, not code, so renaming, reordering, or adding one is data. What is worth deciding deliberately rather than drifting into is the rules around them: whether anybody may move any card or only its assignee, and what happens to a card once it is done. Two sentences that save a lot of arguing, and much cheaper now than once your team has habits.

The bill has two lines, somewhere to hold the data and somewhere to serve the app, and both have a free tier. When your team is genuinely working in it, the upgrade to make is Supabase Pro from $25/mo: partly for the file storage attachments consume, mostly to stop the pause, because a free project sleeps after a quiet week and a sleeping tracker sends everybody back to a spreadsheet. Nothing else on that bill responds to somebody joining. Add an AI feature and you also pay whichever model you call.

Nothing here is proprietary. Your projects, tasks, comments, and time entries sit in plain PostgreSQL tables any Postgres host will accept from a standard dump, and the attachments are files you can copy like any others. That is worth more than it sounds here: the comment thread explaining why something was built that way exists nowhere else, and it is exactly what makes a platform expensive to leave.

Yes, and do it before anybody bookmarks anything. Each host above attaches a domain in a few clicks, HTTPS included. The reason to hurry is unglamorous: this is an app whose URLs get pasted into chat all day long, and every link shared before you move is a link that breaks the moment you do.

No. Everything happens in a browser tab: you describe what you want in the chat, and Lovable writes and previews the code. The setup section above covers the handful of things you connect first: an account, a plan, and your own Supabase project.

A sketch on the Free plan is fine for testing an idea, with no real backend behind it. A project connected to your own Supabase account is the one you can actually launch, with real logins, real data, and your own domain.

Build credits reset every day (Free) or on your billing cycle (paid plans). If you run out mid-session, the app you’ve built stays exactly as it is. You either wait for the reset or move up a credit tier to keep going right away.

References

Sources checked August 2026
  1. 01Breaking down the infinite workday (Microsoft Work Trend Index special report, June 2025). microsoft.com (report published June 2025)
  2. 02Pricing (per-user tiers, free-tier limits, the Premium views feature line), Trello. trello.com
  3. 03Pricing (per-user tiers, both billing bases, free-tier user cap, Timeline and Gantt on Starter), Asana. asana.com
  4. 04Pricing (per-seat tiers across product lines, 2-seat free plan), monday.com. monday.com
  5. 05Pricing (per-user tiers, free-tier storage cap, separate AI plans), ClickUp. clickup.com
  6. 06Pricing (per-user plan and flat-rate unlimited-user plan), Basecamp. basecamp.com
  7. 07Pricing (Pro plan, free-tier limits, project pausing), Supabase. supabase.com
  8. 08Web developer hourly rates 2026 (freelance and agency benchmarks). developex.com
  9. 09Row Level Security, Supabase docs. supabase.com
  10. 10Postgres Changes (realtime), Supabase docs. supabase.com
  11. 11Storage access control, Supabase docs. supabase.com
  12. 12Sign up, Lovable. lovable.dev
  13. 13Subscription plans (Free, Pro, Business), Lovable docs. docs.lovable.dev
  14. 14Connect Supabase, Lovable docs. docs.lovable.dev
  15. 15GitHub integration, Lovable docs. docs.lovable.dev
  16. 16Deployment, hosting, and ownership, Lovable docs. docs.lovable.dev
  17. 17Version history and reverting, Lovable docs. docs.lovable.dev
  18. 18Preview toolbar (Select elements), Lovable docs. docs.lovable.dev
  19. 19AI features and model selection, Lovable docs. docs.lovable.dev
  20. 20Custom domains, Lovable docs. docs.lovable.dev

This guide is general information, not legal or employment advice. What you may record about how long an employee worked, and how long you may keep it, varies by country and by state, so check your own rules before you switch time tracking on for other people. Third-party prices, plan terms, and market rates are quoted from the sources above and were last checked on the date shown. Vendors change them without notice, so confirm before you budget. Build hours and the cost estimates derived from them are our own estimates, not quotes. Lovable is a product of Lovable Labs. Verify current capabilities and pricing before relying on them.