# 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 `/index.html`, with its images and downloads inside the folder so its links stay relative. 2. In the top-level `index.html`, copy a `
  • ` 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`).