add AI agents files

This commit is contained in:
Benjamin Palko 2026-08-11 15:34:48 -04:00
parent 5a903af22a
commit 9b9ae5c7f5
79 changed files with 2399 additions and 23 deletions

View file

@ -1,38 +1,56 @@
# sv
# benjaminpalko.ca
Everything you need to build a Svelte project, powered by [`sv`](https://github.com/sveltejs/cli).
Personal website and blog for Benjamin Palko, built with SvelteKit and deployed on Netlify.
## Creating a project
## Stack
If you're seeing this, you've probably already done this step. Congrats!
- SvelteKit 5 / Svelte 5
- TypeScript (strict)
- Tailwind CSS 4 + daisyUI
- mdsvex markdown for blog posts
- pino (server-side logging)
- `@lucide/svelte` icons
## Prerequisites
- [mise](https://mise.jdx.dev) (or Node + the pnpm version pinned in `mise.toml`)
## Setup
```bash
# create a new project in the current directory
npx sv create
# create a new project in my-app
npx sv create my-app
pnpm install
```
## Developing
Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:
## Development
```bash
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --open
pnpm dev # start dev server
pnpm dev --open # start dev server and open the app in a browser
```
## Building
## Scripts
To create a production version of your app:
| Command | What it does |
| ---------------- | ---------------------------------------------- |
| `pnpm dev` | Start dev server |
| `pnpm build` | Production build |
| `pnpm preview` | Preview the production build |
| `pnpm check` | `svelte-kit sync` + `svelte-check` (typecheck) |
| `pnpm lint` | Prettier check + ESLint |
| `pnpm format` | Prettier write |
| `pnpm test:unit` | Vitest (watch mode) |
| `pnpm test` | Vitest (single run) |
## Blog
Posts live at `src/lib/posts/*.md` as mdsvex markdown. Follow `src/lib/posts/template.md.sample` for frontmatter (`title`, `description`, `image`, `date`, `categories`, `published`). Categories are one of `development`, `work`, `life`. The slug is the filename; only posts with `published: true` appear on the site.
See `AGENTS.md` for the full authoring workflow.
## Deployment
Netlify deploys the `main` branch automatically. The GitHub Actions PR gate (`.github/workflows/pr.yml`) runs lint, typecheck, tests, and build on every pull request using `pnpm`. Before shipping, verify locally with:
```bash
npm run build
pnpm lint && pnpm check && pnpm test && pnpm build
```
You can preview the production build with `npm run preview`.
> To deploy your app, you may need to install an [adapter](https://svelte.dev/docs/kit/adapters) for your target environment.