Repository navigation
Simpastil 1.0.0
First public release.
Added
- Offline-first Android app for tracking medication and adherence for one or
more people, usable without an account or a server. - Phone and tablet support. Wide windows get a navigation rail, a two-pane Today
with a side column (this week, stock, coming up) and a dose-details panel, a
medication list beside its detail, master-detail Settings, and History with
calendar and trends. The phone has the same features in narrow-screen
layouts. - Today with six layouts (Focus deck, Timeline, Day planner, People lanes,
Action inbox, Daily journal), Taken now and Undo, and a low-stock notice. - Recorded missed doses. With Settings > Reminders > Record missed doses on
(the default), a scheduled dose nobody recorded is written to history as
missed once the delay has passed (an hour unless you choose another). It syncs to every device, can still be taken late or
skipped, and can be undone. Recorded misses count in adherence, appear in the
calendar and are included in exports. Doses with nothing recorded show as
Not recorded. Misses are recorded offline. A server that does not support
them leaves them unrecorded. - Medications list with color coding, compact rows with a stock strip, a detail
page with stock, the last 14 days and recent activity, a live preview in the
editor, stock counts and a supply calendar. - Routine editor for every-day, chosen-weekday and every-N-days routines, with a
day dial. - As-needed medications without routines, shown as ring cards on Today: hold to
record a dose, with undo and details, and a Focus shortcut that can be turned
off in Appearance. - History with a week strip, calendar and per-day records, a day streak,
adherence, time-of-day and as-needed charts, and stock changes. Days before a
person was on this phone are marked separately from days with no doses. - Reminders with a settings page that reports access, scheduling and delivery
status, a list of the next planned reminders derived on the device, and a
retry pass that repairs missing notifications. - Recorded by setting that attributes new doses to the primary profile, a typed
name or the person taking the dose. - Android home-screen widget for today's doses.
- Times shown on the phone's own 12-hour or 24-hour clock.
- Encrypted on-device storage, password-protected portable backups, and
PDF and CSV reports. - Light and dark themes, editable colors, a Reduce motion setting, and English
and Romanian translations. - Optional sync with a self-hosted server: PostgreSQL with row-level tenant
isolation, an admin console, API keys and email invitations, and TOTP
two-factor authentication for users and administrators. - Sync recovery: separate counts of queued, retrying, blocked, conflicting and
stranded changes, and a Fix sync problems screen with retry, use the server
version, keep my change, dismiss and re-download. - Server medication ledger: dose and stock changes are stored as append-only,
idempotent commands, including recorded misses. A new server starts in
compatibility mode; activating the ledger is a separate operator step (see
DEPLOYMENT.md). - The reviewed details of a medicine belong to the account instead of one
device. The amount taken per dose, the package strength, the form, and whether
somebody has reviewed the original dosage wording travel with the medicine and
reach every device, behind themedicationDetailscapability. A server
without it keeps working, and the reviews made while it could not store them
are handed over on the first sync after the upgrade. - Docker Compose deployment with nginx, provisioning and migration services,
and backup and restore scripts. - Signed release builds with a provenance manifest and checksums.
- Update notices. The app shows an "Update available" card on Today and in
Settings when a newer release is out. A phone with a server hears about it
from the server; a phone without one checks GitHub itself once a day, which
Settings > About can switch off. Nothing is installed automatically. - Updating through Obtainium is described in
docs/INSTALL-ANDROID.md.
Verify the download
The APK is signed with the certificate SHA-256 bf49f2aea7ae2715fdedc6bc0aa452bfe11cbaf120ddab87ae0b899e42fa6970. Each file has a .sha256 checksum, and release-manifest.json records the source commit, toolchains and server image digests.