Subnode [[@flancian/agora-plan]] in node [[agora-plan]]
from garden/flancian/agora-plan.md by @flancian
from garden/flancian/agora-plan.md by @flancian
Agora Plan
I'll use this as a sort of inline project page for the [[agora]] implementation you're likely reading this in now: https://anagora.org.
As you might know by now, an Agora is a beast with multiple legs:
- A knowledge garden. This is the heart of the [[Agora]]. It is kept in the https://flancia.org/go/agora repo.
- A web renderer, which I run on anagora.org. This is [[Agora Server]]. It is kept in the https://flancia.org/go/agora-server repo.
This page is about both, although it's probably going to be [[Agora Server]] heavy as I'm currently focused on developing features for it.
Latest
-
On [[2021-01-30]]
- onboarded [[enki]]
-
[[nodes]] are now color coded:
- [[dark violet]] for the [[primary node]], that is, any subnodes that match the wikilink you're at most precisely.
- [[dark grey]] for [[pulled]] and [[pushed]] nodes and subnodes.
-
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]]."
- Done!
- 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.
- [x] Added some amount of go links support: anagora.org/go/go now works :), points to the URL with [[go]] in anagora.org/node/go.
- 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]].
Signups
- [x] [[pen-coded]]: https://github.com/KGBicheno/KGB_Agora
- [x] [[luciana]]: https://github.com/malfattti/garden
- [x] [[arghzero]]
- [x] [[dr_kvj]]: https://github.com/drkvj/agora
- [x] [[jonathan-the-utopian]]
- [ ] [[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]]
-
[ ] [[iplumb3r]]
- This seems to be in [[topincs]] format, investigate.
- [x] [[houshuang]]
- [ ] [[joelchan86]]
- [x] [[tilda]]
- [x] [[binnyva]]
- [ ] [[jakeisnt]]
-
[ ] TomCassidy
- [ ] It's a public roam graph: https://roamresearch.com/#/app/Learn2020zettelkasten
-
[ ] [[metasj]] https://meta.wikimedia.org/wiki/User:Sj/!
- First user actually using a wiki!
Integrations
- [[agora-go-links-integration]]
- [[agora twitter integration]]
- [[agora-youtube-integration]]
- [[agora hypothesis integration]]
- [[roam2agora]]
- [[agora vscode]]
- [[wikilinks everywhere]]
Next
-
[ ] all http mentions should be auto linked, not only some:
- [ ] 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
- signup by [[jakeisnt]] is blocked on this: https://github.com/jakeisnt/wiki
- signup by [[karlicoss]] is blocked on this: https://github.com/karlicoss/exobrain.git
- this might be enough to unlock basic [[logseq]] support?
- [[orgparse]] might be useful
- [[pandoc]] supports org
- [ ] 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?
- [ ]
?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.
Some day:
- 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 action]]s -> [[agora action]]
- [[tweet]] block tweets the block (exactly once, etc.).
-
[[go links]] integration -> [[agora go links integration]]
- If the first block of [[foo]] is a URL, anagora.org/go/foo just redirect there.
- Could also work as an action: [[go]] target URL.
Feature requests
- [[pull]] [[feature requests]]
History
- [x] fix bug: backlinks should be shown even in yet non-existent nodes, such as [[deceased]].
- [x] Clean up stale journal pages which don't follow [[iso 8601]].
- [x] Add config.py file with things such as paths.
-
[x] 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.
-
[x] 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.
-
[x] add some search support -- a simple textbox + GET?
- Probably want to use [[flask-wtf]] for this: https://hackersandslackers.com/flask-wtforms-forms/
-
[x] better css
- [x] Add '[[dark mode]]' to the Agora, I like this kind of scheme:
/photo/1
- [x] added switching by button
- Make subnodes/notes look like notes instead of using clunky
<hr />
everywhere. Move to divs, etc.
- [x] Add '[[dark mode]]' to the Agora, I like this kind of scheme:
- [x] Improve the [[index]].
-
[x] Implement [[agora fuzzy matching]].
- Done
- [ ] 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