No description
- Added Mastodon links to "Woofer Exploration" and "Rose's Binge" - Add title texts to stories and games thumbnails on index, stories, games, and tag pages - Add descriptions and related tags to tag pages |
||
|---|---|---|
| .vscode | ||
| examples | ||
| public | ||
| scripts | ||
| src | ||
| .gitignore | ||
| .prettierignore | ||
| .prettierrc.mjs | ||
| astro.config.mjs | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tailwind.config.mjs | ||
| tsconfig.json | ||
gallery.badmanners.xyz
Static website built in Astro + Typescript + TailwindCSS.
Requirements
- Node.js 20+
- LFTP, for remote deployment script
- LibreOffice, for story export script
Development
Setup
git clone https://git.badmanners.xyz/badmanners/gallery.badmanners.xyz
cd gallery.badmanners.xyz
npm install && npm run astro -- sync
Local development
npm run dev # Start development server (quit with Ctrl-C)
npm run astro -- sync # Rebuild types from src/content/ files
npm run prettier # Prettier formatting
Export story for upload
Requires libreoffice to be installed and in your path.
npm run export-story -- --output-dir ~/Documents/TO_UPLOAD slug-for-story-to-export
Build and deploy to remote
npm run build
Then, if you're using LFTP:
- Create a new
.envfile at the root of the project:
DEPLOY_LFTP_HOST=https://example-webdav-server.com
DEPLOY_LFTP_USER=example_user
DEPLOY_LFTP_PASSWORD=sup3r_s3cr3t_password
DEPLOY_LFTP_TARGETFOLDER=sites/gallery.badmanners.xyz/
- Run the following command:
npm run deploy-lftp
Otherwise, to deploy over SSH: scp -r ./dist/* my-ssh-server:./gallery.badmanners.xyz/