Commit Graph
128 Commits
Author SHA1 Message Date
raucao faea3d26cd Use nevent with relay hints for copying photo event ID
CI / Lint (pull_request) Successful in 47s
CI / Test (pull_request) Successful in 1m4s
Release Drafter / Update release notes draft (pull_request) Successful in 5s
Also adds provenance for newly uploaded photos

refs #46
2026-09-18 11:51:00 +02:00
raucao b295636799 Show Nearby search in search input field
CI / Lint (pull_request) Successful in 1m8s
CI / Test (pull_request) Successful in 1m28s
Release Drafter / Update release notes draft (pull_request) Successful in 4s
Add a special Nearby category, show it in the input field, and make it
dismissable via X button (same as other searches)
2026-09-17 23:38:50 +02:00
raucao a41ad8c99c Retry unresolved profiles
CI / Lint (pull_request) Successful in 1m14s
CI / Test (pull_request) Successful in 1m33s
Release Drafter / Update release notes draft (pull_request) Successful in 5s
For now just with the same relays, in the future maybe with an extended
list
2026-09-17 20:20:23 +02:00
raucao 05160eb5f1 Prevent activity duplicates when loading more items
CI / Lint (pull_request) Successful in 1m3s
CI / Test (pull_request) Successful in 1m20s
Release Drafter / Update release notes draft (pull_request) Successful in 6s
2026-09-03 13:51:15 -06:00
raucao 9d928217ca Preserve scroll position when no Nostr connected
CI / Lint (pull_request) Successful in 1m34s
CI / Test (pull_request) Successful in 59s
2026-09-03 08:25:03 -06:00
raucao 1b60915e3f Load activity items from cache immediately, network later
Considerably improves time to first render, and usually there isn't
anything more to load once having opened the cache before in the same
session
2026-09-03 08:16:24 -06:00
raucao 35aa3c950f Auto-load older activities
Both initially (if not enough recent ones are available), and when
scrolling to the end of an activity timeline
2026-09-02 18:36:58 -06:00
raucao a4a8d123d3 Split Activity timeline in Home and Explore
Adds a new Explore timeline with contributions from anyone on trusted
relays.
2026-09-02 15:06:10 -06:00
raucao 92c6190d28 Add followee's photo uploads to Activity timeline 2026-09-02 11:23:34 -06:00
raucao 919c0335eb Warm up the OSM cache from batch fetches 2026-08-29 15:13:57 -06:00
raucao d0252309c4 Fix delay when opening places without RS connected 2026-08-29 15:13:46 -06:00
raucao c7fc98d4bd Add place names to Activity timeline
Create a new place name resolver service with the logic previously used
for My Contributions only
2026-08-29 14:34:56 -06:00
raucao 3f6bd5267f WIP Add activity timeline route/sidebar showing incoming zaps 2026-08-29 12:01:48 -06:00
raucao 2ae9a78f5d Fix kind 5 deletion provenance cleanup, add nostr-data tests
Listen to the store's deletes stream instead of a timeline (kind 5
events never enter the event database), and unsubscribe the
subscription on destroy. Add unit tests for relay getters,
provenance handling, and trust partitioning.
2026-08-27 10:32:35 -06:00
raucao 572213eda2 Trust content from followed pubkeys
CI / Lint (pull_request) Successful in 1m18s
CI / Test (pull_request) Successful in 1m35s
Release Drafter / Update release notes draft (pull_request) Successful in 5s
Fetch kind 3 and trust content from any contained pubkeys on all read
relays
2026-08-27 09:48:58 -06:00
raucao ac7a4eb262 Fetch kind 3 follow list for connected user 2026-08-27 08:40:21 -06:00
raucao 474bc8cd63 Add relay trust settings, provenance cache
By default, only automatically show photos for relays marked as trusted
(which by default is the required read relay). For other relays, only
show the user's own events by default, but allow showing all events via
link in place details (drawer bottom)
2026-08-26 18:06:06 -06:00
raucao 2746ec035d Add media server selection to Nostr settings
CI / Lint (pull_request) Successful in 1m3s
CI / Test (pull_request) Successful in 1m16s
Release Drafter / Update release notes draft (pull_request) Successful in 5s
Also, hide the fallback option when there's no server to fall back to
2026-08-21 11:27:03 -06:00
raucao 20bac8ae31 Load zap receipts for loaded photo events 2026-08-20 13:14:15 -06:00
raucao 2869ed6677 Subscribe to zap receipt when zapping, show success for external
payment
2026-08-20 12:24:54 -06:00
raucao 644d6a2856 WIP Allow users to zap photos
Working, basic implementation of zaps for photos. No fetching or
rendering of receipts yet.
2026-08-20 10:34:10 -06:00
raucao bfcf855020 Render data and uploader name for current photo in gallery
CI / Lint (pull_request) Successful in 1m0s
CI / Test (pull_request) Successful in 1m12s
Release Drafter / Update release notes draft (pull_request) Successful in 5s
2026-08-19 18:05:52 -06:00
raucao 0f0874a07a Fetch, cache, and update profile data 2026-08-19 15:11:31 -06:00
raucao 1de276fcc8 Fix OSM data refreshes not immediately rendering
CI / Test (pull_request) Failing after 8s
CI / Lint (pull_request) Failing after 12s
2026-08-19 11:01:42 -06:00
raucao 61242420d1 Migrate OSM cache to localForage/IndexedDB
We don't want to hit limits with localStorage, and it's non-blocking
2026-08-19 10:39:58 -06:00
raucao b9e5213c27 Add timeline/history for signed-in user's contributions
CI / Lint (pull_request) Successful in 53s
CI / Test (pull_request) Successful in 1m6s
2026-08-18 16:21:31 -06:00
raucao ce53d42581 Use our own relay as default Nostr Connect relay
CI / Lint (pull_request) Successful in 55s
CI / Test (pull_request) Successful in 1m5s
Release Drafter / Update release notes draft (pull_request) Successful in 5s
Fixes the current default connect relay being offline (and having been
down for weeks now)
2026-08-07 12:04:57 -06:00
raucao 1b185d1033 Upgrade lint and dev tooling to latest majors
CI / Test (pull_request) Successful in 1m4s
CI / Lint (pull_request) Successful in 1m12s
Release Drafter / Update release notes draft (pull_request) Successful in 21s
Bump eslint to ^10, @eslint/js to ^10, eslint-plugin-ember to ^13,
eslint-plugin-n to ^18, globals to ^17, stylelint to ^17,
stylelint-config-standard to ^40, sinon to ^22, and concurrently
to ^10.

