A non-linear writing instrument.
- Rust 90.5%
- HTML 4.4%
- CSS 2.7%
- Shell 1.8%
- Nix 0.6%
Fixes some pages not having parsed input by making it much harder to construct a config with unparsed text, which is something you basically never want. The parsing now happens much earlier and consumers don't need to remember to parse the configuration anymore. Fixes a possible stack overflow due to parsing and configuration depending on each other. This commit also has dependencies updates and minor justfile tweaks. |
||
|---|---|---|
| .forgejo/workflows | ||
| docs/development | ||
| src | ||
| static | ||
| templates | ||
| tests/mocks | ||
| .clippy.toml | ||
| .gitignore | ||
| .justfile | ||
| .rustfmt.toml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
en
en is a tool to write non-linear, connected pieces of text and have their references mapped out as a graph of connected information.
It works by ingesting a TOML file containing your node specification and serving it as a website that allows nodes to be browsed, searched and listed in relation to each other or as a shallow tree of nodes.
Learn more
You can learn more and see what en looks like by visiting the homepage, which is rendered using en itself.
Roadmap
- Add tests
- Improve content syntax parser coverage
- Richer text formatting
- Headers
- Preformatted blocks
- Inline code
- Anchor rendering
- Automatic anchors
#syntax for header ID anchors
- External anchors
- Bold, italics, underline, strikethrough
- Lists
- Checkboxes
- Move this roadmap to en
- Connection kinds
- Mutual
- Category <-> Membership
- Opposite <-> Equivalent
- Contrast <-> Similar
- Cognate <-> Unrelated
- Specialization <-> Generalization
- Custom connection kinds
- Strip/render some syntax in Tree text preview
- Begin centralizing state
- Full-text search
- Render to filesystem
- Reduce O(n) calls in the formats module
- Multi-file graphs
- Multi-graph
- Themes
- Array syntax for lightweight connections
- Automatic IDs
- Automatic titles
- Mismatch between TOML ID and provided ID