This repo contains the source code for my personal website.
The site is built with Astro. It was initially generated from the Astro Portfolio theme with pnpm (pnpm create astro@latest -- --template portfolio). Note that a node_modules folder will still be created even if using pnpm. This is expected behavior - pnpm will link the contents of the folder to its content-addressable store.
Commands in package.json can be run from a terminal at the root of the project. Commands include:
| Command | Action |
|---|---|
pnpm install |
Install dependencies |
pnpm run dev |
Start local dev server at localhost:4321 (use --port to change default port) |
pnpm run build |
Build production site to ./dist/ |
pnpm run preview |
Preview build locally before deploying |
pnpm run astro ... |
Run CLI commands like astro add, astro check |
pnpm run astro -- --help |
Get help using the Astro CLI |
pnpm -s dlx @astrojs/upgrade |
Update Astro and related dependencies |
Media assets and other large files are stored with Git LFS.
- The site is deployed with GitHub Pages to br3ndonland.github.io using a GitHub Actions workflow. The
astro buildstep includes--site "https://${GITHUB_REPOSITORY##*/}"so that the site URL can be set for GitHub Pages without having to hard-code it in the Astro config file. - The site is also deployed with Vercel to other domains including bws.bio.
Content in this repository authored by Brendon Smith is licensed under CC BY-SA 4.0. Why?
- The repository is mostly prose and personal content. CC BY-SA allows the author to retain copyright and encourages attribution of creative content. Wikipedia uses this license.
- The software code in this repository is not intended for reuse, so the
package.jsonlists the source code asUNLICENSED. However, if the need to adapt the source code ever arises, CC BY-SA 4.0 is one-way compatible with GPLv3 (CC BY-SA 4.0 -> GPLv3), allowing source code to be relicensed under GPLv3 if necessary. See the Creative Commons compatible licenses page for further details. It should also be noted that, although CC BY-SA licenses are not generally recommended for software, CC BY-SA 4.0 is listed on the Software Package Data Exchange (SPDX) with identifierCC-BY-SA-4.0, and SPDX-listed licenses can be used with npm inpackage.json.