Marcos Paulo 1d06b71950
ci / ci (macos-latest) (push) Has been cancelled
ci / ci (ubuntu-latest) (push) Has been cancelled
ci / ci (windows-latest) (push) Has been cancelled
feat: Publish and links section in the Share dialog
Published pages (copy, unpublish), publish this note, read-only links with expiry choices; the secret link is shown once and never in lists, logs or toasts; viewers see lists without buttons; destructive buttons click twice. Re-exports PublicationKind from the engine. Built by MiniMax M3.1 Flash (OpenCode Zen free route); verified from a clean checkout of the staged files: 908 lib tests, publish_ui 8 and share_ui 10 pass, clippy -D warnings on ui-egui and engine and xtask tree clean. Open: the shell does not pass the note into the dialog yet and the card needs to scroll on short screens.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-20 20:10:55 -03:00
2026-10-13 18:32:56 -03:00
2026-10-14 23:16:33 -03:00
2026-10-13 18:32:56 -03:00
2026-10-13 18:32:56 -03:00
2026-10-13 18:32:56 -03:00
2026-10-13 18:32:56 -03:00
2026-10-14 23:16:33 -03:00

NotesCraft

A native, Obsidian-compatible notes app for the Craft suite, written in Rust (egui/eframe). Your vault is a folder of plain .md files that stay readable by Obsidian: wikilinks, embeds, callouts, tags, frontmatter, backlinks, full-text search, daily notes and templates, a graph view, canvas and whiteboard files, diagrams (Mermaid subset, including UML), a plugin host (WebAssembly), an MCP server and a CLI so agents can work on the vault.

Status: pre-alpha. The engine and most crates are built and tested; the desktop app opens a vault with a file tree, tabs, a read-only note view, backlinks and outline, a command palette and animations. See ROADMAP.md for what is done and SPEC.md for the contract.

Screenshots

Workspace Workspace, Catppuccin Latte
Search Source control
LaTeX math Vim mode in the source editor
Settings 4K

Regenerate with the offscreen renderer: cargo run -p notescraft-ui-egui --example snapshot -- --vault <vault> --out x.png --size 1440x900 --open "note.md" [--tab explorer|search|tags|buffers|source] [--theme id] [--vim] [--source] (set HOME to a scratch directory so the run does not touch your settings).

Try it

export PATH="$HOME/.cargo/bin:$PATH"          # use rustup's stable toolchain (1.95 or newer)
cargo run -p notescraft -- /path/to/your/vault

Without a vault argument, set NOTESCRAFT_VAULT. Keys: Cmd/Ctrl+K command palette, Cmd/Ctrl+O quick switcher, Cmd/Ctrl +/-/0 zoom.

Render the UI to a PNG without a window (useful for design checks):

cargo run -p notescraft-ui-egui --example snapshot -- --vault /path/to/vault --out ui.png --size 1440x900 --open "folder/note.md"

Install

Release builds: packaging/macos/package.sh (DMG), packaging/windows/package.ps1 (MSI), packaging/linux/package.sh (deb, rpm, AppImage); see packaging/README.md. notescraft with no argument reopens the last vault, or asks for a folder.

Develop

cargo xtask ci      # fmt --check, clippy -D warnings, tests, layer check
cargo xtask layers  # crate dependency layering only

Read AGENTS.md first (rules for people and AI agents), then docs/ARCHITECTURE.md (crate map and APIs). The workspace follows PhotoCraft and VectorCraft conventions; shared crates come from craft-libs.

Design

The design lives in a PaperCraft project named NotesCraft (tokens for Catppuccin Mocha/Latte, workspace, graph, command palette, slash menu, settings, whiteboard, assistant panel, 4K screen). Rounded floating panels on a canvas colour, separated by tone, not borders.

Licence

MIT OR Apache-2.0 (LICENSE-MIT, LICENSE-APACHE). Fonts (Inter, JetBrains Mono: SIL OFL 1.1) and icons (Lucide: ISC) keep their own licences, see ATTRIBUTION.md.

S
Description
Native, Obsidian-compatible markdown notes app in Rust (egui). Craft suite.
Readme 24 MiB
2026-10-21 03:32:23 +00:00
Languages
Rust 99.2%
RenderScript 0.4%
Shell 0.2%
PowerShell 0.2%