No description
  • Python 82%
  • Vue 9.4%
  • JavaScript 8%
  • Makefile 0.6%
Find a file
Padreug daf352c136 bump version to 0.0.1 for first tagged release
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 19:47:33 +02:00
nostr add Nostr publishing and bidirectional sync 2026-05-13 11:38:42 +02:00
static add API routes, admin UI, and SPA bootstrap 2026-05-13 11:43:59 +02:00
.gitignore scaffold tasks extension 2026-05-13 11:34:04 +02:00
__init__.py scaffold tasks extension 2026-05-13 11:34:04 +02:00
config.json bump version to 0.0.1 for first tagged release 2026-05-17 19:47:33 +02:00
crud.py add models, migrations, and CRUD 2026-05-13 11:36:13 +02:00
description.md scaffold tasks extension 2026-05-13 11:34:04 +02:00
LICENSE scaffold tasks extension 2026-05-13 11:34:04 +02:00
Makefile scaffold tasks extension 2026-05-13 11:34:04 +02:00
manifest.json scaffold tasks extension 2026-05-13 11:34:04 +02:00
migrations.py make tasks migration idempotent and fix sqlite index syntax 2026-05-13 13:33:35 +02:00
models.py add models, migrations, and CRUD 2026-05-13 11:36:13 +02:00
nostr_hooks.py add Nostr publishing and bidirectional sync 2026-05-13 11:38:42 +02:00
nostr_publisher.py add Nostr publishing and bidirectional sync 2026-05-13 11:38:42 +02:00
nostr_sync.py add Nostr publishing and bidirectional sync 2026-05-13 11:38:42 +02:00
pyproject.toml scaffold tasks extension 2026-05-13 11:34:04 +02:00
README.md scaffold tasks extension 2026-05-13 11:34:04 +02:00
toc.md scaffold tasks extension 2026-05-13 11:34:04 +02:00
views.py add API routes, admin UI, and SPA bootstrap 2026-05-13 11:43:59 +02:00
views_api.py add API routes, admin UI, and SPA bootstrap 2026-05-13 11:43:59 +02:00

Tasks — LNbits extension

LNbits-side counterpart to the webapp tasks module. Stores and syncs recurring tasks / chores as Nostr NIP-52 calendar events.

Data model

  • Kind 31922 — task (parameterized replaceable). Tagged with event-type: task so activities consumers can filter it out (see aiolabs/webapp#25 for context).
  • Kind 31925 — task completion / RSVP-ish status update. Carries task-status (claimed, in-progress, completed, blocked, cancelled), an optional occurrence date for recurring tasks, and completed_at when finalized.
  • Kind 5 — NIP-09 deletions for the above.

Recurrence is encoded as task-only tags: recurrence (daily | weekly), recurrence-day (weekday name for weekly), recurrence-end (YYYY-MM-DD).

What this extension does

  • Caches tasks and completions in a local sqlite/postgres schema.
  • Publishes mutations to Nostr via the nostrclient extension's internal WebSocket bridge.
  • Subscribes to inbound 31922/31925 events filtered to event-type=task so the local DB stays in sync with the relay set.

Status

Early scaffold. Mirrors events' extension layout. See ~/dev/webapp/src/modules/tasks/ for the canonical client-side model.