Adom Gantt
Public Made by Adomby adom
Interactive Gantt chart viewer for project timelines, with a table view and an analytics page over the same data. Data-driven, dark by default with a print-friendly light mode, and fully editable in the browser: drag bars to move or resize, multi-select and batch-shift dates, manage dependency arrows inline, reorder rows, filter by phase, and undo. One click auto-schedules the whole plan so every dependency lines up finish-to-start on working days, skipping weekends and US federal holidays, push
| Name | Last updated |
|---|---|
| client-vs-server-icon.png | |
| README.md | |
| where-it-lives.html | |
| where-it-lives.png |
What stays on your screen, and what everyone sees
Adom Gantt keeps two kinds of state apart. How you are looking at a plan (folds, filters, the lens, the text size) stays in your browser and never reaches anyone else. The plan itself (every row, date, owner and section) lives on the server, and every teammate sees a change to it within about a second.

The short answer
Pressing Collapse all, folding a section or a task's subtasks, filtering to Unassigned, turning on Current or Overdue, or switching to the Table changes only your screen. Your teammates keep whatever they had.
Dragging a bar, changing a status, renaming a section, pressing Auto-schedule, or adding and deleting rows changes the plan, so it changes on every screen. Setting somebody else as a row's owner asks them first (0.80.0): the request is on every screen at once, and the owner changes when they accept.
Only this tab
Gone when you reload, and not shared even with your other tabs:
| What | Notes |
|---|---|
| The section, Milestone and Dependencies chips in the legend | Hiding or dimming a section is a quick look, not a setting |
| Your selection, the open editor, your scroll position | However you picked the rows (a row's handle, Ctrl+click, Shift+click), the selection is this tab's own. It is shown to others as a highlight (see below), but it is never saved |
| Undo history | Ctrl+Z undoes this tab's own edits only, and never a teammate's later change to the same field |
| A quick-add row you are typing in | The task is saved when you press Enter; the blank row itself is yours alone (0.79.0) |
| "See what the team sees" | The owner's preview of the team view lasts until the tab closes |
This browser
Remembered for you across reloads, kept per plan, and never sent to the server. Every tab of the same plan in the same browser shares them; another computer starts fresh.
| What | Notes |
|---|---|
| Collapse all, each section's fold, each task's subtasks folded (0.79.0) | The table follows the chart's folds |
| Owner, Current, Overdue and tag filters | One Owner filter for the chart and the table, in the same place (0.77.1) |
| The lens: Gantt, Table, Analytics, Setup | Analytics and the owner cards on Setup are hidden for teammates |
| Days, weeks or months; text size; light or dark; milestone style; Today line | |
| Critical path highlight | Only the highlight. Auto-schedule, which moves dates, is a plan change |
| Name column width; table column widths and sort | |
| Which legend chips are folded away | The "18 tags" and "50 sections" chips |
| Which answers and notices you have seen | Only what the count on the Requests button leaves out; the requests and notices themselves are the plan's (0.80.0) |
A browser that has never opened the plan starts from the plan's own defaults: the
project.view block in the data file can set the lens, grain, milestone style, theme
and name column width. Once you change one, your choice wins in that browser.
The plan's server
Saved by the adom-gantt server and shared with everyone the plan is shared with.
| What | Notes |
|---|---|
| Every task and milestone | Name, dates, owner, status, notes, tags, effort, provenance link, dependencies |
| Sections | Names, colours, leads, tags and order |
| Row order and tag colours | Since 0.79.0 each row holds its own place: the task it sits under (parent) and its key among its siblings (pos) |
| Added, deleted, pasted and imported rows | A delete can be undone by the tab that made it |
| Changelog | Every change, who made it and when, in an append-only file the server checks for tampering |
| Backups | Daily, and before every import or compaction; the last 30 are kept |
| Project dates | Owner only; the dashed lines and the header's clock follow them |
| Working calendar | Owner only; which holidays the plan works and its extra days off. Every working-day count follows it |
| Requests (0.80.0) | Who asked whom to take which task, the answers and their notes, the notices of moved dates, who lets their AI answer for them. Written by the server only; owner-only switch to turn them off |
| People (0.80.0) | Which Adom account each owner name belongs to (Setup, owner only), and the accounts of everyone who has signed in to the plan |
| Sharing (only me, the org, anyone signed in) | Owner only |
| Google Chat digest | Owner only |
| Sign-in sessions and the agent key | Never shown in the page |
Edits save about half a second after you stop, as the fields you changed and nothing else (0.77.0), the way a Google Doc does. Two people editing different fields of one row both keep their change; the same field at the same moment goes to the later one, in every tab, and the person whose value was replaced is told. The server keeps the row order grouped by section, the way every screen shows it, and a tab that falls behind or finds it disagrees with the server fetches the whole plan and puts itself right (0.77.1). Since 0.79.0 a move, a nest or an un-nest is a change to that row's own place, sent whole, so two people moving rows never edit a shared list; the flat order is derived from the places on the server.
Live, never saved
The server also passes along two things it does not keep: who has the plan open (the initials in the legend) and which rows each person has selected or open (rows tinted in that person's colour, with their initials). Both vanish when the person closes the tab.
Worth knowing
- The project dates are the owner's. Set on Setup, they are part of the plan, so everyone sees the same dashed lines and the same Duration and Remaining. (They replace the old start button, which moved every date in the plan for everyone.)
- A filter can hide new work. If you filter to one owner and a teammate adds a row for someone else, you will not see it until you clear the filter. The legend counts ("13 of 30" on a section) say how much is hidden.
- Your folds and filters follow you between tabs, not between computers. Your laptop and your desktop each remember their own.
Back to Sharing a plan with your team.