2026-05-26 - 2026-06-26
Overview
39 pull requests merged by 1 user
Merged
#139 feat(libra): expense/income form UI fixes
Merged
#138 feat(libra): guide expense description toward categorization
Merged
#131 feat(events): handle free tickets in the purchase flow
Merged
#130 feat(hub): hide standalones not provisioned on this deploy
Merged
#128 feat(layout): re-enable "Back to hub" with a sticky sheet footer
Merged
#127 fix(events): collapse own-event draft + relay copy into one card
Merged
#116 fix(events): clarify scan-tickets "Remaining" stat as "Not scanned"
Merged
#114 feat(ui): UI tweaks round 3
Merged
#119 fix(events): keep event-detail ticket counts live after a purchase
Merged
#115 feat(events): calendar popup respects the selected category filter
Merged
#126 fix(events): publish bookmarks with monotonic created_at (#122)
Merged
#125 fix(events): key the events store by addressable coordinate (#121)
Merged
#124 chore(test): add vitest runner + smoke test
Merged
#113 style(events): frosted-glass calendar popup that shows the feed through it
Merged
#112 fix(events): decrement the live like count on un-like
Merged
#109 fix(wallet): stop double-deducting balance on outgoing payments
Merged
#111 feat(events): real-time favoriting + live like count + post-purchase refresh
Merged
#110 feat(events): calendar date-picker popup, remove calendar page, My Tickets filtering
Merged
#105 feat(ui): cosmetic tweaks — profile pencil, pills, search, ticket count, map icon, avatar trigger, no overlay animations
Merged
#104 feat(branding): per-app banner + per-brand default theme via brand.json
Merged
#103 fix(wallet): accept uppercase QR-scanned BOLT11 invoices on send
Merged
#102 feat(activities): event name on My tickets + organizer on cards
Merged
#91 feat(activities): UI tweaks across feed, detail, hosting, calendar, scan, shell
Merged
#100 feat(nix): lib.mkWebapp accepts extraEnv attr
Merged
#99 fix(nix): pin pnpm bits to flake's own nixpkgs
Merged
#98 feat(nix): flake.nix exposing lib.mkWebapp
Merged
#96 feat(branding): brand kit architecture (Phase 1)
Merged
#94 refactor(events): rename activities module to events + wire VITE_APP_NAME for per-deployment branding
Merged
#93 refactor(libra): redesign transactions list status + type encoding
Merged
#92 feat(libra): show voided transactions in standalone
Merged
#90 feat(webapp): add color scheme switcher with 7 palettes
Merged
#89 fix(activities): surface statsError on the door-scanner page
Merged
#88 feat(base): phase-2 bucket-B migration via signEventViaLnbits
Merged
#87 fix(activities): route ticket scanner through HTTP, not nostr-transport RPC
Merged
#84 chore(api): remove User.prvkey field + thread-through helpers (Q1.2 Option b)
Merged
#83 chore(activities): reroute CreateActivityDialog through TicketApiService.createEvent
Merged
#82 chore(base): delete nostr-metadata-service + retire webapp-side kind-0 broadcast paths
Merged
#81 chore(nostr-feed): delete legacy ScheduledEventService duplicate
Merged
#80 chore(nostr-feed): delete dead-code ReactionService + useReactions duplicates
7 issues closed from 1 user
Closed
#122 Use monotonic created_at when publishing replaceable events
Closed
#121 Key the events store by addressable coordinate (kind:pubkey:dtag), not bare d-tag
Closed
#86 Feature Request: When an app is pending, grey it out
Closed
#97 Add flake.nix exposing lib.mkWebapp
Closed
#95 Brand kit architecture: white-label PWA branding
Closed
#79 chore: delete legacy ScheduledEventService (duplicate of TaskService)
Closed
#78 chore: consolidate duplicate ReactionService (base/ vs nostr-feed/)
24 issues created by 1 user
Opened
#78 chore: consolidate duplicate ReactionService (base/ vs nostr-feed/)
Opened
#79 chore: delete legacy ScheduledEventService (duplicate of TaskService)
Opened
#85 Feature Request: Ability to manually register someone if they've forgotten their ticket
Opened
#86 Feature Request: When an app is pending, grey it out
Opened
#95 Brand kit architecture: white-label PWA branding
Opened
#97 Add flake.nix exposing lib.mkWebapp
Opened
#101 Auto-save profile picture on selection (don't require Update Profile click)
Opened
#106 Activities: free (0-price) tickets attempt an invalid zero-amount invoice
Opened
#107 Activities: support multiple photos on event creation (like market)
Opened
#108 Activities: keywords/tags field on event creation (publish as NIP-52 't' tags)
Opened
#117 Activities: show ticket buyer's username + npub in the hoster scan list
Opened
#118 Explore: collect buyer email at ticket purchase (needs LNbits email/SMTP server)
Opened
#120 Add image cropping to uploads (profile, event, …)
Opened
#121 Key the events store by addressable coordinate (kind:pubkey:dtag), not bare d-tag
Opened
#122 Use monotonic created_at when publishing replaceable events
Opened
#123 Batch nostr subscriptions / profile fetches (subscription grouping)
Opened
#129 Hub: hide standalones disabled on deploy instead of greying them out
Opened
#132 Hub: wire the inactive (deployed-but-greyed) app state end-to-end
Opened
#133 Show an offline/server-unreachable banner so actions don't fail silently
Opened
#134 Cash-on-arrival payment method for event tickets
Opened
#135 Rework or remove the "pending" ticket state
Opened
#136 Event notifications: subscriptions, reminders, updates (infra)
Opened
#137 libra: improve expense description helper text to guide categorization (and add an "Other" account)
Opened
#140 libra: i18n the expense form (AddExpense.vue) to match the income form
7 unresolved conversations
Open
#31
Forum: implement Spaces (NIP-72 communities)
Open
#3
Feature: Due Dates for Persistent Tasks
Open
#2
Feature: PIN security for outgoing wallet payments
Open
#1
Feature: Persistent Task List (Work Orders)
Open
#21
Activities: Category badge shows non-category hashtags (e.g. "OrangePillApp")
Open
#29
Consider keeping CreateActivityDialog for unticketed/unapproved community events
Open
#5
Feature: Create invoices in fiat currency (EUR, USD, etc.)