minimalistic zk web frontend
0

Configure Feed

Select the types of activity you want to include in your feed.

Rust 73.7%
CSS 16.1%
JavaScript 10.2%
Other 0.1%
176 1 0

Clone this repository

https://tangled.org/matze.lol/weave https://tangled.org/did:plc:6tl5awh3aj3hrkkpopkg4mt7
git@tangled.org:matze.lol/weave git@tangled.org:did:plc:6tl5awh3aj3hrkkpopkg4mt7

For self-hosted knots, clone URLs may differ based on your setup.



README.md

Weave#

Weave is a self-hosted, single-user, web-based frontend to view and edit zk notes. It is lightweight, quick and opinionated. It features

  • a single binary with a built-in zk re-implementation (no zk binary needed)
  • fuzzy search across all note titles and tags
  • cross-linking and note editing
  • syntax highlighting of code blocks
  • real-time file watching (external edits show up immediately)
  • light and dark mode support
  • focus mode

DEMO

Building from source#

You need a Rust toolchain (1.93+).

git clone https://github.com/matze/weave.git
cd weave
cargo build --release

The binary ends up in target/release/weave.

Quickstart#

Point Weave at a zk notebook directory (here we use the demo notebook), set a password and run the application from source with:

ZK_NOTEBOOK_DIR="$(pwd)/notebook" WEAVE_PASSWORD="secret" cargo run --release

This starts the server on http://localhost:8000. A demo instance can be accessed at https://weave.bloerg.net.

Environment variables#

Variable Description Default
ZK_NOTEBOOK_DIR Path to the zk notebook directory (required)
WEAVE_PASSWORD Password for signing in (empty, login disabled)
WEAVE_PORT Port the server listens on 8000
WEAVE_HOST IP address the server listens on 127.0.0.1
WEAVE_ATTACHMENTS Subdirectory inside ZK_NOTEBOOK_DIR to serve as static files (e.g. media) (disabled)

License#

MIT