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 build
step 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.json
lists 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
.