Quick Start

Get up and running with Create Vinoflare in minutes.

Prerequisites

Before you begin, make sure you have:

  • Node.js 18+ installed
  • A Cloudflare account (free tier works great)
  • Git installed (optional, but recommended)

Create Your First Project

The fastest way to get started is using the interactive CLI:

npm create vinoflare@latest

You'll be prompted to:

  1. Enter your project name
  2. Choose project type (full-stack or API-only)
  3. Select features (authentication, database)
  4. Pick a package manager (npm, yarn, pnpm, or bun)
  5. Initialize git (recommended)

Non-Interactive Mode

If you know exactly what you want, use command-line flags:

# Full-stack app with all features
npm create vinoflare@latest my-app
 
# API-only without authentication
npm create vinoflare@latest my-api --type=api-only --no-auth
 
# Full-stack without database
npm create vinoflare@latest my-frontend --type=full-stack --no-db
 
# Skip all prompts with defaults
npm create vinoflare@latest my-app --yes

Available Options

  • --type=<type> - Project type: full-stack (default) or api-only
  • --no-auth - Skip authentication setup
  • --no-db - Skip database setup
  • --no-git - Skip git initialization
  • --no-install - Skip dependency installation
  • --pm=<pm> - Package manager: npm, yarn, pnpm, or bun
  • -y, --yes - Accept all defaults

Project Setup

After creation, navigate to your project:

cd my-app

Install Dependencies

If you skipped installation:

npm install

Environment Setup

For projects with authentication:

  1. Copy the example environment file:

    cp .dev.vars.example .dev.vars
  2. Add your Discord OAuth credentials:

    DISCORD_CLIENT_ID=your-client-id
    DISCORD_CLIENT_SECRET=your-client-secret
  3. Generate a secure auth secret:

    openssl rand -base64 32

Database Setup

For projects with a database:

# Generate database schema
npm run db:generate
 
# Apply migrations locally
npm run db:push:local
 
# Generate TypeScript types
npm run gen:types

Frontend Setup

For full-stack projects:

# Generate route types
npm run gen:routes
 
# Generate API client
npm run gen:api

Start Development

Run the development server:

npm run dev

Your app will be available at:

  • Frontend: http://localhost:5173
  • API: http://localhost:8787
  • API Docs: http://localhost:8787/docs

What's Next?

Getting Help

  • Documentation: Read through our comprehensive docs
  • GitHub Issues: Report bugs or request features
  • Discord: Join our community for real-time help

Happy building! 🚀