Jean-Luc Makiola ec7b696eb9
Some checks failed
CI / ci (push) Failing after 2m12s
Draw core-time from floret-kit via submodule + composite build
Phase 0 of the shared-kit plan: floret-kit is embedded as a git submodule and
wired in with Gradle includeBuild("floret-kit"), so the app depends on
de.jeanlucmakiola.floret:core-time and Gradle substitutes the local source
module (built from source — F-Droid-safe). Proves the submodule + composite-build
pipeline before any design layers move.

- Remove app copies of DayWindow + Instant date/time formatting (now in
  core-time); repoint imports to de.jeanlucmakiola.floret.time.
- DateTimeField gains an explicit import (was same-package).
- CI checkouts fetch submodules recursively.
- Clean composite build + unit tests + debug assemble green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 23:27:49 +02:00
2026-06-27 23:10:24 +02:00
2026-06-27 23:10:24 +02:00
2026-06-27 23:10:24 +02:00
2026-06-27 23:10:24 +02:00

Agendula

A modern Material 3 Expressive task app for Android.
Reads, writes, and reminds — on top of an existing tasks provider, with no own sync stack.

Android 10+ Kotlin + Compose Material 3 Expressive MIT License

Agendula is the task-list sibling to Calendula. Where Calendula is a pure front-end over Android's CalendarContract, Agendula is a pure front-end over the OpenTasks TaskContract provider — the store that DAVx5 (and SmoothSync, DecSync, …) syncs your CalDAV VTODO tasks into. No own database, no reinvented sync.

The name rhymes with its sibling on purpose: Agendula is agenda — Latin for “things to be done” — given Calendula's -ula ending. Calendula keeps your days; Agendula keeps your to-dos. (A Calendula flower head is botanically a cluster of many small florets — so the two apps are florets of one bloom.)

Status: data layer done, UI in progress. The full non-visual stack over the TaskContract provider — provider resolution, live-updating reads, writes, smart-list filtering, and a self-scheduled reminder engine — is built and unit-tested. The Material 3 Expressive screens are now being built on top, one at a time. See docs/ROADMAP.md for status, docs/ARCHITECTURE.md for how it's built, and docs/PLAN.md for the A-now-B-later design rationale.

Sync sources (by design)

Agendula works with anything that writes to the tasks provider — DAVx5 (CalDAV), SmoothSync, CalDAV-Sync, DecSync CC, or any Android sync adapter — because it builds on the provider, not on any one sync app. Google Tasks / Microsoft To Do are out of scope by design (proprietary; they would mean owning a sync stack). Open standards — CalDAV / iCalendar / DecSync — are the lane.

License

MIT — see LICENSE.

Description
A modern Material 3 Expressive task app for Android — sibling to Calendula, over the OpenTasks provider.
Readme MIT 724 KiB
v0.2.0 Latest
2026-06-27 19:27:17 +00:00
Languages
Kotlin 100%