Write down the standing decisions, and start a changelog

The rules this project is worked under — Docker for the backend, straight
to main, no backup feature because the host is backed up, the encryption
stays, no public sign-up — lived only in a conversation. They belong in
the repository, where they survive it.

The changelog answers a question the commit messages cannot: what is
actually running on the server. It carries the image digests, read back
from the registry rather than taken from the push output.

The readme described the note column as left-aligned. It is centred
again.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
marcandClaude Opus 5 committed 2026-08-11 18:38:58 +02:00
1 parent dcc42bb8e0
commit 73cc28696f
3 files changed
+218 -5

No files matched your search

+14 -5
View File
@@ -47,6 +47,8 @@ inknote/
├── docker-compose.dev.yml # Build from source for local work
├── .env.example # Copy to .env — Compose reads it from here
├── build.sh # Build & push images to Gitea
├── CHANGELOG.md # What changed per released image, with digests
├── CLAUDE.md # Conventions and standing decisions for this repo
├── backend/
│ ├── server.js # Express API + WebSocket server
│ ├── sync-client.js # Client-side sync engine library
@@ -371,10 +373,17 @@ state of their own, so they can be read on their own.
## Setting a note
**Left-aligned, with the column against the margin.** A column that floats in the
middle moves as the window is resized, so the start of every line lands somewhere
new; against the margin it is always in the same place. About 73 characters to
the line — measured, not guessed.
**A centred column, about 73 characters to the line** — measured, not guessed.
Past roughly 84 the eye stops reliably finding the start of the next line, so the
column is capped well before the pane runs out.
It was pinned to the left margin for a while, on the reasoning that a column
which floats in the middle moves as the window is resized. True, but it traded
that for something worse: on a wide window the entire right half of the pane
became one dead block. A page surface was then drawn behind the text to give that
block a meaning, which only moved the problem — the whole sheet sat hard against
the left edge. Centred, the same leftover space reads as two margins and needs no
explaining.
**The typeface is a per-account setting** (Account → Profile): serif, sans or
mono. On the account rather than in the browser, because a choice about how your
@@ -383,7 +392,7 @@ every device. The server accepts those three values and drops anything else —
that column is written by a browser, so it is an input like any other.
**Pages are counted, not stored.** The toolbar says *Page 2 of 4* in the same
words the PDF reader uses, and a hairline marks where each one ends. A page is
words the PDF reader uses, and a dashed rule marks where each one ends. A page is
the same 3:4 the canvas uses, so "page 2" means the same thing writing or
drawing. The note itself stays one continuous document — Markdown has no page,
and a test asserts none ever reaches the stored body. The current page is the one