db5a6046477108ca8618fb541add85407d20fb62
Landscape images (imported video frames, slide pages) would lose most of the picture in a 3:4 crop, so the tile keeps its monogram; portrait and near-square images (w/h <= 1.05) fade in over it, cropped from the centre. The header nav follows the mockup's segmented-control style: muted text, no underline, the current area raised in accent. Co-Authored-By: Claude Opus 5.5 <[email protected]>
STCourses
STCourses is a self-hosted course platform. Homelabbers, universities and companies host their own courses, plus material they already own such as Packt video packages or Pluralsight slide PDFs, in one place that tracks progress. Authors write in Markdown in a git repo or in a browser studio; both edit the same files. Each install has one owner and is not multi-tenant.
Development
bun install # install workspace dependencies
bun test # run all tests
bun run typecheck # tsc --noEmit
bun run dev # start the server with hot reload
Running it
STC_SECRET=... docker compose up -d (add --profile postgres and STC_DATABASE_URL for Postgres). Mounts,
configuration and the measured memory budget are in docs/operations.md.
License: AGPL-3.0-only.
Languages
TypeScript
97.8%
CSS
1.7%
Dockerfile
0.2%
Python
0.1%