TriliumNext/Trilium is a full-stack, cross-platform hierarchical note-taking application with rich text editing, LLM integration, sync, encryption, and a plugin-based architecture. The monorepo contains a Node.js Express server (SQLite backend), a Preact/React SPA client, an Electron desktop wrapper, a standalone browser-SQLite-WASM build, and a Capacitor mobile app. The system manages notes as a tree with cloning, attributes, relations, and multiple content types (text, code, mind maps, canvases, spreadsheets, calendars, etc.). It provides custom CKEditor5 plugins for math, footnotes, mermaid diagrams, and AI assistance, as well as a full-featured LLM chat with tool execution and skill sheets. The codebase is well-tested with over 2000 spec files, uses modern TypeScript and pnpm workspaces, and includes comprehensive import/export (Evernote, OneNote, Obsidian, Notion, Google Keep, OPML, Markdown, HTML) and sync capabilities. Key architectural patterns include a provider abstraction for platform-specific services (crypto, zip, messaging, clipboard), a component-based widget system on the client, and a centralized entity cache (becca/froca) that is synchronized via WebSocket.
VimWiki is a mature Vim/Neovim plugin implementing a personal wiki system for note-taking, task management, documentation, and diary keeping. It features syntax highlighting for multiple markup languages (default VimWiki, Markdown, MediaWiki), wiki link resolution, table formatting, tag generation, and HTML export. The architecture follows a modular autoload pattern with scoped variable management (global, wiki-local, syntax-local, buffer-local) enabling flexible configuration. Core functionality includes link handling, diary automation, and text object manipulation for lists/tables. The project maintains active development with comprehensive testing across Vim/Neovim versions via CI, demonstrating strong adherence to Vim plugin best practices.
This repository implements a personal knowledge management system centered around LLM-powered content processing. It follows a four-layer architecture: raw/ for immutable source materials, wiki/ for LLM-generated structured knowledge (summaries, concepts, indexes), brainstorming/ for intermediate outputs like chat logs and health reports, and artifacts/ for user-created work. The system processes various input formats (articles, books, PDFs, Facebook exports) through user-triggered commands like /compile and /convert-to-md, which leverage external tools (pandoc, pymupdf) and LLMs to extract insights and build interconnected knowledge networks. The core innovation lies in separating raw consumption from synthesized understanding, allowing users to accumulate source material without immediate processing, then periodically run LLM-driven synthesis to surface patterns across documents. Key workflows include extracting concepts that appear in multiple sources, maintaining bidirectional links between related ideas, and preserving tension between personal experience and external research in concept notes. The system emphasizes provenance tracking, with every synthesized piece linking back to its source via wikilinks. While the system relies on external LLMs and tools for its core functionality, it provides well-defined, reusable components for common data preparation tasks. The Facebook JSON-to-Markdown converter stands out as a robust, standalone script handling encoding normalization, media extraction, and frontmatter generation. The overall design demonstrates thoughtful consideration of knowledge work friction points, though reproducibility is hampered by undocumented environment dependencies and lack of sample data.
TiddlyWiki5 is a mature, extensible personal wiki application that runs entirely as a single HTML file in the browser or as a Node.js server. It manages content as individual 'tiddlers' — small, addressable pieces of text with metadata — and provides a powerful custom filter language for querying, transforming, and aggregating them. The application features a widget-based UI rendering engine, a pluggable wiki-text parser with dozens of rules, a built-in HTTP server with REST-like endpoints, encryption, and extensive integration plugins (geospatial maps via Leaflet/Turf, math typesetting via KaTeX, Markdown parsing, CodeMirror editing, QR codes, etc.). The architecture is highly modular: core functionality is implemented via module types (widgets, filter operators, parser rules, startup hooks, saver backends) that can be extended or overridden by plugins. The codebase has been continuously developed since 2011 and supports both client-side single-page application mode and server-side wiki mode. Despite its impressive extensibility and long history, the codebase shows signs of technical drift. The boot kernel (boot/boot.js) is a large monolithic file that mixes utility functions, the wiki store, module loading, and platform-specific startup logic. Many third-party libraries (e.g., JSZip v2.6.1, Leaflet.markercluster 1.5.3, minified CodeMirror modes) are vendored and outdated, requiring manual patching. The code style is inconsistent, with some modules using modern ES6+ features while others remain in ES5. The filter language and widget infrastructure are well-architected and reusable, but the tight coupling between core modules makes extraction for external use non-trivial. The project remains actively maintained with frequent commits, a large community, and an extensive test suite, making it a solid foundation for knowledge management applications, though significant refactoring would be needed to bring it to contemporary best practices.
This repository is a personal knowledge base and digital garden built with MkDocs, a static site generator. It contains over 1300 markdown files covering a vast range of topics including software development, DevOps, Python, Vim/Neovim, Linux, self-hosting, life management, activism, and arts. The content is organized into topical pages and dated newsletters that serve as a changelog of the author's learning. The repository includes MkDocs configuration, a custom theme, CI/CD via GitHub Actions, and dependency management with PDM. It is not a software application or data pipeline; it is a documentation site that the author maintains as a public second brain. The codebase is minimal and standard for a MkDocs project, with no reusable software components beyond the content itself.