Fix three new lint violations surfaced by the newer versions:
- Remove redundant padding-left after padding shorthand (stylelint 17)
- Remove useless null assignment before find() (eslint 10
  no-useless-assignment)
- Attach caught error as cause on rethrown Error (eslint 10
  preserve-caught-error)
2026-08-06 16:40:54 -05:00
raucao 4d4ed8c1ea Upgrade to oauth2-pkce 3
Bump oauth2-pkce from ^2.1.3 to ^3.0.0. In v3, getTokens() throws
ErrorAccessTokenExpired when the token has expired and no
onAccessTokenExpiry handler is configured. Add the handler to the
OSM auth client config so it automatically refreshes via the refresh
token instead of throwing
2026-08-06 16:35:11 -05:00
raucao a6576fcda8 Migrate to applesauce v6
Remove applesauce-factory (deleted in v6) and bump applesauce-core,
applesauce-relay, and applesauce-signers to ^6.2.x. Rewrite all
EventFactory usage from the removed constructor API
(`new EventFactory({ signer }).sign(template)`) to the new chainable
builder (`EventFactory.fromKind(k).content(...).sign(signer)`).

Remove `relay.eoseTimeout` overrides in nostr-auth — the eoseTimeout
property was removed in v6; NostrConnectSigner now uses persistent
subscriptions that don't rely on EOSE-based timeouts.

Update photo-gallery test mock to use 64-char hex pubkeys/ids/sigs
because v6's sign() validates event structure via validateEvent().

Also includes safe semver bumps to all other dependencies.
2026-08-06 16:13:24 -05:00
raucao ad9c489102 Refactor app menu, add place lists
Unify sidebar, make everything route-based
2026-06-30 13:28:48 +02:00
raucao 76897c9e69 Turn default relays into required relays
CI / Lint (pull_request) Failing after 31s
CI / Test (pull_request) Successful in 55s
2026-06-07 16:21:26 +04:00
raucao 4390b7d699 Add settings for experimental features
CI / Lint (pull_request) Successful in 31s
CI / Test (pull_request) Successful in 59s
2026-05-13 11:57:41 +02:00
raucao 14827fce3e Delete own photos
CI / Lint (pull_request) Successful in 30s
CI / Test (pull_request) Failing after 57s
2026-05-05 12:07:33 +02:00
raucao 59c447fe1f Hide quick-search pills on low zoom levels
CI / Lint (pull_request) Successful in 30s
CI / Test (pull_request) Successful in 56s
Release Drafter / Update release notes draft (pull_request) Successful in 7s
2026-05-05 07:10:28 +02:00
raucao d2eb888dcf Keep search results, only hide sidebar when closed 2026-04-27 14:37:19 +01:00
raucao a0b4a4b3f3 Show toast notification when adding RS account 2026-04-27 12:47:33 +01:00
raucao 3e831a7686 Enable relay pings
This should re-establish relay connections when PWAs are being woken up
after background sleep
2026-04-25 11:08:55 +01:00
raucao b4a70233cf Show detailed photo upload status
CI / Lint (push) Successful in 31s
CI / Test (push) Successful in 56s
2026-04-24 11:56:37 +01:00
raucao 3ddc85669f Clear nostr event cache from Settings
CI / Lint (pull_request) Successful in 32s
CI / Test (pull_request) Successful in 57s
Release Drafter / Update release notes draft (pull_request) Successful in 7s
2026-04-23 09:19:25 +01:00
raucao 4fed8c05c5 Change routing to always use OSM IDs except for custom places
Also implements a short term cache for OSM place data, so we can load it
multiple times without multiplying network requests where needed
2026-04-22 11:01:32 +04:00
raucao 99cfd96ca1 Fetch and cache photo events while browsing map and when opening place details 2026-04-21 21:28:57 +04:00
raucao 8d40b3bb35 Add and use relay list settings 2026-04-21 19:16:52 +04:00
raucao c5316bf336 Refactor settings, DRY up everything 2026-04-21 15:59:55 +04:00
raucao b23d54d74f Cache user profile/settings events in IndexedDB 2026-04-21 14:58:05 +04:00
raucao 5bd4dba907 Refactor settings menu, add Nostr settings
Adds a setting to control if photos should be uploaded only to the
main/default server, or all known servers of a user.

Only upload to the main server by default, to speed up adding photos.
2026-04-21 14:39:38 +04:00
raucao 5cd384cf3a Do sequential image processing/uploads on mobile
Uploading multiple large files at once can fail easily
2026-04-20 19:37:24 +04:00
raucao ec31d1a59b Harden image processing, improve image quality 2026-04-20 18:10:48 +04:00
raucao 4f55f26851 Move image processing to worker 2026-04-20 16:56:51 +04:00
raucao 79777fb51a Process images before upload, add thumbnails, blurhash 2026-04-20 16:24:28 +04:00