# gallery.badmanners.xyz

Static website built in Astro + Typescript + TailwindCSS.

## Development

### Setup

```bash
git clone https://git.badmanners.xyz/badmanners/gallery.badmanners.xyz
cd git.badmanners.xyz
npm install
```

### Local development

```bash
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.

```bash
npm run export-story -- --output-dir ~/Documents/TO_UPLOAD slug-for-story-to-export
```

### Build and deploy to remote

```bash
npm run build
```

Then, if you're using LFTP:

1. Create a new `.env` file at the root of the project:

```env
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/
```

2. Run the following command: `npm run deploy-lftp`

Otherwise, to deploy over SSH: `scp -r ./dist/* my-ssh-server:./gallery.badmanners.xyz/`