June 17, 2026 Release Notes
Dark mode graduates from beta and is now available to everyone. Alongside it: the beta rate-sheet manager gains full create, rename, and delete; imported records show where they came from; company todos send email reminders; and the REST API picks up six new resources. π
π Dark mode is out of betaβ
Dark mode is now available to everyone β it's no longer limited to the beta. Open your profile's Appearance setting to switch between the light and dark themes; your choice saves to your account and applies across the app on every device you sign in from.
The surfaces refined during the beta all follow your chosen theme now: forms and the form builder, native and searchable dropdowns, filter fields, comment editors, data tables and Tabulate grids, and charts.

π΅ Create and manage rate sheets (beta)β
Admins in the beta can now create, rename, and delete rate sheets under Settings β not just edit rates on a single default sheet. The Rate Sheets page lists every sheet with its rate count, pins the company default at the top, and tags it with a Default badge. New sheets start pre-filled with the standard baseline rates, so you're naming and adjusting rather than building from an empty page.
Deleting a sheet is guarded so you can't break payroll: the default sheet, a sheet that's assigned to a worker or position, or a sheet whose rates have already been used in processed payroll can't be removed β and the remove button explains why it's unavailable.

π·οΈ See where imported records came fromβ
Time cards, paystubs, and time entries that arrived through an import now carry an Imported from β¦ badge β for example, Imported from Aggregate Time Import Β· Jun 14, 2026 β that links back to the import it came from. It's an at-a-glance way to tell whether a record was entered by hand or brought in by an import, and to trace it back to its source.

β° Todo reminders by emailβ
Setting or changing the due date on a company todo now schedules a reminder automatically. When the todo is due, the assigned person gets an email with the todo's name, due date, and a link to open it β so todos don't slip when someone isn't already in the app.
π API additionsβ
- Billing user counts β read monthly PWA seat counts per project (distinct workers with PWA-tracked time), the same figures behind the billing summary and its CSV export. Filter by month or project.
- Apprenticeship program management β create and update apprenticeship programs, occupations, wage schedules, and pay periods, and enroll apprentices. This is the write side that complements the existing read endpoints.
- Time-card approvals β record manager and worker approvals on a time card, and read each card's manager and worker approval status from the time cards endpoint.
- Time-entry manager approvals β record manager approvals at the individual time-entry level, and read per-entry approval state.
- Prior-period adjustments β read back-pay and retroactive payroll corrections on a time card (read-only for now), filterable by adjustment type or rationale.
- Wage determination labor rates β read a wage determination's full labor-rate table (each classification's base wage and fringe), filterable by classification.
π οΈ Fixesβ
- Pay tabulate week ranges now render in the pay schedule's own time zone on the Job and Project Pay grids β a MondayβSunday week no longer displays as an eight-day MondayβMonday span. This was a display-only correction; the calculated obligations were always right.
A practical release: more control over rate sheets, clearer provenance on imported records, and a wider API surface. As always, reach out if you have any questions!
The DSPTCH Team
