Skip to content

Languages and notifications

The “Language / Язык” selector is available on the login page and in the app’s top bar. Russian is the initial language. A cookie remembers your choice for one year, across login, navigation and reloads. Your titles, notes and documents remain in their original language.

The bell displays the number of unread notifications. Open it to see recent events, or choose “All notifications” for the full history. Mark one or all notifications as read; the read state is saved in your account. Escape closes the panel and returns focus to the bell.

Task changes notify the other active family members. The database checks task and milestone deadlines every 15 minutes, starting three days before the due date and creating a separate event when overdue. Repeated checks do not create duplicate events. Completed, paused and deleted records are excluded. The family’s time zone determines the calendar day.

Notifications arrive in the app through Supabase Realtime. Their interface text is translated when viewed, including past events. Email is used for sign-in; email notification delivery is not enabled.

Catalogs live in apps/web/messages/ru.json and en.json. Tests check key parity, ICU templates and plural forms. Add every new label to both catalogs. A missing translation causes an error.

The notifications table lets members read only their own events and update only the read timestamp. A trigger and the foliovera-deadline-notifications job generate events. Clients cannot create notifications.