Projects
Create and manage projects, phases, milestones, tasks, and team members in ArchiJAM.
Projects
Projects are the primary entity in ArchiJAM. Each project has a timeline built from sequential phases, milestones within each phase, a task list, and a team roster.
Projects list (/projects)
The projects list shows all projects in a sortable, filterable table.
ViewBar controls
- Filter presets:
Active | On Hold | Closeout | All | Archived - Group By: No Grouping, By Status, By Current Phase, By Project Manager, By State, By Market Sector, By Scope Type
- Columns: toggle Number, Phase, Start, End, Progress, Status, PM, Location, Area
- Search: real-time filter across project name, number, PM name, city, and state
- Custom Filter: open a filter slide-over for arbitrary conditions
- Sort: click any column header to toggle ascending/descending
Default visible columns: Number · Project Name · Phase · Start · End · Progress · Status · PM
Clicking a project number or name opens the project detail page.
Creating a project
Click New Project (visible to Full Users only). Fill in:
| Field | Required |
|---|---|
| Project name | Yes |
| Start date | Yes |
| End date | Yes |
| Project number | Auto-generated, editable |
| Status | Defaults to Active |
| Client company | No |
| Client contact | No |
| Address | No |
| Nicknames | No |
After saving, you are taken to the project detail page.
Project detail (/projects/[id])
Header
The header is always visible across all tabs. It shows:
- Project number and status badge
- AT RISK badge when applicable
- Project name and full date range
- Mini stats: time elapsed %, tasks complete %, task count
- Edit button — opens a pre-filled modal for all project fields. Changes are written to the change log.
Tab: Overview
The Overview tab is the primary place to manage phases and milestones.
Phases
One card per phase, sorted by order index. Each card shows the color swatch, name, abbreviation, date range, task completion %, and a list of milestones.
Adding a phase Click Add Phase. Select a phase type from the list defined in System Settings, set start and end dates, and choose whether to enable dependency locking.
Dependency locking When a phase is dependency-locked, its start date is automatically snapped to the previous phase's end date. Saving a change to a phase that has downstream locked phases cascades the date change through all of them and recalculates their milestone dates.
Editing a phase Click the edit control on the phase card. All fields are editable. Saving a date change on a locked phase triggers the cascade.
Deleting a phase Removes the phase and all its milestones. Tasks associated with the phase are also deleted.
Milestones
Each phase card lists its milestones. Milestones are calculated as percentages of the phase duration, adjusted for working days and holidays.
Adding a milestone Click the add milestone control on the phase card. Enter:
- Percent (e.g.
50for 50% CD) — the calculated date previews live as you type - Name — defaults to
[Percent]% [Phase Abbreviation], e.g.50% CD - Date override (optional) — set an explicit date instead of the calculated one
- Description (optional)
Editing a milestone All fields are editable. Changing the percent recalculates the working-day date.
The 100% milestone Each phase has an automatic 100% milestone whose date always matches the phase end date. It cannot be deleted.
Tab: Task List
Tasks grouped by phase. Each phase group shows the phase name, a completion count, and its tasks.
Task rows: name · assignee · due date (red if overdue) · status badge
The status badge is clickable and cycles: Pending → In Progress → Needs Review → Complete. Completed tasks get strikethrough styling and sort to the bottom.
Adding a task
Type a task name in the input at the bottom of any phase group and press Enter. This creates a task via POST /api/projects/[id]/tasks.
Deleting a task Click the trash icon on any task row. Requires confirmation.
Permissions Limited Users can only add or delete tasks in projects where they are assigned as Project Manager. Guests see no edit controls.
Tab: Task Kanban
A four-column kanban board: Pending · In Progress · Needs Review · Complete
Active phase filter A toggle at the top of the tab limits the view to tasks in the currently active phase (the phase whose date range contains today).
Task cards show: phase color tag · task name · assignee initials · due date
Drag and drop
Drag a card to a different column to change its status. The status is updated immediately via PATCH /api/tasks/[id].
Tab: Team
A grid of team member cards. Each card shows: avatar, name, email, project role badge, and system role.
Adding a team member Select a user from the dropdown (shows all users not yet on the project) and choose their project role. Click Add. This writes a change log entry.
Removing a team member Click the remove button on a card. This writes a change log entry.
Project roles are defined globally in System Settings → Project Roles. Each role can be scoped to a single-user assignment (e.g. Project Manager) or allow multiple users.
Tab: Hours
A time tracking summary for the project.
Summary row
- Total budgeted hours (sum of phase budgets, shown only if any budget is set)
- Total logged hours across all approved and submitted entries
- Overall progress bar (logged ÷ budgeted)
Per-phase table One row per phase showing: phase name and dates, budgeted hours (editable inline by admins and full users), logged hours, and percentage of budget used.
Budget bar colors: green (≤80%), amber (≤100%), red (>100%).
Recent entries table Up to 50 most recent time entries for the project. Filter by team member, phase, and date range. Columns: Date · Team member · Phase · Hours · Tasks · Comments.
Tab: Details
Static metadata and history:
- Description — free-text project description
- Address — full address with a Google Maps link
- Nicknames — alternate project names
- Client — linked company and contact
- Change log — full history of changes: timestamp, user, field changed, old and new values
Project statuses
| Status | Meaning |
|---|---|
active | Currently in progress; appears in all default views |
on_hold | Paused; included in On Hold filter |
closeout | Finishing up; included in Closeout filter |
archived | Completed or inactive; excluded from default views, requires explicit filter |