Static site for builds.kestrelsnest.social: an index page with one card per build, an rsync deploy script modelled on pantry, and the Green Man mask guide with its templates and print files. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GrX9qMoNihcWLX3xoJhabw
67 lines
2.1 KiB
Markdown
67 lines
2.1 KiB
Markdown
# Builds
|
|
|
|
Write-ups of things I've made, each with its templates, print files and a step-by-step guide.
|
|
|
|
**Live:** https://builds.kestrelsnest.social
|
|
|
|
A static site with no build step. Each build is a self-contained folder; the top-level `index.html` links to them.
|
|
|
|
## Files
|
|
|
|
```
|
|
index.html - Site index: one card per build
|
|
og-image.jpg - OpenGraph image for the index (1200 x 630)
|
|
deploy - Deployment script (rsync to server)
|
|
greenman/ - Green Man mask
|
|
index.html - The build and painting guides as one page
|
|
img/ - Photos and part renders
|
|
dl/ - Downloads: templates, guide PDFs, print files
|
|
```
|
|
|
|
## Adding a build
|
|
|
|
1. Make a folder for it, named in lowercase with no spaces (`greenman`, `atompunk`). Put its page at `<folder>/index.html`, with its images and downloads inside the folder so its links stay relative.
|
|
2. In the top-level `index.html`, copy a `<li class="build">` block to the top of the list and change the link, image, alt text, title, description and tags. The card image is cropped to 4:3, biased toward the top of the photo.
|
|
3. Run `./deploy -n` to check what will be uploaded, then `./deploy`.
|
|
|
|
## Local preview
|
|
|
|
```bash
|
|
python3 -m http.server 8000
|
|
```
|
|
|
|
Then open http://localhost:8000.
|
|
|
|
## Deployment on YunoHost (My Webapp)
|
|
|
|
### 1. Install My Webapp
|
|
|
|
In the YunoHost admin panel:
|
|
1. Go to **Applications** → **Install**
|
|
2. Search for "My Webapp"
|
|
3. Configure:
|
|
- **Label**: Builds
|
|
- **Domain/Path**: `builds.kestrelsnest.social`
|
|
- **PHP version**: none needed
|
|
- **Database**: none needed
|
|
4. Install
|
|
|
|
### 2. Point the deploy script at it
|
|
|
|
Each My Webapp gets a numbered folder on the server. Find this one:
|
|
|
|
```bash
|
|
ssh social 'ls -d /var/www/my_webapp*'
|
|
```
|
|
|
|
Set `DIR` in `deploy` to that folder's `www` directory, which for this site is `/var/www/my_webapp__3/www` (already set).
|
|
|
|
### 3. Deploy
|
|
|
|
```bash
|
|
./deploy -n # dry run
|
|
./deploy
|
|
```
|
|
|
|
The script rsyncs this folder to the server and deletes anything there that is no longer here. It skips the project's own files (`deploy`, `README.md`, `CLAUDE.md`, `.git`).
|