-
v1.0.0-Beta.03
Pre-releasereleased this
2026-09-01 12:19:13 +02:00 | 76 commits to main since this releaseNative status bar and a cleaner hero
Added
- The mascot is the project's icon. The browser tab, the installed app's icon,
the logo on the README and the face on the sign-in and setup screens are now
one drawing rather than four things that could drift. scripts/icon.ts, which builds that icon out of the running application
rather than from a second copy of the same curves.- A
.dockerignore. Without one the whole working tree went to the daemon on
every build — 286 MB down to 4.2 MB, measured, and more to the point a stray
database in the tree is somebody's training and has no business inside an
image that gets pushed to a registry. - A container image, built and pushed on every tag.
:betawhile there is no
stable release;latestis only ever moved by a stable one, deliberately, so
nobody pulling it lands on a prerelease. It is built without a signing key, so
the binary inside refuses to update itself — updating a container is pulling a
new image. scripts/screenshots.ts, and the screenshots it takes. Never by hand: a
screenshot taken by hand is whatever the window happened to be that afternoon.
It refuses to run if the server is not answering, because otherwise it
photographs the offline screen out of the service worker's cache and nothing
fails..env.example, for the container path. Every variable in it is one the server
actually reads, checked against the config package.- A test that everything the binary redistributes is named in NOTICE. Apache-2.0
requires the attribution, and a NOTICE is exactly the kind of file that stops
being true when a dependency arrives through another dependency.
Changed
-
The README, CONTRIBUTING and SECURITY files follow the same shape as the
other CodigoSH projects: the centred header with the logo, the badges and the
screenshots; "How Development Works" and "Join the Team"; and a security
policy that leads with how updates are delivered and ends with how to report
something. The substance is this project's own — it signs its releases and
says what its threat model does not cover — but the shape is the house's. -
The README carries the house blocks verbatim: Support & Recognition with its
three parts, and the signature line every CodigoSH repository ends with. Those
are the organisation's, not this project's, and they now diff clean against
Lastboard's. Its sections and badges line up one for one, and the picture at
the top is a composed hero — the name and a headline down the left, the
application on the right with rounded corners and a shadow — built by
scripts/mockup.shfrom the screenshots, at the same 3200×1800 as the other
projects. -
The README is a third shorter and stops repeating the documentation. What it
said about the first-run token was two versions out of date — the token was
removed — and what it said about the languages was one: all twenty are
translated, and what fourteen of them are missing is the plural forms. -
Screenshots are taken in English and dark, from an account seeded for the
purpose and deleted afterwards. Pointed at an account seeded weeks earlier the
home screen showed a line falling to zero and the calendar an empty month:
both true, both a poor picture of what the application does. -
deploy/compose.yamlisdocker-compose.ymlat the root, where the other
projects keep theirs. -
Releases are cut with CodigoSH's release script — Lastboard's, the same file
in every project, with a CONFIGURATION block at the top for the handful of
things that genuinely differ: which files carry the version, what the
preflight runs, and where the notes come from. Everything below that block is
byte-for-byte the same, so a fix made in one project is a file copied to the
others. -
scripts/release.sh beta "the headline"checks the tree is clean and level
with the remote, runs the whole suite before anything is written, works out
the next version, stamps it, writes the notes, tags and pushes — the tag
last, because the tag is what CI builds from.--dry-runprints every
decision and writes nothing. -
The two halves of a release are two scripts.
scripts/release.shis the one
a person runs;scripts/build-artefacts.shis the one CI runs, and it is
where the signing key is needed — a release cut from a laptop should not need
one on that laptop. -
The version lives in
package.jsonand is stamped there by the release
script, the way it is in Lastboard.
Fixed
- The status bar of the installed application is the colour of the canvas
instead of the accent. On a phone it was painting an orange band across the
top of a dark screen, which is a browser announcing itself in the one place
an installed application is supposed to look like it owns the whole screen.
It follows light and dark on its own with no script, and a theme chosen by
hand beats the one the phone is set to. - Scrollbars are gone on a touch screen. They were a desktop affordance
inherited whole, and no application on a phone draws one. - The screenshots are taken with touch emulation on. Setting a phone-sized
viewport does not change the input device, so the pictures were still being
rendered as though a mouse were pointing at them — the scrollbar came back in
them while being correctly absent on a real phone. The script now refuses to
run if the page reports a fine pointer. - The two phones on the README's hero image are placed by their screen rather
than by their shadow. The blur spills out on every side, so compositing the
file at a coordinate put the shadow there and the phone somewhere else, which
is what pushed the second phone against the edge of the picture and made it
look cropped. They have a bezel now, and the feature pills are spaced from
their own measured widths instead of from three numbers written by hand.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- The mascot is the project's icon. The browser tab, the installed app's icon,