Build a free app with AI.
Follow these steps to go from zero to a deployed app on FreeAppStore. Works with Claude Code, Cursor, Copilot, or any AI tool. Your app gets free hosting, a subdomain, and a listing in the store.
Prerequisites
You need Node.js and pnpm installed. If you already have them, skip to Step 1.
Step-by-step: Claude Code (terminal)
Full walkthrough using Claude Code. Other tools follow the same steps — see tool-specific setup below.
-
Install Claude Code and the FreeAppStore CLI
# Install Claude Code (Anthropic's terminal AI) npm install -g @anthropic-ai/claude-code # Install the FreeAppStore CLI npm install -g @freeappstore/cli # Verify both installed claude --version fas --version -
Log in to FreeAppStore
# Sign in with your GitHub account fas login # Opens GitHub in your browser for OAuth. # Once approved, you'll see: # ✓ Logged in as your-username -
Create your app from a template
# Scaffold a new app fas init my-app # Output: # Creating my-app... # [1/3] Cloning template-standalone... # [2/3] Installing dependencies... # [3/3] Initializing git... # Done! # Go into the project cd my-appThis creates a React + Vite + Tailwind project with the FreeAppStore design system, fonts, and CSS variables already set up.
-
Start Claude Code
# Launch Claude Code in the project claudeClaude Code reads
CLAUDE.mdautomatically. For even deeper integration, connect the MCP server:# Add to ~/.claude.json for MCP tools (optional but powerful) { "mcpServers": { "freeappstore": { "command": "npx", "args": ["mcp-remote", "https://mcp.freeappstore.online/mcp"] } } }With MCP, Claude can check deploy status, look up SDK docs, and list your apps as tool calls. Without it, Claude still reads
SKILLS.mdfor full platform context. MCP docs → -
Tell Claude what to build
Type your prompt in the Claude Code terminal. Be specific.
# Example prompts: Build a pomodoro timer with work and break sessions. 25 min work, 5 min break, 15 min long break. Show session count. Play a sound when the timer ends. Save progress in localStorage. # Or with the SDK for connected features: Build a flashcard app. Let users create decks and cards. Use app.kv to save cards per user. Add a shared counter with app.counters to track total cards created across all users. Use useAuth for sign-in.Claude edits
web/src/App.tsxand creates any files needed. It follows the design system from skills.md. -
Run it locally
# Start the dev server pnpm dev # Output: # VITE v8.x.x ready in 200ms # ➜ Local: http://localhost:5173/ # Open http://localhost:5173 in your browserMake changes, and the page updates instantly (hot reload).
-
Check compliance
# Run the platform compliance checker fas check # ✓ TypeScript strict mode # ✓ No tracking/analytics # ✓ No cookies # ✓ Manrope + Fraunces fonts # ✓ Dark mode supported # ✓ PWA manifest present # ✓ MIT license # All checks passed!If anything fails, Claude Code can fix it — just tell it which check failed.
-
Publish and deploy
# Publish to the store (creates repo + hosting + DNS) fas publish # ✓ Created repo: freeappstore-online/my-app # ✓ Hosting route configured # ✓ Live at: my-app.freeappstore.online # ✓ Added deploy.yml workflow # Future deploys: just push to main git push origin main # Your app is live at: # https://my-app.freeappstore.online
Other AI tools
Steps 1-3 and 6-8 are the same for every tool. The only difference is Step 4 — how you tell the AI about the platform. Add this line to the tool's instruction file:
Here's where that line goes for each tool:
Claude Code
Auto-reads from project root.
CLAUDE.md
Cursor
Create in project root.
.cursorrules
GitHub Copilot
Create in .github folder.
.github/copilot-instructions.md
Codex CLI
Create in project root.
AGENTS.md
Aider
Create in project root.
CONVENTIONS.md
Windsurf
Create in project root.
.windsurfrules
Cline
Paste in custom instructions.
Settings → Custom
Zed
Paste in assistant context.
Assistant panel
Continue
Create in project root.
.continuerules
ChatGPT
Paste skills.md into chat.
Paste in chat
SDK cheat sheet
Copy-paste these into your AI prompts for connected apps (apps that need sign-in, storage, or real-time features).
Standalone vs Connected apps
Standalone
No sign-in needed. Data saved in localStorage on the user's device. Works fully offline. Timer, calculator, notes, converter — most apps are this type.
Connected
Uses @freeappstore/sdk for sign-in, per-user cloud storage, shared counters, and real-time rooms. Messenger, social apps, collaborative tools.
Build straight from your editor (MCP)
Connect the FreeAppStore MCP server and build, publish, and improve apps without ever leaving Claude Code or Cursor.
Your AI writes, MCP ships
Your editor's AI generates the code, then ships it through the platform with create_app, update_files, read_file, and list_files.
Just prompt — agent builds it
Hand it off entirely: agent_build kicks off the platform's VibeCode agent (using an AI key from your vault) and agent_status tracks it. No local code needed.
Also available
VibeCode (no-code)
Don't want to use a terminal? console.freeappstore.online/create lets you describe your app in plain English and AI builds it for you in the browser.
Need a database?
Free apps use localStorage. If you need SQL databases, file uploads, maps, or payments, check ProAppStore.
Other reading
- Platform guidelines — design system, privacy rules, compliance checks
- Pricing — free tier caps and what Pro unlocks
- skills.md — the machine-readable platform reference your AI tool reads
- Platform source code — SDK, CLI, backend
- FreeGameStore build guide — same flow for games
- ProAppStore build guide — paid tier with databases and storage