Launch Demo
Why This Guide Exists
Section titled “Why This Guide Exists”Most template quickstarts assume you want to deploy immediately. This guide respects that you might just want to see it work first.
No configuration. No customization. No deployment. Just: “Does this thing actually run?” ✅
🎯 What You’ll Accomplish
Section titled “🎯 What You’ll Accomplish”Time Required: 5-10 minutes
Section titled “Time Required: 5-10 minutes”- Template installed locally
- Development server running
- Demo site viewable at localhost:4321
- Ready to explore or customize
✅ Prerequisites
Section titled “✅ Prerequisites”Already a developer? You probably have these. Quick check:
node --version && pnpm --version && git --versionNew to this? You’ll need three free tools:
- Node.js 22+ - JavaScript runtime (active LTS until April 2027) (get it)
- pnpm 10+ - Fast package manager (install:
corepack enable && corepack prepare pnpm@latest --activate) - Git 2.30+ - Version control (get it)
⏱️ 5-10 minutes if installing from scratch
⚡ Quick Start
Section titled “⚡ Quick Start”Step 1: Create Your Project (2 min)
Section titled “Step 1: Create Your Project (2 min)”# Create from template (uses latest Astro CLI v5.x)pnpm create astro@latest my-site --template clownware/astro-starter-template
# Navigate into projectcd my-siteStep 2: Install & Start Dev Server (3-5 min)
Section titled “Step 2: Install & Start Dev Server (3-5 min)”# One command to rule them allpnpm install && pnpm run dev
# ⏱️ 3-5 minutes total# Grab coffee ☕ — the first install takes a minute# You'll see a localhost URL when readyExpected Output:
🚀 astro v5.x.x started in XXXms
┃ Local http://localhost:4321/ ┃ Network use --host to exposeStep 3: Verify Installation (1 min)
Section titled “Step 3: Verify Installation (1 min)”- Open browser to
http://localhost:4321 - You’ll see the starter template homepage
- Try the example landing page:
http://localhost:4321/examples/landing
✅ Success! You’re locked in.
Visual confirmation: You should see a clean, modern homepage with:
- Header with navigation
- Hero section with gradient background
- Feature cards
- Dark mode toggle (try it!)
🗺️ What Just Happened?
Section titled “🗺️ What Just Happened?”You now have:
- ✅ A complete Astro site running locally
- ✅ Live reload on every save
- ✅ Production-grade components and patterns
- ✅ A design system you can customize
But you haven’t changed anything yet. This is the template as-is. Your next move determines what you build.
💡 Before You Start Editing
Section titled “💡 Before You Start Editing”Three things that’ll save you headaches:
- Hot Reload Works - Save any file and see changes instantly (except config files)
- Design Tokens Auto-Compile - Edit
tokens/*.json, save, and changes apply automatically - Path Aliases FTW - Use
@/components/Buttonnot../../components/Button
🔍 What You Have
Section titled “🔍 What You Have”Project Structure
Section titled “Project Structure”TL;DR: Standard Astro project with:
- Components organized by atomic design (atoms → molecules → organisms)
- Type-safe content collections (blog posts, projects with validation)
- Token-based design system (change colors/fonts in one place)
- Zero-config dark mode (respects system preferences)
Full Directory Structure
my-site/├── src/│ ├── components/ # UI components (atoms, molecules, organisms)│ │ ├── atoms/ # Basic elements (Button, Input)│ │ ├── molecules/ # Simple combos (Card, FormField)│ │ ├── organisms/ # Complex sections (Header, Hero)│ │ └── structural/ # Layout components (Container, Section)│ ├── layouts/ # Page layouts (BaseLayout.astro)│ ├── pages/ # Routes (index.astro, 404.astro)│ ├── content/ # Content collections (blog, projects)│ ├── styles/ # Global styles│ └── utils/ # Helper functions├── public/ # Static assets (favicon, images)├── tokens/ # Design tokens (colors, typography)├── astro.config.mjs # Astro configuration├── tailwind.config.mjs # Tailwind configuration└── package.json # Dependencies and scriptsKey Features Included
Section titled “Key Features Included”| Feature | Benefit |
|---|---|
| Zero-JS by default | 95+ Lighthouse scores out-of-box, blazing fast load times |
| Token-based design | Single-file customizations (change colors/fonts in one place) |
| Content collections | Type-safe MDX with validation (catch errors before deploy) |
| Dark mode | Automatic system preference detection (zero config needed) |
| Accessibility | WCAG AA compliant components (keyboard nav, ARIA, contrast) |
| TypeScript | Strict mode with path aliases (catch bugs at compile time) |
| Tailwind CSS | Utility-first styling with design tokens (rapid prototyping) |
Available Commands
Section titled “Available Commands”pnpm run dev # Start dev server (auto-compiles tokens first)pnpm run build # Build for production (tokens + Astro) - automatedpnpm run preview # Build + serve production build locallypnpm run build:tokens # Compile design tokens only (manual)pnpm run check # Type-check TypeScriptpnpm run format # Format code with Biomepnpm run lint # Lint code with BiomeNote: pnpm run build:full exists as an alias for build, but it’s not necessary.
🎓 Next Steps
Section titled “🎓 Next Steps”Choose your path based on your goals:
Path A: Deploy Now ⚡
Section titled “Path A: Deploy Now ⚡”Ready to make it yours and go live?
- Personalize branding (20-30 min)
- Deploy to production (15-20 min)
- Custom domain setup (optional)
- Total time: 45-75 minutes
Path B: Explore First 🔍
Section titled “Path B: Explore First 🔍”Want to understand the template before customizing?
→ Directory Structure
→ What’s Included
→ FAQ
- Learn the architecture
- Explore components
- Review design tokens
- Understand the build system
Path C: Start Building 🛠️
Section titled “Path C: Start Building 🛠️”Jump into development immediately?
→ Creating Your First Page
→ Component Patterns
→ Content Collections
- Add new pages
- Customize components
- Work with content collections
- Build custom features
Path D: Full Implementation 📚
Section titled “Path D: Full Implementation 📚”Want the complete guided experience?
→ MVP Track Guide (2-3 weeks)
→ Showcase Track Guide (4-6 weeks)
- Complete all 12 phases
- Production-ready features
- Performance optimization
- Advanced patterns
🆘 Troubleshooting
Section titled “🆘 Troubleshooting”Common Issues (80% of problems)
Section titled “Common Issues (80% of problems)”Port already in use
Section titled “Port already in use”# Use a different port (works everywhere)pnpm run dev -- --port 3000Styles missing or broken
Section titled “Styles missing or broken”# Tokens auto-compile on dev start, but you can force it:pnpm run build:tokenspnpm run devModule not found errors
Section titled “Module not found errors”rm -rf node_modules pnpm-lock.yaml && pnpm installLess Common Issues
Section titled “Less Common Issues”Build fails during token compilation
Section titled “Build fails during token compilation”Cause: Missing or corrupted token files
Fix:
# Verify token files existls -la tokens/
# Should see: base.json, semantic.json# If missing, re-clone the templateKill process using the port (alternative)
Section titled “Kill process using the port (alternative)”# macOS/Linux:lsof -ti:4321 | xargs kill -9
# Windows:netstat -ano | findstr :4321taskkill /PID <PID> /F“Cannot find package ‘@astrojs/…’”
Section titled ““Cannot find package ‘@astrojs/…’””Cause: Astro integrations not installed
Fix: Reinstall dependencies (see “Module not found” above)
Red squiggly lines in VS Code
Section titled “Red squiggly lines in VS Code”You’re seeing: TypeScript errors or warnings in your editor
Cause: Editor’s TypeScript server needs to catch up
Fix:
# Generate fresh typespnpm run check
# Then restart TypeScript in VS Code:# Cmd/Ctrl + Shift + P → "TypeScript: Restart TS Server"Still stuck?
Section titled “Still stuck?”- Check FAQ: Getting Started FAQ
- Review Phase 4: Skeleton Implementation Guide
- Search Issues: GitHub Issues
- Ask for Help: GitHub Discussions
💡 Pro Tips
Section titled “💡 Pro Tips”Hot Reload
Section titled “Hot Reload”Save any file → instant update. No restart needed.
What triggers reload:
.astro,.ts,.js,.cssfiles- Content collections
What requires restart:
- Config files (
astro.config.mjs,tailwind.config.mjs) - New dependencies
Design Tokens
Section titled “Design Tokens”Edit once → change everywhere. Colors, typography, and spacing are defined in tokens/ and compiled to CSS variables.
To customize:
# 1. Edit tokens/semantic.json (or tokens/base.json)# 2. Save the file# 3. Changes apply automatically (dev server auto-reloads)
# For production builds, tokens compile automatically:pnpm run buildPath Aliases
Section titled “Path Aliases”Clean imports → no more ../../ Import from anywhere using absolute paths:
import Button from '@/components/atoms/Button.astro';import { formatDate } from '@/utils/date';import type { Post } from '@/types/content';Available aliases:
@/*→src/*@components/*→src/components/*@layouts/*→src/layouts/*@utils/*→src/utils/*
Dark Mode
Section titled “Dark Mode”Respects system preferences → zero config. Toggle it by changing your OS theme.
To test:
- macOS: System Preferences → General → Appearance
- Windows: Settings → Personalization → Colors
- Linux: Depends on desktop environment
🎉 You’re Ready
Section titled “🎉 You’re Ready”Your local development environment is set up and running. You can now:
- ✅ View the template at
localhost:4321 - ✅ Make changes and see them live
- ✅ Explore the codebase
- ✅ Start customizing
Next: Choose your path above and let’s build.