If you'd like a quick introduction to the Agora as of mid 2021, please check out go/agora-slides.
What this node is for
As you might know by now, an Agora is a beast with multiple legs:
- A knowledge graph. This is the heart of the Agora. It is kept in the go/agora repo, and includes pointers to other repositories.
- A web server and associated client code, which the flancia collective runs on https://anagora.org . It is kept in the go/agora-server repo.
- A set of bridges to connect other platforms to the agora, and the Agora to to other platforms. These are kept in the go/agora-bridge repository.
This node might deal with development of any and all of them. We will try to list past major developments below, but this node will try to also be future focused.
- agora server
- agora bridge
- patterns everywhere
- On 2021-11-06:
- On 2021-01-30
On 2020-01-02 I implemented jump
- I said: "I'll implement the action and a 'jump'/ dialog always available in the Agora, perhaps replacing search in the toolbar."
- Q: is 'go to' better than jump? I don't think so, and it could be confusing due to go links. But unsure.
- On 2020-01-01 I fixed node titles.
- On 2020-12-29 I pushed a quick patch that upranks all my subnodes, as some top subnodes in relatively popular nodes had formatting issues / were distracting. I intend this to be temporary; better ranking and formatting fixes are coming.
- On 2020-12-27 I released agora 0.5.6 with pull support, better db code, caching... quite a bit :)
- On 2020-12-20 I worked agora 0.5.5, which adds simple hypothes.is integration.
On 2020-12-04 I released agora 0.5.4, with some improvements:
- New data model (digital gardens are not subtree'd in the main agora repository anymore, stay wholly independent)
- Index page is now just another node, subnodes can be contributed by users.
- On 2020-11-29 I integrated the first community contribution ever.
- On 2020-11-27 I fixed some bugs, like wikilinks with periods on their names not working.
- On 2020-11-22 implemented count of subnodes in user pages.
- On 2020-11-17 implemented latest.
- On 2020-11-16 I implemented agora fuzzy matching and full text search, adopted a div based layout, improved the CSS, improved user pages.
- On 2020-11-15 I implemented dark mode (press on 'theme' on the top right corner to switch dark <-> light).
- On 2020-11-14 I released agora 0.5.1.
- pen-coded: https://github.com/KGBicheno/KGB_Agora
- luciana: https://github.com/malfattti/garden
- dr_kvj: https://github.com/drkvj/agora
- enkiv2: http://www.lord-enki.net/medium-backup/
what about all of the ones licensed appropriately listed in kasper zutterman's second brain list? https://github.com/KasperZutterman/Second-Brain
- Discussing with armengolaltayo
- See also digital gardeners
- This seems to be in topincs format, investigate.
- It's a public roam graph: https://roamresearch.com/#/app/Learn2020zettelkasten
- First user actually using a wiki!
- agora twitter integration
- agora hypothesis integration
- agora vscode
- wikilinks everywhere
all http mentions should be auto linked, not only some: https://twitter.com/notverapetrova/status/1346258737204400128
- Worked around this, but I should probably send an upstream PR to bleach
- try rendering notes with marko, see if it's a bit more forgiving with list indentation and other kinks that seem common.
- add support for org mode gardens
- I should make node 0.5.6 work
- graph the whole Agora -- sounds fun!
- Implement pull and push.
Make more links default to node instead of subnode.
- For example those in latest, those in user pages.
- Might require 'upranking'.
- set up agora hot spare in dorcas, this is an experiment but I already find it very useful so I don't want to not have it available for a while if there's a server failure
- add monitoring -- munin or something more modern? prometheus?
- Implement /node/foo/selector as more resilient/uniform alternative to /subnode.
Implement user upranking/pinning.
- Perhaps nodes visited from a user scope uprank subnodes by that user?
- https://twitter.com/s5bug/status/1334686375275163652 ?s=09
- Provide a link (GET) for the search for '[ ]', useful for do.
- Add better backlinks, showing some context.
- Make the site header be marked as an actual header (div with a class, etc.); Google seems to think it's part of the site text (it's showing up in results).
- Fix markdown list formatting issue with different tab widths.
- add footer.
- Implement preview-on-hover?
- Implement "around the Agora".
- add /latest or some other chronological view
- User profiles: perhaps just note flancian as written by user flancian? Unsure.
- Make the index be just another note ding-levery.
- Improve backlinks: show snippets as well as just the link.
- Improve pull loop to also support arbitrary hooks, like that needed to implement agora go links integration.
Multi user improvements:
- Better sorting (right now all my notes show up at the top, doesn't make sense).
- Ability to "zoom into" a user, to navigate just their garden for a while.
- Perhaps ability to "uprank" users, pinning their notes to the top of any sorting order.
- Perhaps sort+uprank can be integrated?
- usernames could have a 'pin' emoji that upranks all their posts?
- Implement search (full text).
Add support for media serving (useful for pictures of ocell).
- assets/foo end up at node/assets/foo; just adding a handler for node/assets/ seems like it could be enough.
- It would conflict with a node named 'assets' though, so perhaps it's not ideal.
- Perhaps it'd be better to just serve images/media as subnodes?
- Add monitoring/alerting.
- When you update a node on a person, said person gets a notification (they can opt out).
- Support Roam, Athens, org-roam digital gardens.
Twitter integration -> agora twitter integration
- Ask ding levery.
Automatic actions -> agora actions -> agora action
- tweet block tweets the block (exactly once, etc.).
- go links integration -> agora go links integration
- fix bug: backlinks should be shown even in yet non-existent nodes, such as deceased.
- Clean up stale journal pages which don't follow iso 8601.
- Add config.py file with things such as paths.
Add user handler: /u
- /u/flancian -> all nodes by flancian
- /node/flancia/u/flancian -> flancia by flancian
- Also added @flancian. Shorter is better, and it's a common convention.
- perhaps /g/ for groups later? or /s/ for stoa.
Add 'link to this note'.
- Now called subnode.
- Subnode rendering is ready, just need to add links.
- Perhaps I need to fix subnode paths; right now they are the actual filename. It'd be better if there was at least possible to specify the filename base (no extension) and have the right file be resolve, a la nodes.
add some search support -- a simple textbox + GET?
- Probably want to use flask-wtf for this: https://hackersandslackers.com/flask-wtforms-forms/
- Add 'dark mode' to the Agora, I like this kind of scheme: https://twitter.com/ablueaeshna/status/1323439284272222208 /photo/1
- added switching by button
- Make subnodes/notes look like notes instead of using clunky
<hr />everywhere. Move to divs, etc.
- Improve the index.
Implement agora fuzzy matching.
- but backlinks don't work in some cases, like http://dev.anagora.org/node/abstract%20fairy .
- Probably not worth fixing that right now as it only triggers for nodes that are not canonical, perhaps better to just redirect to a canonical node.
- could help with disambiguation and acronym expansion