MuseMVP

MuseMVP Base: Next.js for Node and Cloudflare. MuseMVP Flare: an AI SaaS template that runs entirely on Cloudflare. Authentication, billing and administration included.

Product
  • Home
  • Pricing
  • Templates
Resources
  • Docs
  • Blog
  • Changelog
Legal
  • Privacy
  • Terms
  • Community
Open-Launch Top 1 Daily WinnerOpen-Launch Top 1 Daily WinnerVerified DR - Verified Domain Rating for musemvp.comVerified DR - Verified Domain Rating for musemvp.comMuseMVP - Featured on Startup FameMuseMVP - Featured on Startup FameFazier badgeFazier badgeLiftOff award badgeLiftOff award badge

© 2026 MuseMVP. All rights reserved.

MuseMVP
  • Pricing
  • Docs
  • Blog
  • Changelog
Buy All in One
MuseMVP Docs
MuseMVP Docs
OverviewTech StackQuick Start
Project Structure
EmailObject Storage
Internationalization
SEOAnalytics

Quick Start

Download the source, start a local app, and sign in with your development accounts.

By the end of this guide, you will have a local MuseMVP app and be able to sign in to its workspace. Real payments, OAuth, and storage can wait until you need them.

Before You Start

  • Git and access to the source repository using the GitHub account granted access after purchase.
  • Node.js 22 or newer and pnpm 10.26.2, the version pinned by the template.
  • Docker Desktop running, or an existing development Postgres database.

The app runs on port 3000. If that port is taken, Next.js moves to the next free port, and sign-in works on any localhost port in development.

1. Get the Source

Clone using the GitHub account with repository access:

git clone https://github.com/musemvp/musemvp.git
cd musemvp
pnpm install

If SSH is configured, you can use [email protected]:musemvp/musemvp.git. Run the remaining commands from the repository root, where pnpm-workspace.yaml lives.

2. Initialize Your App

Local Development

With Docker Desktop running:

pnpm muse:init --app node --docker
pnpm dev

Init starts the included local Postgres service and waits until it is ready, writes apps/web/.env.local, generates signing secrets, applies migrations, and creates your development login accounts. Running it again keeps your values and custom variables.

Already have a development Postgres database? Replace the init command with this one, using your connection string:

pnpm muse:init --app node --database-url "postgres://USER:PASSWORD@HOST:5432/DATABASE"

Then run pnpm dev. Use a fresh development database, not an existing production database.

3. Open the App and Sign In

When the server is ready, open http://localhost:3000. Visit /auth/login, select password sign-in, and use either account:

AccountPasswordExplore
[email protected]musemvpWorkspace and account settings
[email protected]musemvpWorkspace and admin user management

These assume unchanged seed defaults. If you edited MUSE_SEED_EMAIL or MUSE_SEED_PASSWORD, use your configured domain and password. These accounts are for development only.

Init sets MAIL_PROVIDER=console: mail prints in the server terminal rather than being delivered. Registration and sign-in codes work locally; search the terminal for [mail:console]. Set up Email before you test real delivery.

Check Your Result

  • The public homepage opens without a server error.
  • The user account can open /app and /app/settings/general.
  • The admin account can open /app/admin/users.
  • Signing out returns to the public site; revisiting /app asks you to sign in.

Common Problems

What you seeWhat to try
GitHub reports repository not foundCheck that your GitHub account has accepted access, then check HTTPS/SSH credentials
pnpm is not foundRun npm install -g [email protected], then reopen the terminal
Docker init failsStart Docker Desktop; check for another Postgres using port 5432
Database connection refusedCheck the development database host, port, user, and password in apps/web/.env.local
Password sign-in failsRe-run pnpm muse:init with the same --app (it recreates missing seed accounts), check the seed password, and use the password form
Port 3000 is occupiedUse the port Next.js picked; sign-in works on any localhost port in development. Set NEXT_PUBLIC_SITE_URL to that port only when testing mail links or OAuth
Missing generated content typesStart pnpm dev or run pnpm build to generate Fumadocs sources

Run pnpm muse:doctor to see which features are ready, running on a local stand-in, disabled, or missing; AI agents can use pnpm muse:doctor --json. Avoid --force on an existing environment: it can replace configured values and signing secrets.

Next: Make It Yours

Continue with Brand and App Settings. Add Email, Payments, and Storage as needed.

Working with an AI coding agent? Your repository includes docs/getting-started.en.md: the whole path from a fresh clone to production, a table of every step that needs you in person (API keys, OAuth apps, wrangler login), and the MCP servers that save the most manual work. Ask your agent to read it with AGENTS.md first.

Your own private repository and future upstream merges are covered separately in Updating Your Project.

Tech Stack

A deep dive into the technologies powering MuseMVP and why we chose them.

Brand Configuration

Replace the name, logo, homepage copy, and app settings with your product's identity.

On this page

Before You Start1. Get the Source2. Initialize Your AppLocal Development3. Open the App and Sign InCheck Your ResultCommon ProblemsNext: Make It Yours

One payment. Tax included.

All in One

Base, Flare and every UI template, plus new ones.

$129

Buy All in One