Main website Mk. II
Find a file
2025-08-17 23:34:07 -07:00
src fix: Rename all links #bio to #about 2025-08-13 11:12:49 -07:00
static feat: Add robots.txt 2025-06-22 16:27:55 -07:00
tests fix: Rename all links #bio to #about 2025-08-13 11:12:49 -07:00
.gitignore fix: Add pre-commit-config.yaml 2024-09-29 00:14:24 -07:00
.pre-commit-config.yaml doc: Documentation about metadata.json 2024-11-05 11:55:27 -08:00
components.json chore: Eslint and pre-commit hooks 2024-09-28 23:59:37 -07:00
eslint.config.js chore: Eslint and pre-commit hooks 2024-09-28 23:59:37 -07:00
flake.lock feat: Research cover page 2025-07-25 11:27:29 -07:00
flake.nix feat: Research cover page 2025-07-25 11:27:29 -07:00
package.json feat: Research cover page 2025-07-25 11:27:29 -07:00
playwright.config.ts feat: Initial site stub 2024-09-11 00:51:05 -07:00
pnpm-lock.yaml feat: Research cover page 2025-07-25 11:27:29 -07:00
postcss.config.js feat: Add shadcn based navbar 2024-09-11 07:54:39 -07:00
README.md fix: Reactivity problems in /research 2025-08-01 12:01:08 -07:00
svelte.config.js feat: Read highlighter languages from metadata 2024-11-05 11:50:00 -08:00
tailwind.config.ts feat: Use less intensive colour for dark mode code 2024-10-16 17:20:15 -07:00
tsconfig.json feat: Blog catalog 2024-09-13 23:20:07 -07:00
vite.config.ts feat: Research cover page 2025-07-25 11:27:29 -07:00

Chrysoblog

A blog framework

Building

To create the production version,

pnpm run build

You can preview the production build with pnpm run dev --open.

Content

To insert custom content, create a directory with a similar structure to src/content, and set the environment variable CHRYSOBLOG_CONTENT to that directory. The website will be built statically in build/. Note that changing favicon.svg will require modifying the static/ folder.

Set metadata.json based on the example to have a custom avatar and background image.

  • name: Displayed name on the home page
  • blogName: Displayed name of the blog
  • url: The site url
  • frontDescription: The text above the main navbar
  • picture: Avatar
  • links: A map of brands to links
  • extra: Extra pages showing on the navbar
  • markdown: { "highlighterLangs": [ ... ], "katex": [ ... ] }

Developing

Install pre-commit.

Install dependencies with pnpm install. Then start the dev server with

pnpm run dev [-- --open]

Formatting

pnpx eslint

Testing

To run tests

pnpx playwright test

All tests must have the suffix .spec.[jt]s. Be cautious while updating playwright since the versions in nixpkgs and node must exactly match.

SVG Assets

For SVG assets in Inkscape, export the asset using the export panel instead of "Save As". This preserves special effects such as blurring.

For full screen assets: Delete the width and height attributes on the root tag after exporting SVGs.