Local-First Personal Knowledge Management Desktop App
A finished personal-use desktop app for calm, private organization. Trash Panda PKM keeps notes, goals, plans, learning material, wishlist items, catalogue entries, tasks, and personal records local-first without cloud accounts, collaboration overhead, or unnecessary product bloat.
Overview
Trash Panda PKM is a minimal Notion/Obsidian-style organization app built for one user. It prioritizes fast navigation, private local storage, and a focused interface over cloud sync, collaboration, or speculative features.
Technologies
Svelte 4 TypeScript Vite Tauri 2 Rust SQLite Plain CSS CSS variables
Outcome
Built a real desktop product with a maintainable architecture, local persistence, polished section navigation, editable notes, and a product scope that stays intentionally simple so the app can grow feature by feature.
Local-First Workspace
Designed for private personal knowledge management with local persistence and no dependency on cloud accounts, collaboration systems, or remote sync.
Dashboard and Sections
Includes sidebar navigation for Home, Notes, Goals, Wishlist, Catalogue, Plans, Learning, To do, and Personal, plus a Home dashboard with a time-based greeting and section cards.
Focused Writing Flow
The Notes section uses editable note cards and a focused editor experience, keeping the interface direct and useful instead of turning into an overloaded productivity suite.
Desktop App Foundation
Built the app with Tauri and Rust, pairing a lightweight desktop shell with a responsive Svelte and TypeScript frontend.
Local Data Layer
Designed a local-first persistence layer with SQLite so personal data stays on the device and the app remains useful without online services.
Simple State and Navigation
Managed navigation and interface state with Svelte’s built-in reactivity instead of adding routing or state-management libraries before they were needed.
Custom Interaction Polish
Created a custom Home-to-section expand animation and small UI interactions with CSS and Svelte to make the app feel polished while staying lightweight.
Maintainable Visual System
Built the interface with plain CSS and custom design variables, avoiding Tailwind, Bootstrap, and UI frameworks while keeping the style coherent.
Restraint as a Feature
The project intentionally avoids cloud sync, collaboration, and broad feature bloat. That restraint keeps the app faster to understand, easier to maintain, and better aligned with its single-user purpose.
Built to Grow Slowly
The architecture is structured so new sections and behaviors can be added one feature at a time without forcing a larger rewrite or unnecessary abstraction layer.
Portfolio Takeaway
Trash Panda PKM demonstrates desktop product development, practical architecture choices, local data handling, and polished user experience without overengineering the solution.