My personal website built with Astro and deployed on Cloudflare pages.
- Astro - Web framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- Cloudflare - Hosting
- Vitest - Testing
- Biome - Linting and formatting
- AT Protocol API - Bluesky integration
This project uses pnpm as the package manager. Make sure you have it installed before proceeding.
- Node.js 24
- pnpm 10
-
Clone the repository
git clone git@github.com:Johannes-Andersen/Johannes.git # Using SSH git clone https://github.com/Johannes-Andersen/Johannes.git # Using HTTPS gh repo clone Johannes-Andersen/Johannes # Using GitHub CLI
-
Cd into the repo and install dependencies
cd Johannes pnpm install -
Create a
dev.varsfile in the root directory and add your environment variables. You can usedev.vars.exampleas a reference.cp .dev.vars.example .dev.vars
-
Start the development server
pnpm dev
pnpm dev- Start development serverpnpm build- Build for productionpnpm deploy- Build and deploy to Cloudflarepnpm preview- Build and preview locally with Wranglerpnpm test- Run testspnpm type-check- Check TypeScript typespnpm lint- Lint codepnpm lint:fix- Lint and fix codepnpm format- Check formattingpnpm format:fix- Format codepnpm check- Check code with Biomepnpm check:fix- Check and fix code with Biome