33 lines
905 B
Markdown
33 lines
905 B
Markdown
|
# Systems Obscure
|
||
|
|
||
|
> Another software engineer with a blog
|
||
|
|
||
|

|
||
|
|
||
|
## Build
|
||
|
|
||
|
```sh
|
||
|
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.
|
||
|
|
||
|
I still use Vite's native `esbuild` for HMR transpilation in development.
|
||
|
|
||
|
## Scripts
|
||
|
|
||
|
### Generate post index
|
||
|
|
||
|
```sh
|
||
|
npm run build:posts
|
||
|
```
|
||
|
|
||
|
This runs `scripts/generate-post-index.js` which reads all raw Markdown posts in
|
||
|
`/posts` and parses the body content and YAML front-matter. It then writes this
|
||
|
data to `public/post-index.json` which is read by the React application at
|
||
|
runtime.
|