From 0b46d5c7d9c9295f26d7ccd78c885ac3ea88992b Mon Sep 17 00:00:00 2001 From: Zef Hemel Date: Wed, 6 Jul 2022 12:17:04 +0200 Subject: [PATCH] Documentation on mounts --- docs/Mounts.md | 28 ++++++++++++++++++++++++++++ docs/index.md | 20 +------------------- docs/๐Ÿ—บ Roadmap.md | 15 +++++++++++++++ 3 files changed, 44 insertions(+), 19 deletions(-) create mode 100644 docs/Mounts.md create mode 100644 docs/๐Ÿ—บ Roadmap.md diff --git a/docs/Mounts.md b/docs/Mounts.md new file mode 100644 index 0000000..2f27b2c --- /dev/null +++ b/docs/Mounts.md @@ -0,0 +1,28 @@ +Space mounting in `MOUNTS` + +```yaml +- path: file:/Users/zef/git/blog + prefix: ๐Ÿ“– + perm: ro,rw #default rw +``` + +Features +* Auto translates internal wiki links (prefixes with prefix) and removes prefix upon save + +To do: +* [ ] Handle queries + * `page` and `link` query needs to dynamically add/remove a `and name =~ /^๐Ÿšช PREFIX/` clause) + * `task` same but with `page` check + +* Due to namespacing, the mounted space needs to be namespaced somehow +* Could be an emoji, could be a page prefix (now using `name`) +* On the fly link rewriting on read and write with prefix +* Will require an actual set of `fs` syscalls: + * readFile(path) + * writeFile(path, text) + * listFiles(path) with stat-like results (at least enough for `PageMeta` responses) +* If this exists, should not all disk file access work through plugs as well and have that abstraction happen at this level? + +protocols: +* file: +* http/https with โ€œpasswordโ€ field for authentication \ No newline at end of file diff --git a/docs/index.md b/docs/index.md index 1454723..ac64287 100644 --- a/docs/index.md +++ b/docs/index.md @@ -24,6 +24,7 @@ I know, right? [[๐Ÿ’ก Inspiration]] [[๐Ÿ”Œ Plugs]] [[๐Ÿ”จ Development]] +[[๐Ÿ—บ Roadmap]] ## Installing and running Silver Bullet To run a release version, you need to have a recent version of npm (8+) and node.js (16+) installed as well as some basic build infrastructure (make, cpp). Silver Bullet has only been tested on MacOS and Linux thus far. @@ -34,22 +35,3 @@ To install and run, create a folder for your pages (can be empty or an existing Optionally you can use the `--port` argument to specify a HTTP port (defaults to `3000`) and you can pass a `--password` flag to require a password to access. Note this is a rather weak security mechanism, so itโ€™s recommended to add additional layers of security on top of this if you run this on a public server somewhere (at least add TLS). Personally I run it on a tiny Linux VM on my server at home, and use a VPN (Tailscale) to access it from outside my home. -## Roadmap -More details on the [[๐Ÿ—บ๏ธ Roadmap]] page. - -* [ ] [[๐Ÿ—บ๏ธ Roadmap@34]] Persistent recent commands (saved between sessions) -* [ ] [[๐Ÿ—บ๏ธ Roadmap@92]] Add ==marker== syntax -* [ ] [[๐Ÿ—บ๏ธ Roadmap@120]] Two finger tap gesture to bring up command palette -* [ ] [[๐Ÿ—บ๏ธ Roadmap@177]] Change indent level command -* [ ] [[๐Ÿ—บ๏ธ Roadmap@212]] Keyboard shortcuts for specific notes (e.g. `index` note) -* [ ] [[๐Ÿ—บ๏ธ Roadmap@276]] RevealJS slides plug -* [ ] [[๐Ÿ—บ๏ธ Roadmap@303]] Pinned notes and actions? -* [ ] [[๐Ÿ—บ๏ธ Roadmap@335]] Template for deadline, with ๐Ÿ“… emoji and perhaps defaulting to today? -* [ ] [[๐Ÿ—บ๏ธ Roadmap@411]] Use webauthn https://www.npmjs.com/package/webauthn -* [ ] [[๐Ÿ—บ๏ธ Roadmap@469]] Proper sign up and login -* [ ] [[๐Ÿ—บ๏ธ Roadmap@500]] Data store pagination API -* [ ] [[๐Ÿ—บ๏ธ Roadmap@532]] Hashtag plug: -* [ ] [[๐Ÿ—บ๏ธ Roadmap@656]] Extract `MarkdownEditor` component. -* [ ] [[๐Ÿ—บ๏ธ Roadmap@725]] PUT page with `If-Last-Modified-Before` type header. Rejects if not matching. Client creates a revision, navigates to it. -* [ ] [[๐Ÿ—บ๏ธ Roadmap@858]] Put retries exponential back off - diff --git a/docs/๐Ÿ—บ Roadmap.md b/docs/๐Ÿ—บ Roadmap.md new file mode 100644 index 0000000..5338beb --- /dev/null +++ b/docs/๐Ÿ—บ Roadmap.md @@ -0,0 +1,15 @@ +Some things I want to work on: + +* [ ] Persistent recent commands (saved between sessions) +* [x] Add ==marker== syntax +* [x] Two finger tap gesture to bring up command palette +* [ ] Change indent level command +* [ ] Keyboard shortcuts for specific notes (e.g. `index` note) +* [ ] RevealJS slides plug +* [ ] Pinned notes and actions? +* [x] Template for deadline, with ๐Ÿ“… emoji and perhaps defaulting to today? +* [ ] Data store pagination API +* [ ] Extract `MarkdownEditor` component. +* REST API safeguards: + * [ ] PUT page with `If-Last-Modified-Before` type header. Rejects if not matching. Client creates a revision, navigates to it. + * [ ] Put retries exponential back off \ No newline at end of file