this is my website. it's a static site built with React. i use it for personal details and blogging.
yarn
yarn devthe code is split into several packages using Yarn workspaces:
./apps/vivsha.ws— the Next.js app for the site./packages/basalt— the Basalt design system (components, tokens, CSS reset)./packages/basalt-mdx— prebuilt MDX components styled with Basalt
content lives outside the code in separate top-level folders, for a distraction-free writing environment:
./posts— blog posts (one directory per post, each with apost.mdx)./pages— standalone pages like about and colophon
these scripts should be run from the monorepo root:
| command | what it does |
|---|---|
yarn dev |
start the Next.js dev server |
yarn build |
build the static site |
yarn typecheck |
typecheck all packages |
yarn format:all |
format everything with Prettier |
yarn new:post |
scaffold a new blog post via hygen |
see the individual packages for package-level commands.
vivsha.ws is a fully static app. it's deployed via this GitHub Action to GitHub Pages.
i wanted vivsh.aw but that proved annoying, so i settled for vivsha.ws. read it like: "vivshaw's", as in "vivshaw's webbed sight".
a few reasons, both related to the requirements for GitHub user pages
- i used to host my blog at that URL, and i would like it to continue working, with a redirect to my new URL.
- i'd prefer all my GitHub Pages to live under
vivsha.ws.
the easiest way to accomplish these things is by setting a custom domain for my user site.