diff --git a/README.md b/README.md index e3889f16..b5947283 100644 --- a/README.md +++ b/README.md @@ -41,4 +41,5 @@ You can find a more complete changelog [here](./ROADMAP.md). - Clone the project repository: `git clone https://github.com/staab/coracle.git` - Navitage to the project directory: `cd coracle` - Install dependencies: `npm install` +- Add an env file from the template: `cp env.template env.local` - Start the development server: `npm run dev` diff --git a/ROADMAP.md b/ROADMAP.md index ff572f69..91aa2824 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -1,19 +1,48 @@ # Current +- [ ] Search by nip05 alias + - nevent1qqsdt4ux9c0zvd6hzpwnzznjsmd7a337mpxdspu9wd4fq8drvqejdmqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqs6amnwvaz7tmwdaejumr0dsffemjp +- [ ] Fix feeds - [ ] Hash pubkey so we can track usage by unique user - [ ] Try adding boxes/separation on feeds based on user feedback - [ ] Strip zero width spaces from compose - [ ] Fix iOS/safari/firefox -- [ ] Make the note relays button modal make sense, one relay with no explanation is not good +- [ ] Add dynamic title tag +- [ ] Show more link on long notes (rather than just an ellipsis) +- [ ] Show popover on delayed hover rather than click (on mobile, keep it click) +- [ ] QR code component that sizes input to qr code width to make it tidy # Image uploads -- Default will charge via lightning and have a tos, others can self-host and skip that. +- [ ] Add LN invoices +- [ ] Build UI + - Put sql stuff in a library, use it in dufflepud and image service +- [ ] Post announcement on SN, TG +- [ ] Contact other client authors, self-hostable, or just use my instance - https://github.com/ElementsProject/lightning-charge - https://github.com/nostr-protocol/nips/pull/250 -- https://github.com/brandonsavage/Upload -- https://github.com/seaweedfs/seaweedfs -- https://github.com/cubefs/cubefs + +# Coracle website + +- [ ] Simple intro to coracle +- [ ] Add nip05 to coracle + - [ ] After ~10 sessions prompt them to verify and update their nip05 + - [ ] Maybe only if they don't have a nip05 yet + +# Others + +- Tool for finding relays with light usage so people can spread out + - Graph view? Query db with COUNT? Hardware specs on relay info endpoint? + - "adoptarelay.com" + - Add suggested relays based on follows or topics +- Recommendations +- Indexer/multiplexer +- relay.coracle.social +- Improve overall design +- Stripped down easy version of coracle + - Extract library? + - Parameterize color scheme + - Deploy to special domains with relays built in # Custom views @@ -23,14 +52,13 @@ # More +- [ ] https://media.nostr.band/ +- [ ] Make the note relays button modal make sense, one relay with no explanation is not good - [ ] Linkify invoices - [ ] Linkify bech32 entities w/ NIP 21 https://github.com/nostr-protocol/nips/blob/master/21.md - [ ] Person zaps -- [ ] Add dynamic title tag - [ ] Collapsible thread view -- [ ] Split inbox into replies + everything else -- [ ] Show more link on long notes -- [ ] Show popover on delayed hover rather than click (on mobile, keep it click) +- [ ] Split notifications into replies + everything else, or add filters - [ ] Light mode - [ ] Mute threads http://localhost:5173/nevent1qqsyz8x6r0cu7l6vwlcjhf8qhxyjtdykvuervkc3t3mfggse4qtwt0gpyfmhxue69uhkummnw3ezumrfvfjhyarpwdc8y6tddaexg6t4d5hxxmmdnhxvea - [ ] Add webtorrent support @@ -47,24 +75,14 @@ - Find the best implementation https://github.com/nostr-protocol/nips/search?q=poll&type=issues - Comment on all three nip drafts which one I implemented - [ ] Micro app DSL -- [ ] Sort feeds by created date on profile page? -- [ ] Implement https://media.nostr.band/ - [ ] Groups - may need a new NIP, or maybe use topics - [ ] Support https://github.com/nostr-protocol/nips/pull/211 as a bech32 entity -- [ ] Add new DM button to dms list -- [ ] Add suggested relays based on follows or topics +- [ ] Add "new DM" button to dms list - [ ] Support relay auth -- [ ] Following indicator on person info - [ ] Share button for notes, shows qr code and nevent -- [ ] If a user has no write relays (or is not logged in), open a modal - [ ] open web+nostr links like snort -- [ ] Channels - - [ ] Separate chat and DMs - - [ ] Don't waste space caching rooms, load those lazily - - [ ] Damus has chats divided into DMs and requests - - [ ] Ability to leave/mute DM conversation - - [ ] Add petnames for channels - - [ ] Add notifications for chat messages +- [ ] Ability to leave/mute DM conversation +- [ ] Add notifications for chat messages - [ ] Add encrypted settings storage using nostr events - [ ] Save DM/chat read status in encrypted note - [ ] Relay recommendations based on follows/followers @@ -74,10 +92,9 @@ - https://github.com/nbd-wtf/nostr-tools/blob/master/nip26.ts - [ ] Add keyword mutes - [ ] Attachments (a tag w/content type and url) -- [ ] Sign in as user with one click to view things from their pubkey's perspective - do this with multiple accounts +- [ ] Sign in as user with one click to view things from their pubkey's perspective - nevent1qqsyyxtrhpsqeqaqgucd6uzpyh8eq2hkfgr0yzr7ku7tgyl5cn9jw5qpz3mhxue69uhhyetvv9ujumn0wd68ytnzvuq3gamnwvaz7tmjv4kxz7fwv3sk6atn9e5k7l564wx -- [ ] Search by nip05 alias - - nevent1qqsdt4ux9c0zvd6hzpwnzznjsmd7a337mpxdspu9wd4fq8drvqejdmqpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqs6amnwvaz7tmwdaejumr0dsffemjp +- [ ] Multiple accounts - [ ] Show options on note detail for retrieving replies - Replies from user's network - All replies from author's + user's read relays, including spam @@ -87,7 +104,7 @@ - [ ] Release to android - https://svelte-native.technology/docs - https://ionic.io/blog/capacitor-everything-youve-ever-wanted-to-know - - Or just wrap it + - Or just wrap it in an apk - [ ] When publishing fails, enqueue and retry - Track which relays the events should be published to, and which ones have succeeded - Maybe notify and ask user which events to re-publish. diff --git a/env.template b/env.template new file mode 100644 index 00000000..dcb3f0ed --- /dev/null +++ b/env.template @@ -0,0 +1,2 @@ +VITE_DUFFLEPUD_URL=https://dufflepud.onrender.com +VITE_SHOW_DEBUG_ROUTE=false diff --git a/package-lock.json b/package-lock.json index 0b9816c3..d9650d55 100644 Binary files a/package-lock.json and b/package-lock.json differ diff --git a/src/views/search/Scan.svelte b/src/views/search/Scan.svelte index aad0870a..78eec68a 100644 --- a/src/views/search/Scan.svelte +++ b/src/views/search/Scan.svelte @@ -1,15 +1,13 @@