2026-02-11 23:22:31 -08:00
|
|
|
# Lofty Landing Page
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
Pre-launch landing page for **The Lofty Project**, a 501(c)(4) connecting creative talent with leftist organizing.
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
## Stack
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
Astro 5 (static output), TypeScript, Bun
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
## Development
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
```sh
|
|
|
|
|
bun install # Install dependencies
|
|
|
|
|
bun run dev # Dev server at localhost:4321
|
|
|
|
|
bun run build # Static build to dist/
|
|
|
|
|
bun run preview # Preview production build
|
2026-02-11 16:49:59 -08:00
|
|
|
```
|
|
|
|
|
|
2026-02-12 00:00:10 -08:00
|
|
|
## Deployment
|
|
|
|
|
|
|
|
|
|
Deploys to Cloudflare Pages via Gitea Actions on push to `main`. To deploy manually:
|
|
|
|
|
|
|
|
|
|
```sh
|
|
|
|
|
bun run deploy # Build + deploy to Cloudflare Pages
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Requires `CLOUDFLARE_API_TOKEN` and `CLOUDFLARE_ACCOUNT_ID` (set as Gitea secrets for CI, or via `wrangler login` locally).
|
|
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
## Linting & Formatting
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
```sh
|
|
|
|
|
bun run lint # Check for issues
|
|
|
|
|
bun run lint:fix # Auto-fix issues
|
|
|
|
|
bun run format # Format all files
|
|
|
|
|
```
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
## Commits
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
Uses conventional commits enforced by commitlint + lefthook.
|
2026-02-11 16:49:59 -08:00
|
|
|
|
2026-02-11 23:22:31 -08:00
|
|
|
```sh
|
|
|
|
|
bun run commit # Guided commit via commitizen
|
|
|
|
|
```
|