Windsurf on FreeGameStore
Build a free game using Windsurf. The agent reads the platform's SKILLS.md and knows the brand rules, the CLI, and the deploy flow before it writes a line of code.
Set up Windsurf
-
Install Windsurf
Download from windsurf.com and install. Sign in with your Codeium account.
-
Scaffold the game
fgs init my-game --template canvas windsurf my-game
The
windsurfCLI ships with the desktop app (similar tocodefor VS Code). -
Add platform context to
.windsurfrulesWindsurf reads
.windsurfrulesat the project root and applies it to every Cascade and Chat turn:cat > .windsurfrules <<'EOF' # Platform: FreeGameStore Always follow the conventions in https://freegamestore.online/skills.md. Constraints: - Manrope + Fraunces fonts only. - Brand CSS tokens via var(--accent), var(--ink), var(--paper). - Zero tracking SDKs. - Push to main = auto-deploy. No staging. Use the Shell component for layout. Edit web/src/App.tsx. EOF -
Open Cascade (Cmd-L)
Cascade is Windsurf's multi-step agent. Tell it what you want and it'll edit multiple files, run commands, and iterate.
Prompt the build
Iterate
-
Run the dev server
cd my-game && pnpm install && pnpm dev
The agent will tell you which file it edited; refresh the browser to see the change.
-
Run compliance checks
fgs check
Catches missing brand fonts, tracking SDKs, oversized bundles, and missing PWA manifest before publish.
-
Publish
fgs publish --store games
Provisions
github.com/freegamestore-online/my-game, the Cloudflare Pages project, the DNS record, custom subdomain atmy-game.freegamestore.online, and the storefront entry — atomically. -
Push your code
git push upstream main
Auto-deploys via Cloudflare Pages in ~30 seconds. Future commits to
maindeploy automatically.
What the AI knows (and doesn't ask you for)
Once SKILLS.md is loaded, the agent will:
- Use the platform's CSS tokens (
--accent,--ink,--paper, …) — never redefine them. - Use Manrope (body) + Fraunces (display) — never custom display fonts.
- Refuse to add Google Analytics, Plausible, Mixpanel, or any tracker.
- Use
localStoragefor persistence (or@freegamestore/gamesKV for connected games). - Push to
mainfor deploy. Neverwrangler pages deploymanually. - Never ask you for Cloudflare or GitHub tokens.
The compliance suite (fgs check) enforces all of the above on every push, so even if the AI slips, the platform catches it.
Get the source
The CLI, SDK, and compliance package live at https://github.com/freegamestore-online/platform. Reading the source is allowed — and often illuminating when you're trying to coax a difficult prompt.
Tips for Windsurf specifically
- Cascade (Cmd-L) is best for multi-file changes. It plans, edits, and runs commands in sequence.
- Inline Edits (Cmd-I) handle single-file refactors quickly.
- Use Memories to pin platform context across sessions instead of re-typing it.
- Cascade can run
fgs checkautomatically — ask it to verify compliance before publishing.