✨ forbidden knowledge and everything everywhere all at once
  • Nix 72.2%
  • Shell 27.8%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-15 23:25:17 +02:00
.moira Run publish on x86_64-linux agents 2026-10-13 22:57:02 +02:00
.noita Validate frontmatter of every note 2026-10-14 00:15:22 +02:00
languages Port Japanese into a new Languages realm 2026-10-14 00:11:15 +02:00
science Give every element family its own colour on the periodic table 2026-10-14 01:34:27 +02:00
scripts Add Technology portal and check schemas with noita 2026-10-13 22:47:41 +02:00
technology Merge branch 'main' of git.hydrar.de:jmarya/knowledge 2026-10-15 23:25:17 +02:00
.gitignore feat: better emulator schema 2025-11-30 12:52:29 +01:00
flake.lock Bump noita to 7d8810a 2026-10-14 01:33:18 +02:00
flake.nix Add Technology portal and check schemas with noita 2026-10-13 22:47:41 +02:00
Guide.md Add Technology portal and check schemas with noita 2026-10-13 22:47:41 +02:00
Meta.md refine schema and prune Ansible reference sprawl 2026-06-05 01:06:19 +02:00
README.md Port Japanese into a new Languages realm 2026-10-14 00:11:15 +02:00
schema.json Add element notes and a live periodic table to Chemistry 2026-10-14 01:34:26 +02:00

██   ██ ███    ██  ██████  ██     ██ ██      ███████ ██████   ██████  ███████ 
██  ██  ████   ██ ██    ██ ██     ██ ██      ██      ██   ██ ██       ██      
█████   ██ ██  ██ ██    ██ ██  █  ██ ██      █████   ██   ██ ██   ███ █████   
██  ██  ██  ██ ██ ██    ██ ██ ███ ██ ██      ██      ██   ██ ██    ██ ██      
██   ██ ██   ████  ██████   ███ ███  ███████ ███████ ██████   ██████  ███████ 

knowledge

knowledge is a personal knowledge base. Its genesis lies in my desire to capture almost everything I know in one place, structured and searchable for easy retrieval.

Principles

  • Typed — every note carries at least one kind (application, concept, operating-system,
    format, …) with structured frontmatter defined by schema.json and described in
    Meta.md. The kind is implicit: whichever kind-object is present is the note's type.
  • Derivable — index and overview pages ("meta views") are meant to be generated from that
    frontmatter rather than hand-maintained. Add a note with the right data and the rollups follow.
  • Plain & portable — notes are plain-text markdown with relative
    links between them. No editor lock-in; any markdown editor works.
  • Published — the repository is rendered to a static website with
    noita (noita export).

Topics

Workflow

  • Tooling: noita is the workspace — open the repo as a
    vault to edit, query and browse it, and noita check validates frontmatter against the schema
    and finds dead links. jsaw queries notes as a table
    (jsaw db), renders meta views from data (jsaw render), and patches frontmatter
    (jsaw patch). The dev environment is declared in flake.nix; run nix develop
    to get both.
  • Search:
    • ripgrep — full-text search across note content.
    • jsaw db — query notes by their frontmatter metadata.
  • Editing: noita, or any markdown editor. Obsidian and
    VSCode work, but nothing relies on
    editor-specific features — the repo stands on its own.
  • Browsing: the published site, or online via Gitea.

Contributing

If you want to contribute or fix some notes, take a look at these files:

  • Guide.md — a guide and checklist for adding and maintaining notes consistently.
  • Meta.md — describes schema.json, the frontmatter format every note follows.