Changelog
What’s new in Unitae. Each release groups the work done on a given day.
View full commit history on GitHub →2026-08-31
Hour credits for pioneers
The secretary can now grant an approved hour credit (pioneer school, special assignments…) on a monthly report. Credits count toward the pioneer's goal on the pioneers board — shown transparently as “incl. X h credit” — so nobody reads as behind when they are not. Also new: a part can be sent to its speaker straight from the programme's phone view.
2026-08-30
Your congregation's organigram
Map how responsibilities are organised: services and teams under each service committee post, personal roles like the coordinator with a proper handover when the seat changes hands, and a role matrix to see and change who does what at a glance. The chart also publishes to the information board as a clean printable sheet, with a PDF download.
2026-08-23
A refreshed Unitae, head to toe
Complete redesign: a warmer, calmer interface, bottom-tab navigation on mobile, a richer dashboard, clearer multi-room programmes, and a sharper PDF viewer with pinch-to-zoom. Also new: configurable part types with per-assignment share messages — send someone their part straight through the phone's share sheet — carried through templates, programmes, and congregation export.
2026-08-20
Email notifications you can rely on
Delivery problems with notification emails are now surfaced instead of silently dropped, so a failed send can be retried rather than lost. Under the hood: dependency updates and a round of housekeeping across the codebase.
2026-08-04
The pioneer board document keeps itself current
The information board's pioneer document now follows enrolments automatically: enrol a pioneer or conclude an auxiliary month and the published list updates itself — nothing to re-edit, nothing to forget.
2026-08-03
Pioneer service, tracked across the year
Pioneer enrolments — standing appointments or a single auxiliary month — are now recorded explicitly, and a dedicated Pioneers view follows the service year: it shows how the congregation’s hours are progressing against the target and keeps each pioneer’s progress toward their own goal in view, so encouragement and practical help arrive in good time rather than at year-end. Yearly goals per pioneer type are editable in settings.
2026-08-02
Emergency-preparedness information
Each member profile can now hold the details a congregation needs to react quickly in a crisis: whether an advance-directive card and a survival backpack are ready, and a short list of emergency contacts. Print a whole-congregation or per-group roster in one click, and record a contact email on a profile without creating a login. Group responsibles can keep their own group’s information up to date.
2026-08-01
Command palette
Press Cmd+K (or Ctrl+K) to jump to any page or action instantly. The palette is permission-aware, so it only ever offers the pages you’re allowed to open.
2026-07-26
A grouped settings hub
Settings are reorganised into a single hub that gathers users, roles, congregation preferences, pioneer goals, data transfer and the audit log in one place — so administrators find what they configure without hunting through the app.
2026-07-25
Two-factor authentication
Members can now protect their account with time-based one-time-password (TOTP) two-factor authentication, using any standard authenticator app. Once enabled, a six-digit code is asked at each sign-in on top of the password, and an administrator can reset it if someone loses their device.
2026-07-20
Events and templates, unified
Programme models are renamed to a clearer Events and Templates vocabulary across the app, and event kinds are merged into templates so each template carries its own colour and defaults. Define custom per-part speaker and reader labels, delete custom templates you no longer use, and save system-template colours. Meeting-part role labels now display correctly on the dashboard’s next-meeting card.
2026-07-19
Assignment cadence strip and polish
The assignment info card is reworked around a cadence strip that shows each publisher’s rhythm of past parts at a glance, with part duration editable straight from the assign-part sheet. Assignment notifications now respect members who have left, SMTP failures surface instead of failing silently, suspended congregations are gated, and every event edit is recorded in the audit trail.
2026-07-16
Draft and released events
Programme events now follow a draft-and-released workflow: build a schedule privately, then publish it when ready. Absence and assignment conflicts surface across the whole app, not just the next meeting, and you’re returned to the page you intended after re-logging in. Bulk-select checkboxes moved inside the event cards.
2026-07-15
Faster programme editing and accurate inactivity
Section and track fields on programme parts autocomplete from what you’ve already used. Inactive publisher status is now computed from the missed-report streak rather than the current date, and inactive publishers are excluded from the header’s irregular count.
2026-07-14
Activity filters, richer statistics, split tool
The activity table filters by name, group, status, and type, with a configurable export dialog. The territory statistics page is restructured into four scoped zones with a sticky filter bar, a terrain section, and territory linking. A new map-driven split tool creates territories directly on the map (now powered by Terra Draw), and assignees are emailed automatically when their parts change.
2026-07-13
Notification system overhaul
Notifications are rebuilt around a single delivery layer, with feature-owned definitions registered through a plugin registry — making every email consistent and easier to extend.
2026-07-11
Territory edit-map impact preview
Editing a territory on the map now shows a live impact block summarising what each marker change will do — add, remove, or reassign — with tighter filtering of what’s displayed, so you can see the effect of a reassignment before you save.
2026-06-07
Unified territory search with proximity ranking
A single search box across every territory list matches publisher names, territory numbers, building addresses, postal codes, and neighbourhoods — case- and accent-insensitive. With a Google Maps key configured, type an address and results rank by distance from that point. Personal territory pages now show the attribution kind, and publishers are automatically flagged inactive after six consecutive missed reports.
2026-05-17
Time zones, template hours, date filtering
Congregation-aware time zones, configurable meeting hours per template, and a date filter on the programmes list.
2026-05-16
Programme PDF and statistics polish
Improvements to the programme PDF export and a consistency pass across the territory statistics page.
2026-05-14
Display board group rosters
Dynamic group rosters on the display board now include group leaders and render last names in uppercase for readability.
2026-05-12
Day-off awareness across the schedule
Fixed the dashboard “next meeting” widget surfacing days off as the next event — it now skips them and shows the actual next meeting. Day-off conflicts are also flagged on every future assignment, not just the next one. Programme part eligibility resolves correctly when responsibilities come from both built-in and custom roles.
2026-05-11
Members and accounts, now separate
Major refactor splitting the User model into Member (the person — appears in publishers, programmes and schedules) and UserAccount (the login). Members can be tracked and assigned without ever creating an account. A new AbsenceViewer permission grants read-only access to absences. Permissions now resolve consistently from built-in roles, custom roles and direct grants. Background workers get isolated Redis connections, and congregation imports have more headroom before timing out.
2026-05-10
Self-hosting hardening — full data transfer & RLS coverage
The data transfer export now includes the 11 feature tables that were previously skipped, so self-hosted congregations can move between instances without losing anything. Added missing row-level security policies on board document versions and dynamic document settings. The board PDF viewer surfaces error details to make support easier, and programme parts reorder uses absolute URLs to work behind a reverse proxy.
2026-05-09
Role-gated board sections & programme assignees
Information board sections can now be hidden per role, and a new BoardViewer permission grants read-only access without manage rights. Uploaders get a clear path to add documents with stricter gates on what they can change afterwards. On programmes, parts and services can restrict who is eligible to be assigned, based on role. Landscape PDFs auto-fit the viewer and gain dedicated zoom controls.
2026-05-08
Custom roles & assignments
Define your own roles in the congregation alongside the built-in ones, and assign them to members from a single settings page. Built on a new Role domain layer that keeps built-in roles in sync across upgrades, with permission descriptions sourced entirely from translations. Programme responsibles can now manage the programmes they are responsible for. Publishers search input stays visible when no results match, and the activity export no longer fails inside the RLS transaction.
2026-05-04
Assembly map — zones & perimeter editor
New assembly map editor lets admins define zones and the congregation perimeter through a dedicated UI, replacing legacy CSV inputs, hardcoded polygons, and raw GeoJSON imports. Tighter integration with the territory card overlays and simpler territory settings.
2026-05-03
Map overlays & calendar feed
Customizable card map overlays per congregation: admins can draw or import GeoJSON shapes for territory PDFs, replacing hardcoded boundaries. New personal iCalendar feed — members can subscribe to their own programme assignments and absences from any calendar app via a private authenticated URL. Static map viewport auto-fits the territory marker and overlays. Critical PDF rendering fixes for fonts and the map marker asset.
2026-05-02
Map-driven territory editing
When Google Maps is configured, the territory edit page promotes the map to the primary editing surface — click markers to add, remove, or reassign entrances across territories with atomic save and a two-step reassignment confirmation. New external speaker registry. Harmonized person dropdowns with built-in search and locale-aware sorting.
2026-04-30
Audit trail & polish
New audit trail records who changed what across the application. External speakers now appear on the live programme display board. Stronger test coverage across unit, integration, and end-to-end suites. Visual polish on padding, navigation, and sidebar.
2026-04-29
Server-side PDFs & programme UX
PDF generation moves from the browser to server-side routes for reliability. Programme UX overhaul: list redesign, bulk delete, event kind management. New territory options settings. External speakers can now be assigned to programme parts. Multi-track ordering and gender-aware publisher form fixes.
2026-04-28
Self-hosting fixes & documentation
Self-hosting setup fixes: single-tenant seed reuse, reliable base URL handling, init-db role attributes, and missing env vars added. Resolved error boundary alignment, password invalidation route, and a client-side PDF crash. Cron jobs documentation rewritten and content directory permissions fixed. Comprehensive documentation audit.
2026-04-26
Programmes, navigation & settings redesign
Redesigned programme export and display board with flexible per-template configuration. Revamped event and template editing pages. Polished sidebar navigation with search and collapsible sections. Redesigned settings section with new pages. Better error handling across the application.
2026-04-25
Board redesign, days off & security
Redesigned display board and days-off admin pages. Improved unsaved-changes guards across all forms. Non-superuser database role for stricter RLS enforcement. Dedicated Docker images for runtime, worker, and migrations.
2026-04-24
Notifications, export/import & dashboard
New notification system with debounce, cancellation, and user preferences. Congregation data export/import for cross-instance migration. Redesigned dashboard homepage. Dependency upgrades and onboarding fixes.
2026-04-22
UX improvements
Comprehensive UX polish to make Unitae feel like a native app — smoother navigation, better feedback, and refined interactions.
2026-04-18
Personal dashboard & email verification
New personalized dashboard homepage showing your territories, upcoming assignments, recent documents, and absences at a glance. Email verification for new accounts. Configurable email sender address.
2026-04-16
Dynamic board documents & PDF viewer
The information board now generates dynamic documents automatically: field service groups, pioneer lists, and programme views that update when data changes. In-app PDF viewer with cross-device rendering. Read tracking, document versioning, and expiration notifications.
2026-04-15
Board UX & internationalization
Drag-and-drop document reordering, search, thumbnail previews, and bulk operations for the information board. Full internationalization: the interface is now available in French and English.
2026-04-13
Programme management
New programme management system: define recurring meeting templates, assign speakers and service roles, detect conflicts with days off, and export polished PDFs. Parallel parts support for simultaneous rooms.
2026-04-12
GDPR compliance & audit logging
GDPR compliance foundation: structured audit logging for sensitive operations, PII redaction in logs, data retention cleanup, user anonymization, consent management, and data export tools.
2026-04-11
Row-Level Security & documentation
Replaced Prisma extension scoping with PostgreSQL Row-Level Security for strict data isolation per congregation. Added attribution history to publisher and territory views. Comprehensive product and technical documentation.
2026-04-10
AGPL-3.0 license & tenant isolation
Switched from MIT to AGPL-3.0 license to protect the open-source community. Hardened tenant data isolation to prevent any cross-congregation data leaks.
2026-04-09
Territory statistics & export fixes
Expanded territory statistics page with coverage rates, overdue tracking, and monthly trends. Fixed bugs in Excel, PDF, and S-13 export services. Trial expiration enforcement with suspension page.
2026-04-08
Redesign & rebranding
Complete visual redesign and rebranding for the next version of Unitae. New color palette, typography, and component library.
2025-09-07
Initial open-source release
First public release of Unitae as open-source software. Core features: territory management, publisher profiles, activity reports, and basic congregation settings.