Skip to content

Calendar and lists ​

Calendar ​

  • Each person has a colour; an event can belong to several people.
  • Events repeat daily, weekly, monthly or yearly, and can carry reminders and notes.
  • Norwegian public holidays and school breaks are shown automatically.
  • Subscribe to other calendars (school, sports club) with an ICS link. They refresh every hour.
  • Share the family calendar to Google, Apple or Outlook calendars from More → Share calendar. Links expire, can show only "busy", and can be revoked at any time.

Family time is always Europe/Oslo, wherever your phone is.

Event dates use YYYY-MM-DD and times use HH:MM in Europe/Oslo, independent of the device's time zone. All-day events start at Oslo midnight and use an exclusive end date. When a clock repeats at the autumn daylight-saving change, new times choose the earlier instant; clocks skipped in spring are rejected. Unchanged timestamps are preserved when editing.

Recurring events can only be edited or deleted as a whole series; the editor shows the series' original first date. Updates and deletes use the version opened in the editor. If another device changed the event, the server rejects the stale request and keeps the draft so it can be reviewed before reopening.

Lists ​

Shopping lists, to-do lists and packing lists, shared with the family or private to you.

  • Aisle sorting: shopping items are grouped by store section as you add them.
  • Suggestions: one-tap suggestions from what you usually buy.
  • From the week's meals: adds ingredients from the coming week's planned recipes; duplicates are merged and items already on the list are skipped.
  • Pin the lists you use most; ticked-off items can be cleared in one go.
  • Tap the circle to tick an item off. Tap its name or pencil to edit the name and quantity, or delete that item. Deletion asks for confirmation.

Offline ​

The app keeps the last version of everything you've opened, so the calendar, lists and the rest still show without a connection; a small "Offline" badge appears at the top.

While offline you can add, tick off, edit and remove list items. You can also create, edit and delete ordinary calendar events and recurring series after opening the family calendar online. Recurring edits and deletion affect the entire series, using its original first date. The app caches series originals during online calendar refresh; an occurrence cannot be edited offline if its original is unavailable. Cached date ranges show the pending occurrences using the same Oslo time and daylight-saving rules as the server. Conflicting series changes stay in sync review rather than overwriting a newer version.

Subscribed calendars, holidays and other generated calendar entries must be changed at their source. Editing or deleting a single occurrence separately is not supported.

Text-only family messages can be sent, edited and deleted offline. Cached messages can also be edited or deleted, including changing an attachment's caption. Photos, files and messages with a new attachment can be queued offline after opening the family membership and destination album or folder online. The app captures the selected bytes on this device first; uploads and message delivery still require a connection and run only while the app is active. Pending binary uploads are limited to 20 items and 100 MiB total. Retry resumes the saved upload ticket and completion checkpoint; an expired completion must be discarded and selected again.

Binary data is stored separately from the ordinary offline family cache: in IndexedDB on web and in the app's cache directory on iOS and Android (not included in iCloud or Google device backups). Browser storage can be evicted or run out of quota, and native cache files can be purged by the operating system; keep another copy of important originals. Pending upload data is removed on sign-out or when family/member access is revoked. The operating system does not guarantee background upload or delivery, so reopen the app with a connection to finish pending work.

To replace an existing photo or document, open its editor and choose Replace original file, then save. Replacement uses the same durable queue and keeps the record's identity, name, caption and favourite status. Metadata edits are a separate save. The original remains available until the new upload is verified. A concurrent replacement is rejected instead of overwriting the newer file: discard the conflicting queue entry, refresh, and select the replacement again. Deleted targets are never recreated. Superseded objects are queued for cleanup after outstanding download links and upload tickets have expired, including the upload safety grace period. There is no version-history or undo interface.

After opening their data online, you can also create, edit and delete routines, recipes, planned meals, contacts, budget accounts, budget categories, manual expenses and special days offline. Cached family membership and record versions are required for edits and deletions. Special-day attendees and linked lists must be present in the cached family roster and visible list cache. Linked meal and budget records replay after their recipe, account or category. Budget totals are calculated from a complete cached expense list while changes are pending; otherwise the total is hidden.

Changes are saved on the device and replayed in order when the connection returns. Stable creation identifiers prevent duplicate records after a lost response. A rejected change stays in sync review, and replay pauses behind it. Retry is available for rejections that can be resolved without changing the draft. A version conflict preserves your draft without overwriting the newer record: copy anything you need, discard the conflicting draft, reopen the current record and make the change again. Discard also removes later queued changes to the same record and dependent queued records; it does not undo anything already accepted by the server.

You can send ingredients from a meal or the selected week to a shopping list offline after opening meals, recipes and that list online. This captures the ingredients currently on the device, merges repeated ingredients and skips matching open items. Later recipe edits do not change already queued shopping items. Each item replays with a stable identifier; sync review handles rejected items. Other devices can still add the same ingredient concurrently. Review any failed family changes before generating more items.

Recipe links can also be saved offline. They appear as pending imports, without invented ingredients or instructions. On reconnect the server fetches the page through its existing public-address checks and creates the recipe once per queued identifier. The page content is captured at replay time, so it may have changed since the link was saved. Failed imports stay in sync review, where you can retry or discard them. Pending links are cleared on sign-out or loss of family access, like other queued changes.

After opening kid mode online, you can also complete the selected child's routines for the current Oslo day while offline. Checkmarks and weekly stars update on the device. Replay preserves that day even after midnight and verifies the routine's schedule, assignee and version. A stale board must be refreshed online before recording new completions; a routine with a queued edit must sync first. Rejected completions remove their optimistic star and remain in sync review, available after leaving kid mode. Future dates are never accepted. Recipe imports and media transfers can be queued offline but need a connection to complete. Shopping generation uses cached meals and recipes. Location sharing is disabled. Only manual budget expenses are included; offline support does not change payment handling.

The production HTTPS web app downloads its static shell for offline reload after a successful online visit. Only application code and static assets enter that shell cache; family data uses the separate device cache and is cleared on sign-out. Browsers can evict local storage, and only previously opened data is available offline. Development builds do not install the offline shell.

Saved data stays on the device only and is removed when you sign out.

Widgets (iPhone and Android) ​

Add I dag / Today (today's events, pickups and dinner) or Handleliste / Shopping (what's left on your pinned shopping list) from the home-screen widget gallery. The app updates their snapshot when it opens, returns to the foreground or is backgrounded; iOS and Android control when the widget redraws. Signing out or switching family clears their content.

Widgets require a native build; Expo Go and the web app do not provide them. Android keeps its source snapshot in memory: after a cold background start, the widget asks you to open the app rather than loading family data from storage. Android app backups are disabled. Native installation, appearance and lifecycle behavior still require device validation before release.

Fellesly: the family, in one place.