Skip to main content

Installation & Requirements

ReactPress 4.0 offers two paths for end users and repository contributors. Most site-building scenarios only need the global CLI — one command runs the full publishing stack.

System Requirements​

ItemRequirement
Node.js20 or higher (LTS recommended)
Operating systemmacOS 12+, Windows 10+, mainstream Linux
Package managernpm / pnpm / yarn for global CLI install
Database (default)Embedded SQLite — no Docker or MySQL required
Disk space~200–400 MB on first install (includes bundled API runtime)
Verify Node version
node -v # should show v20.x or higher
npm install -g @fecommunity/reactpress

4.0 stable is on npm @latest (npm i -g @fecommunity/reactpress).

The first npm install -g triggers postinstall, which downloads bundled server runtime dependencies (~1–2 minutes).

Verify installation​

reactpress --version
reactpress --help

4.0 CLI commands​

4.0 streamlines the CLI for end users to four core commands; advanced operations such as themes and plugins are done in the Admin UI.

CommandDescription
reactpress init [directory]Initialize a site and auto-start API + Admin + theme
reactpress init --forceForce re-initialization (resets local data — use with caution)
reactpress doctorDiagnose Node, ports, database, and service status
reactpress logsView API logs (supports --follow, --grep)
reactpress stopStop API and theme processes for the current site
About reactpress dev

Since 4.0, init includes startup: after reactpress init, services run automatically — no separate dev step. Monorepo contributors still use pnpm dev; see Monorepo local development.

Ports and firewall​

Default ports — ensure they are free before deployment:

ServicePortDescription
Admin (reactpress init default)3001 /admin/Mounted on the visitor theme port
Visitor theme3001Next.js SSR
API3002NestJS REST
Theme preview3003Admin iframe preview
Admin (Monorepo dev)3000Standalone Vite dev server

To change ports, see Configuration.

Optional: MySQL / Docker​

Default SQLite suits local trials and small self-hosted deployments. For MySQL:

  1. Set database.mode in .reactpress/config.json (e.g. embedded-docker) and fill connection fields
  2. Update root .env (DB_TYPE, host, credentials, etc.)
  3. Monorepo: pnpm docker:dev and the full CLI; end users: reactpress stop then reactpress init after edits
  4. Run reactpress doctor to confirm connectivity

See Project configuration, Docker deployment, and Production deployment.

Desktop client (optional)​

You can use the desktop client for offline writing without the CLI:

  • Download: GitHub Releases
  • Local SQLite mode, default account admin / admin

Next steps​