A small, hand-checked directory of tools, references and files. Every one opened by a person.

        Reading · Updated 2026-09-23

        Adding a resource (maintainer notes)

        The two-minute routine for getting something new onto the site.

        This is the note to yourself for six months from now, when you have forgotten where things live.

        Open src/data/resources.yaml, copy the last entry, edit it:

        - type: link
          title: The thing
          description: >-
            One or two sentences. Say what it is and why it beats the alternative.
          url: https://example.com
          source: Publisher name
          category: tools
          tags: [free, reference]
          added: 2026-09-23

        Commit and push. Netlify rebuilds and the entry is live in under a minute.

        A file you host

        Drop the file into public/files/, then add an entry pointing at it:

        - type: file
          title: The template
          description: What it is for and who it is for.
          url: /files/the-template.pdf
          format: PDF
          size: 480 KB
          category: templates
          tags: [template]
          added: 2026-09-23

        Keep repository files under about 25 MB each. Anything larger — or anything you expect to be downloaded heavily — belongs on object storage instead. Upload it to a bucket and put the full URL in url; everything else about the entry stays identical.

        A guide

        Create a new .md file in src/content/guides/. The filename becomes the URL. Copy the frontmatter block from the top of this file and change the values. draft: true keeps it off the site while you work on it.

        When the build fails

        Almost always one of two things:

        • An unknown category. Categories are fixed in src/data/categories.ts. Add it there first, then use it.
        • A missing required field. The error message names the entry number and the field.

        Both fail at build time on purpose — a broken entry never reaches the live site, it just blocks the deploy until you fix it.

        ← All guides