Index copy no longer promises templates or print files for every build. Add tip jar link and back links from the Green Man page to the index. Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GrX9qMoNihcWLX3xoJhabw
68 lines
2.4 KiB
Markdown
68 lines
2.4 KiB
Markdown
# Kestrel's Builds
|
|
|
|
Write-ups of things I've made, each with a guide and whatever files that project needs.
|
|
|
|
**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 an `<a class="build">` card to the top of the list and change the link, image, alt text, title and the three lines of text. The newest build carries the extra class `first`, which gives it the full-width card; take `first` off the one it replaces. Card images are cropped to fit, so set `object-position` for the new image as `.greenman` does.
|
|
3. Give the new build's page a link back to the index, as `greenman/index.html` has at its top and bottom: `<a href="../">← Kestrel's Builds</a>`.
|
|
4. 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`).
|