TreeMap
무료 오픈소스 디스크 사용량 시각화 도구로, 사각형 트리맵·중복 파일 탐색·디스크 가득 예측·정리 시 파일을 휴지통으로만 이동한다
Document your thoughts, journal or tasks in a as-fast-as-it gets private desktop app or cloud sync for web. Build Natively on Rust on Mac/Windows/Linux and through WebAssembly in web with zero loadtimes or server delays. Full KBD support, Vim, MDX, any AI, themes and more via .
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A blazing-fast, local-first workspace for writing, journaling, and connected knowledge.
Runs fully offline on macOS, Windows, and Linux. No account required.
Sign in to sync your workspace and continue in the browser,
running the same Rust core compiled to WebAssembly.
The browser build at skriuw.com/app , driven from the keyboard, captured in real time and uncut. The desktop app is the same renderer on the same Rust core.README 전문 보기 ↗Your workspace is a SQLite database on your machine. Open the app, type, and every keystroke paints in the same frame: no spinners, no server round-trips, no account. Try it without installing anything: the full app runs in your browser at skriuw.com/app.
# tags, $ people, and @ note links; renames propagate, backlinks everywhereEverything else (journal, tabs, split view, flowcharts, properties, trash) is in FEATURES.md. How it is built is in ARCHITECTURE.md, and the speed budgets it is held to are in docs/performance-contract.md.
The latest GitHub release
has installers for macOS, Windows, and Linux (.dmg, .exe/.msi, .deb,
.rpm, AppImage).
curl -fsSL https://skriuw.github.io/packages/apt/key.gpg \
| sudo gpg --dearmor -o /usr/share/keyrings/skriuw.gpg
echo "deb [signed-by=/usr/share/keyrings/skriuw.gpg] https://skriuw.github.io/packages/apt stable main" \
| sudo tee /etc/apt/sources.list.d/skriuw.list
sudo apt update && sudo apt install skriuw
sudo dnf config-manager addrepo --from-repofile=https://skriuw.github.io/packages/rpm/skriuw.repo
sudo dnf install skriuw
brew install --cask skriuw/tap/skriuw
scoop bucket add skriuw https://github.com/skriuw/scoop-bucket
scoop install skriuw
yay -S skriuw-bin
AUR publication is currently paused upstream, so that package can lag behind the latest release. Winget and Snap are wired into release automation but have no current publication; use a release asset or one of the channels above.
Not published yet. A native client exists in apps/mobile/ — the same
Rust core, the same editor, the same workspace — with notes, journal, tasks,
locked notes and end-to-end encrypted sync, but it has never been submitted to
either store and iOS has never been launched on a device. What is built, what
is measured, and what is still blocking a first TestFlight and Play
internal-track build are in
tools/packaging/mobile.
Until then, skriuw.com/app installs to a home screen from the browser and works offline.
Nothing syncs unless you sign in. Sync is off until you create an account and turn it on, on desktop and in the browser alike. Until then your notes never leave the machine they were written on: the desktop app keeps them in local SQLite, and the browser app keeps them in your browser's own storage.
The standalone app does not send workspace content or telemetry. The marketing site uses Vercel Web Analytics and Spoar for page views and a few click events. The desktop app's network code is limited to the sync Worker, which runs only while you are signed in, and the updater's version check.
The AI features follow the same rule. They are off and invisible until you enable them in settings, and default to a local Ollama model, so prompts never leave your machine. Remote providers (Gemini, Groq) run only with your own API key — stored in the OS keychain, never in the database or exports — and only after a per-provider consent that shows exactly what text is sent.
Individual notes or folders can be locked behind a PIN or passphrase. Locked bodies are encrypted on disk and stay out of search, links, and history until you unlock them for the session; a one-time recovery code covers a forgotten secret (details).
Sync is end-to-end encrypted: notes, media, and archives are sealed on your devices with a key derived from a recovery code the server never sees, so the service only orders and stores opaque bytes (details).
Rust 1.95, Bun 1.3, Node.js 24, and the platform dependencies required by Tauri.
./bin/setup # install dependencies, generate contracts, and check
./bin/dev desktop # also: browser | site | mobile
./bin/check # desktop gate; also: browser | mobile
./bin/build # Rust workspace; also: desktop | browser | site | ci
The repository layout, web deployment, and cloud development reference is in docs/development.md. Contributions start at CONTRIBUTING.md; report security issues through SECURITY.md instead of a public issue.
Framework-independent v2 helpers live in packages/shared.
The previous generation of Skriuw (web, mobile, collaboration, self-hosting)
lives in v1-final/ and is frozen at 0.25.0. It is still installable:
# source as it shipped, before the move into v1/
git clone --branch v0.25.0 --single-branch \
https://github.com/remcostoeten/skriuw.git skriuw-v1
# self-host image, pinned to the last v1 version
docker pull ghcr.io/remcostoeten/skriuw:0.25.0
Desktop installers for macOS, Windows, and Linux are attached to the
desktop-v0.25.0 release.
The container image is no longer rebuilt; 0.25.0 is its final version.
To work on v1 in this repository instead, use v1-final/ on the current branch, or
f74af74f for the last commit that touched it before the freeze. Setup lives
in v1-final/README.md.
Anthropic for sponsoring six months of Claude Max through their Claude for Open Source program.
An abandoned Svelte Markdown project that originally inspired Skriuw's UI. I can no longer find it, so if you recognize it, please get in touch so I can give proper credit.
xxx, Remco Stoeten