2025-07-10 15:38:09 +01:00
|
|
|
# Systems Obscure
|
2025-07-07 17:08:27 +01:00
|
|
|
|
2025-07-10 14:58:59 +01:00
|
|
|
> My personal blog at
|
|
|
|
> [https://systemsobscure.net](https://www.systemsobscure.net)
|
2025-07-07 17:08:27 +01:00
|
|
|
|
2025-07-10 15:33:04 +01:00
|
|
|
## Pre-build
|
|
|
|
|
|
|
|
```sh
|
|
|
|
npm run build:posts
|
|
|
|
```
|
|
|
|
|
|
|
|
Parse Markdown blog posts in `/posts` and generate JSON index which is used to
|
|
|
|
populate core content.
|
|
|
|
|
|
|
|
## Development server
|
|
|
|
|
|
|
|
```sh
|
|
|
|
npm run build:posts
|
|
|
|
npm run dev
|
|
|
|
```
|
|
|
|
|
2025-07-07 17:08:27 +01:00
|
|
|
## Build
|
|
|
|
|
|
|
|
```sh
|
2025-07-10 15:33:04 +01:00
|
|
|
npm run build:posts
|
2025-07-07 17:08:27 +01:00
|
|
|
npm run build
|
|
|
|
```
|
|
|
|
|
|
|
|
This runs `vite build` using [speedy web compiler](https://swc.rs/) for the
|
|
|
|
transpilation of TSX to JSX. I am using TypeScript so that I can use the
|
|
|
|
[shadcn](https://ui.shadcn.com/) component library however I don't actually care
|
|
|
|
about types in this project and all my components are written as JSX. SWC
|
|
|
|
transpiles very quickly without throwing TS warning and errors.
|
|
|
|
|
2025-07-10 15:33:04 +01:00
|
|
|
## Deploy
|
2025-07-07 17:08:27 +01:00
|
|
|
|
2025-07-10 15:33:04 +01:00
|
|
|
Deployment automated via
|
|
|
|
[Forgejo action](https://forgejo.org/docs/next/user/actions/reference/). See
|
|
|
|
[deploy.yml](https://forgejo.systemsobscure.net/thomasabishop/systems-obscure/src/branch/main/.forgejo/workflows/deploy.yaml).
|
2025-07-07 17:08:27 +01:00
|
|
|
|
2025-07-10 15:33:04 +01:00
|
|
|
Runs the build script, then transfers transpiled `dist/` directory to my
|
|
|
|
[Virtual Private Server](https://forgejo.systemsobscure.net/thomasabishop/self-host)
|
|
|
|
from where it is served at
|
|
|
|
[systemsobscure.blog](https://www.systemsobscure.blog).
|