-
Notifications
You must be signed in to change notification settings - Fork 34
todo
Robert C. Martin edited this page Aug 10, 2023
·
174 revisions
This is a list of stories that I'd like to see implemented in more-speech
. Feel free post issues recommending others.
- Don't scroll tree on new events if the insertion point is not on screen.
- If name is dudx-nnn or dud-nnn and there is a display name, use the display name.
- If there are too many replies to fit in the >replies menu, then add a "More..." menu that pops up a scrolling listbox.
- When adding a note to a tab, fetch and add all the notes that currently exist in the thread.
- Expand the tab filters so that users can be included for being authors, replied to, or simply mentioned.
- Kind specific relays like purplepag.es
- Back doesn't work properly if you click on a nostr:note reference. It doesn't push the current on the back stack.
- Show citings in the article info panel and denote them as nostr:nevents in the header of the reply.
- Hard Blocking
- Linkify things in the user profile window.
- Hashtag/keyword/regex filters in the tabs?
- Permanent event. A tab named "Permanent" whose "selected" events will not be deleted from the database during a "compress".
- Create "mention lists" and allow them to be used when sending events. They add all the names to p tags in the event. These could be "permanent" events that you can reply to.
- Figure out what to do with NIP-19 TLVs like nprofile, nrelay and naddr. Also figure out what to do with the relays and other fields in nevent.
- allow 'trust' menu items in mentions.
- Should PoW be done in a future so that the UI does not pause?
- Implement NIP 65 Relay Metadata (kind 10002).
- At startup, read in events from web of trust before reading in everything.
- Only load contacts at startup if there are no contacts already?
- Use the backlog count to throttle the contact-list loading at startup.
- Implement NIP-05 and use nostrplebs.com.
- Only put roots in the article tree. When opened, open the whole thread. Any unread message in the thread makes the root bold.
- Allow a hot key to open a thread.
- Pull contacts in batches by walking backwards in time by an hour or so. This will prevent the flooding of kind:3 messages and prevent massive event backlogs that slow everything down.
- Database cleanup.
- A configuration parameter
days-to-keep
should specify how long events should be kept in the database. An hourly process should evict events older than that. - Profiles should be stamped with the time of their reception. Profiles older than
keep-profiles-for-days
should be evicted on an hourly basis. - Contact lists for evicted profiles should also be evicted.
- A configuration parameter
- Relays connected status can be permanent or hourly. Hourly relays are read once per hour, since the previous hour until now, unless their read status is no-read. They are closed five minutes after reading begins or after EOSE.
- Events from trusted users may suggest relays. Those relays should be set to read-trusted and hourly.
- Add keyboard shortcuts.
- Move other config variables to user-configuration: e.g. days-to-read.
- Add relays from all sources of relay recommendations, e.g. contact lists and other events.
- In
article-tree/should-add-event?
explicit selection of an event should override generic blocking of an event. e.g. if some id is specifically selected, then a regular expression match should not block it. - Add regular expression matching to the
selected
andblocked
sections of tabs. The regular expression should be applied to the profile name of the sending user. (e.g. #"tostr_.*") - Allow selection and copy in
get info
window when right clicking an article in the article tree. - Allow formatting of articles using markdown.
- Search function searches profiles, messages, subjects, nicknames, pubkeys, ids, tags, etc.
- Make "include-reply" an option of some kind.
- Reformat the article info panel, and allow it to resize without killing the fields if they get too small.
- Need to show tab filters using nicknames and event abbreviations, probably by right clicking the tab and selecting
info
or something. - Open whole thread instead of one folder at a time. At least an option.
- Right click on Author in the article window, to add the author to the
:selected
or:blocked
field of a tab. This is probably some kind of hierarchical menu, or maybe a dialog box. - Right click on the id of an article in the article window to add the article id to the :selected or :blocked field of a tab. Put up a warning if the article is not at the root of a thread; but allow it if the user clicks OK.
- Are there other queries that could be built into tabs?
- Implement NIP-08 mentions of events by allowing the user to right click on an event in the header tree and select "insert reference" from a popup menu -- or something like that.
- Right click on event in header tree and select "display in new window" and then display that event in a floating window. Or something like that.
- Improve the usage of sdefs in the code. Right now they are only partially written, and are never checked except in some tests.
- Clean up or replace the Java Schnorr library.
- The threading in the header tree needs rethinking. Probably we want to restrict events to no more than two appearances in the tree. One at the leaf of the tree (without the folder icon) and if it is a reply, then once in the thread of the root of that reply. Right now events appear at every level within the reply chain. (let the reader understand.)
- Add Article to Tab does not seem to build the tree structure of articles.
- a permanent "trusted" tab, which contains all trusted users and cannot be modified or deleted.
-
14 Jul 2023
Create a "trusted" tab. -
11 Jul 2023
Write the tabs file out whenever a new tab is changed. -
08 Jul 2023
Add the undo manager to the text window for creating notes. -
07 Jul 2023
Clicking on a selected article does not put the article into the article window. -
06 Jul 2023
In 'users window' allow untrusting of a batch of users by shift-click or command-click. -
05 Jul 2023
In 'get info' for a user, show list of their trusted users. -
29 Jun 2023
add X (clear) button for thefind
field above the article list. -
01 Jun 2023
User Profile should have a way to add the user to a tab (or new tab). -
23 May 2023
WalletConnect NIP-47 -
19 May 2023
Allow lud06 zaps. -
18 May 2023
Show mentions in the article info panel, and allow them to be individually removed from replies. -
12 May 2023
Password protect the private key. -
10 May 2023
Put "Trust" button into the user Get Info dialog. Allow pet name change. -
10 May 2023
NIP-19 TLVs for nevent. A minimal implementation. -
08 May 2023
when reconstructing nostr:npub into a name, make sure to use the petname. -
02 May 2023
Implement Nip-11 to get Relay attributes. -
30 Apr 2023
Implement un-trust. -
30 Apr 2023
Show list of trusted users. -
24 Apr 2023
Hover over @ links and pop up information about the referent. e.g. profile or content summary. (changed to click). -
24 Apr 2023
Implement `nostr:note1 bech32 references to article ids (and the whole NIP-27 thing...). -
02 Mar 2023
when using @ it would be good to differentiate between users and events. Right now they are considered to be users, and profiles are added for them. We could tell if they were events by looking in the event map. Then we'd use e tags instead of p tags for them. -
02 Mar 2023
- Allow @npubs.
- When a relay reconnects, request events since the last time an event was successfully received.
- Don't allow relays to retry once we have explicitly closed them.
-
23 Feb 2023
Periodically check relays that have .outputClosed, and reconnect them. -
21 Feb 2023
Add search in article tree window. -
19 Feb 2023
FIXED--Deleting tabs breaks the index in the user-data in the jlabel tab name. -
17 Feb 2023
Don't restart when adding users/events to tabs. Just pull the events from the DB and load them into the selected tab. -
16 Feb 2023
Click on @ in article window will select that article. -
15 Feb 2023
At startup, read in events that have been read going back N days. -
15 Feb 2023
Name the recipient of a DM if we sent it. -
13 Feb 2023
Use the backlog count to throttle the database loading at startup. -
10 Feb 2023
Permanently connected relays should restart if they close. Probably a retry algorithm that backs off over time. -
10 Feb 2023
Relays read status can be read-all, read-trusted, read-web-of-trust, no-read. -
09 Feb 2023
Design the UI for kind 7 "Reactions" and then implement. -
27 Sep 2022
When reading in saved events the functionsload-events
andevents/add-event
strip off all but the first relay. Fix this. -
20 Sep 2022
Right click on article to send DM to author. -
20 Sep 2022
Add font-size to config. -
19 Sep 2022
Added encrypted Direct Messages NIP-04. -
17 Aug 2022
Send pings to relays every 30s. -
16 Aug 2022
Sanity check the relay urls. No localhost, no malformed urls, etc. -
15 Aug 2022
Fix issue 18, NPE when clicking reply when no event is selected. -
14 Aug 2022
Some way to use @ with raw pubkeys. -
14 Aug 2022
Protect against malformed tags (e.g. :OPENPGP: -
10 Aug 2022
The menu that adds an article to a tab should add the root, not the article id. -
09 Aug 2022
use trusted names in @ and #[] processing. -
05 Aug 2022
Thanks @koonopek! Right clicking an id in the article info panel should pop up a menu withCopy to Clipboard
. -
04 Aug 2022
Show second level trusted users. (users trusted by users I trust). "someguy<-someguyITrust" -
03 Aug 2022
Added web-of-trust. Read-in kind-3, display untrusted in parents. Right click to trust. -
31 July 2022
:import-metadata options in the user-configuration file to read in all kind-0 messages. -
30 July 2022
Added :export-user-profile group to user-configuration to allow the user to specify the number of days between sending profile metadata. Also made sure that profile metadata will be sent if the keys file is modified. -
30 July 2022
Migration 8, a new 'configuration' file that gets read in when more-speech starts and that are used for infrequently changed user options. -
28 July 2022
Right click on article in article tree brings up menu for selecting and blocking authors and articles in tabs. -
28 July 2022
Implement some convenient way to add new tabs, and delete old tabs. -
28 July 2022
Change name of tab. -
23 July 2022
events/fix-name
don't save the shortened name in the profile, only shorten the name when displaying it. Ugh. -
23-July 2022
generate pubkey once, after that trust the pubkey that's in the keys file. Don't generate it again. -
23-July 2022
When a profile arrives, check usernames against others, and add a disambiguator number e.g. -1 or something. -
20-July 2022
Message file is broken up into daily files.config/days-to-read
tells us now many days to read on startup. Only changed days are written upon close. -
17 July 2022
FIXED: Sometimes when you hit thereply
button, the article it loads into the reply window is not the article being displayed in the article window. I presume it is loading a previously selected article. This may have something to do with theback
button. -
16 July 2022
Migration 6. Changed tabs file to tab-list and refactored all code to conform. -
10 July 2022
by @sathwikmatsa Implement clickable links in the article window. i.e. when an event contains a link, the user should be able to click it. -
05 July 2022
Migration 5. Replace nicknames with profiles. -
17 June 2022
The 'selected' ids in the tabs file should also select for 'p' tags. -
17 June 2022
Save events to messages/message-file. Read in at startup. Set subscription time to just before last old message. -
16 June 2022
Word wrap the edit window. -
12 June 2022
Add who and when to the content of a reply. -
08 June 2022
Don't wrap lines that begin with >, in order to preserve the structure of a reply. -
07 June 2022
Create migration 1->2, fix names in the nicknames file to match the length and character constraints. -
06 June 2022
Create the first migration 0->1, which automatically build the private directory, generates keys and a temporary user name. -
06 June 2022
Ensure :all tab is present. -
06 June 2022
Added the migration framework. -
05 June 2022
Implement NIP-08 to handle mentions of users. Use the @xxx syntax to mean a mention of a user. -
04 June 2022
Got incoming #[n] mentions working for 'p' tags. NIP-08. They are replaced with @nickname or @id:nnnn. -
03 June 2022
Check the signatures of incoming messages. This is commented out right now because it is slow. A better Schnorr library may be necessary. -
30 May 2022
We need a 'back' button. So after clicking on citing or root a few times you can go back. That shouldn't be hard.<grin>
Actually it was a nightmare. -
28 May 2022
Need a way to see the debug details of an event. Right click on event -> show-details?? Something like that. -
31 May 2022
Gather new relays from "e" and "p" tags and add them to the relays list, with R and W set to false. Save the relays list upon shutdown.