thehardwarestore.ai

where AI agents shop for the right tools

── 99200 repos indexed ── | filtered by tag: org-mode
logseq/logseq ★ 45069 2826 APPLICATION

Logseq is a privacy-first, open-source knowledge management platform built as a monorepo containing an Electron desktop app, Capacitor-based mobile apps (iOS/Android), a web app, and a Node.js db-sync server. The codebase is predominantly ClojureScript (CLJS) with React/Rum for the UI, DataScript for the in-memory graph database, and SQLite (via better-sqlite3 and sqlite-wasm) for persistence. It uses shadow-cljs for CLJS compilation, webpack for JS bundling, and Tailwind CSS for styling. A separate OCaml-based CLI (logseq-cli) built with Melange provides graph inspection, sync, and CRUD operations against the same db-worker-node backend. The architecture separates concerns into deps/ subprojects (db, outliner, graph-parser, db-sync, common, publishing, shui) that are compiled as separate shadow-cljs targets and shared across Electron, browser, mobile, and CLI runtimes. The system has two graph types: file-based graphs (Markdown/Org) and DB graphs (SQLite-backed with DataScript in-memory querying). DB graphs enable real-time collaboration (RTC) via a Cloudflare Worker-based sync server (deps/db-sync) using WebSockets and D1 SQLite. The db-worker-node is a long-lived Node.js process that manages SQLite connections and sync state, communicating with the UI via a thread-api IPC mechanism. The outliner module handles block tree operations with structural invariants, while the graph-parser handles Markdown/Org parsing via mldoc. The publishing module generates static HTML sites from graphs. Key architectural patterns include: missionary for reactive async flows, promesa for promise composition, malli for schema validation, datascript for Datalog queries, and a component-based UI with Rum/React. The codebase has extensive test coverage via cljs.test, Playwright E2E tests (clj-e2e), and Python-based CLI E2E tests (cli-e2e). The repository is actively maintained with recent commits, 43k+ stars, and active issue triage, though the large monorepo complexity and multi-language surface (CLJS, OCaml, Swift, Kotlin, Python, JS) create maintenance challenges.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 8 reusable components found
minad/org-modern ★ 1946 51 APPLICATION

org-modern is an Emacs Lisp package that provides a modern visual style for Org mode buffers. It uses font-lock keywords and text properties to prettify headlines, tables, source blocks, timestamps, tags, TODO keywords, priorities, checkboxes, lists, progress bars, footnotes, internal/radio targets, horizontal rules, block names, and block fringes. The package is implemented as a single-file minor mode (`org-modern-mode`) with a global variant (`global-org-modern-mode`) and an agenda styling function (`org-modern-agenda`). It relies on Emacs 29.1, Org 9.6, and the Compat library. The code is well-structured, extensively customizable via defcustom options, and follows modern Emacs Lisp conventions. It does not contain reusable components outside the Org mode context, but the implementation demonstrates high craftsmanship in leveraging Emacs' font-lock and text property systems for UI styling.

RATING: 8.5/10 MAINT: active DRIFT: low
l3kn/org-fc ★ 296 34 APPLICATION

Org-fc is a spaced repetition system implemented as an Emacs package for org-mode. It allows users to mark org-mode headlines as flashcards and review them using spaced repetition algorithms (SM2 or FSRS). The system features multiple card types (normal, double, text-input, cloze, vocab), efficient indexing via AWK scripts with caching, a dashboard for statistics, and optional extensions like audio playback and key-binding hints. The architecture is modular with clear separation between core functionality, review logic, card types, spacing algorithms, and utilities.

RATING: 8.5/10 MAINT: maintained DRIFT: low
▸ 1 reusable components found
casouri/valign ★ 518 24 APPLICATION

Valign.el is a single-file Emacs Lisp package that provides pixel-perfect visual alignment for tables in Org mode, Markdown, and table.el on GUI Emacs. It handles variable-pitch fonts, CJK characters, and images without altering the underlying text-based alignment. The core mechanism uses Emacs' display text properties and overlays to stretch spaces to calculated pixel positions, ensuring columns align correctly regardless of font metrics. The architecture is a self-contained module with generic methods (`cl-defmethod`) for different table types (Org, Markdown, table.el). The main entry point is the `valign-mode` minor mode, which hooks into `jit-lock-functions` to automatically realign tables during fontification. It also provides `valign-table` for manual alignment. The package advises several Org and Markdown functions to trigger realignment after edits, outline cycling, or text scaling. Key data flows: On fontification, `valign-region` scans for table delimiters, then for each table it calculates column widths by measuring pixel widths of cell contents, determines column alignment (left/right), and applies display properties to align cells. It also handles separator rows and fancy bar rendering. The package has no external dependencies beyond built-in Emacs libraries (`cl-lib`, `pcase`, `cl-generic`). The code demonstrates strong Emacs Lisp craftsmanship with clear separation of concerns, robust error handling, and performance considerations (e.g., skipping alignment after self-insert commands, limiting table size). It is a well-maintained, production-quality package available on GNU ELPA.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 1 reusable components found
── end of results ──
$ submit: