Visitar URL original
GitHub - zmdavis/zdav.is: Personal site and notes. A garden that keeps growing while you ignore it. · GitHub
Skip to content
zmdavisPublic

About

Personal site and notes. A garden that keeps growing while you ignore it.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

zdav.is

Personal site and notes for Zach Davis. A garden that keeps growing while you ignore it.

Notes are Markdown files. Their age comes from git. Their size comes from their word count. Nothing is declared; everything is derived at build time.

Nature computes. The gardener commits.

Stack

Astro (static output), TypeScript strict, plain CSS with custom properties. No UI framework. pnpm.

pnpm install
pnpm dev        # http://localhost:4321
pnpm plant "A title"   # start a new note
pnpm build      # static site in dist/
pnpm preview
pnpm format     # prettier

How to plant

  1. pnpm plant "A title" makes src/content/notes/a-title.md. Write under the frontmatter.
  2. Commit it and push to main. The site is live about a minute later.

That is the whole publish flow. The first commit that adds the file is the planted date. The latest commit that touches it is the tended date.

A note you have not pushed is a draft. pnpm dev shows it to you; nobody else can see it.

Away from the laptop, GitHub's web editor works too: open src/content/notes, choose Add file, write, and commit to main.

Optional frontmatter:

key meaning
planted Date. Overrides the first-commit date.
tended Date. Overrides the last-commit date. For samples and imports only.
tier whim, thought, or post. A hold-down override; if present, it wins.
from List of slugs this note was planted from. Shown as "Planted from".
sample true shows the note only in pnpm dev, never on the live site.

src/content/now.md is one handwritten line shown on the home page. No date, no frontmatter.

Tiers and ages

Tier comes from word count. Age comes from days since the note was last tended.

tier words
whim fewer than 80
thought fewer than 600
post 600 or more
age days since tended
fresh fewer than 30
settled fewer than 180
wilting fewer than 365
overgrown 365 or more

A note that is no longer fresh and is listed in another note's from becomes soil on the garden page.

Whims show their full text wherever they are listed. Thoughts show only a title. Posts show a title and a short excerpt.

Designs

The markup never changes. Designs are CSS files that restyle it.

  • src/styles/designs/<id>.css, every rule scoped under html[data-design="<id>"].
  • src/designs/<id>.ts, exporting { id, name, blurb, fonts }.

Both are picked up automatically. The default is set in src/site.config.ts. To try another one, add ?design=<id> to any URL, or use the switcher in the footer when running pnpm dev (it remembers your pick in localStorage).

Two flourishes stay hidden unless a design styles them: .wordmark-more, which finishes the sentence the domain starts based on how fresh the garden is, and .weather on the garden page, which is whatever the season is doing drifting past.

To screenshot a design on every route, in light and dark, desktop and phone:

pnpm shots --design <id>

PNGs land in .shots/<id>/. This uses the Google Chrome already installed on the machine; no browser download.

Publishing

.github/workflows/deploy.yml builds the site and deploys it to GitHub Pages at zdav.is (the domain is in public/CNAME). It runs on every push to main, and again every morning, because notes age and seasons turn even when nothing is committed.

Dates come from git, so the build needs full history. CI checks out with fetch-depth: 0, and a production build refuses to run in a shallow clone rather than publish wrong dates.

DNS for zdav.is points at GitHub Pages:

type host value
A @ 185.199.108.153, 185.199.109.153, 185.199.110.153, 185.199.111.153
CNAME www zmdavis.github.io.

Samples

The notes marked sample: true exist so every age state is visible while designing. They appear in pnpm dev and pnpm shots, never in a production build. Delete them whenever you like.

About

Personal site and notes. A garden that keeps growing while you ignore it.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages