Skip to content

Public beta — free forever, no account required Download now →

Documentation

Run your local dev stack from one control room.

A practical field guide for installing EnvKit, starting local services, routing projects through trusted .test HTTPS, and keeping the stack predictable on Windows and macOS.

Windows & macOS11 bundled servicesFree · no signupAI / MCP ready

Overview

EnvKit is a desktop app that runs your entire local web-development stack — nginx or Apache, multiple PHP versions, MySQL/MariaDB, PostgreSQL, Redis, MongoDB, Mailpit, Node.js, Python and phpMyAdmin — from one modern tray / menu-bar app, with trusted .test HTTPS and PATH sync. It is a free Laragon / XAMPP / Herd alternative.

  • Build Laravel, WordPress, PHP and Node/React/Next.js sites locally with one-click services.
  • Trusted local SSL for every site via an auto-installed certificate authority.
  • Drive the whole stack from an AI assistant through a built-in MCP server.
  • Free to use (proprietary), with silent auto-update.

Install & first run

Download the latest installer for Windows or macOS from GitHub Releases, run it, then launch EnvKit from the Start menu, tray, or menu bar. There is no account, licence key, or payment step between download and local services.

On first launch a short onboarding wizard asks your source — Load from Laragon (a guided detect → import flow, including databases) or Start fresh (pick your stack and install the runtimes it needs).

First run
First launch
├─ Load from Laragon   detect → import sites + databases
└─ Start fresh         pick your stack, install runtimes

Auto-update            checks GitHub, installs silently
Upgrade                data, certs & settings migrated
macOS — allow the app (one-time)
xattr -dr com.apple.quarantine /Applications/EnvKit.app

Start services

Start the web server, PHP runtime, databases, Redis, MongoDB, Mailpit and other tools you need for the current project. The app keeps the state visible so you can see which service owns each port before you debug framework code.

Service status
nginx      running   :443
php-fpm    running   :9000
mysql      running   :3306
redis      running   :6379
mailpit    running   :8025

Add your first site

Register an existing project folder and EnvKit provisions the local host, web server routing, and HTTPS certificate. Laravel, PHP, React, and Next.js projects can live side by side, each with its own local host. You can also create a fresh Laravel or Node app, or clone from Git.

Site mapping
Project folder
E:\Sites\acme-app

Local host
https://acme-app.test

Dev server
http://localhost:5173

Trusted HTTPS

EnvKit creates a local certificate authority and issues certificates for your *.test hosts. Your browser gets real HTTPS locally, so secure cookies, OAuth callbacks, and WebSocket hot reload behave like they do in production.

Web server — nginx or Apache

EnvKit ships both nginx and Apache and lets you switch the active web server in Settings. PHP is served via FastCGI on either one, so your sites behave the same regardless of which server is in front.

  • Pick nginx or Apache globally — both are bundled, no extra download.
  • Every site is reverse-proxied behind trusted .test HTTPS.
  • Node / React / Next.js dev servers are proxied with hot-reload intact.

PHP versions & Xdebug

Install multiple PHP versions (7.4 through the latest, NTS x64) and assign a default per site, so a legacy app and a modern Laravel app can run at the same time. Xdebug is available on-demand per version.

PHP per site
Installed PHP
7.4   8.1   8.2   8.3   8.5   (NTS x64)

Per-site default
acme-app.test      → PHP 8.3
legacy-shop.test   → PHP 7.4

Xdebug             on-demand, per version

Databases

MySQL or MariaDB cover common PHP apps; PostgreSQL, Redis and MongoDB are available when your stack needs them. phpMyAdmin ships for MySQL/MariaDB, and EnvKit includes web admin UIs for PostgreSQL (pgAdmin) and MongoDB (mongo-express) too.

Database services
Relational
mysql / mariadb    :3306
postgres           :5432

Key-value & documents
redis              :6379
mongodb            :27017

Web admin
phpMyAdmin (MySQL/MariaDB), Postgres & Mongo UIs

Prefer a desktop client to the web UIs? On the Databases page each running engine has an Open in… button that launches HeidiSQL or TablePlus already connected to your local server — no host/port/password to type. EnvKit can install HeidiSQL for you (it's open source); TablePlus opens its official download, then EnvKit detects it.

Mail (Mailpit)

Use Mailpit for local password resets, notifications and test sends. It runs an SMTP server plus a web inbox, so mail your app sends is caught locally and never leaves your machine.

Node dev sites

React, Next.js and other Node dev servers can be linked as local sites too. EnvKit keeps the project URL stable while the framework dev server handles hot reload behind it.

Node site mapping
Next.js project
E:\Sites\acme-dashboard

EnvKit route
https://acme-dashboard.test

Dev server target
http://localhost:5173

Laravel Reverb

EnvKit is designed for Laravel apps that need more than PHP-FPM. Run Reverb beside Redis, queue workers, your database, and the trusted local web server so realtime features can be tested without exposing a public tunnel. One-click install, supervise, and proxy per site.

Realtime stack
Laravel app
https://acme-app.test

Realtime server
php artisan reverb:start
ws://127.0.0.1:8080

Companion services
php-fpm    :9000
redis      :6379
queue      worker

Bundled services

EnvKit mirrors the service binaries it installs, so setups don't depend on flaky upstreams. These are the versions shipped today (the machine-readable index lives in lib/services.json on the releases repo).

Beyond the web/PHP/database stack you can also install Meilisearch (a fast search engine with an HTTP API + dashboard) and MinIO (S3-compatible object storage with a web console) straight from the Services page — handy for Laravel Scout or any app that talks to S3 locally.

ServiceBundled version
nginx1.26.2
Apache2.4.68
PHP8.5.6 (+ 7.4 – latest)
MariaDB10.11.10
MySQL8.0.40 · 8.4.3 LTS
PostgreSQL17.2
MongoDB7.0.14
Redis5.0.14.1
Node.js26.2.0
Mailpit1.21.8
phpMyAdmin5.2.3

Import from Laragon

If your current workflow lives in Laragon, start by importing existing projects instead of rebuilding every host by hand. EnvKit detects project folders, provisions hosts, carries over enabled PHP extension context, and can transfer databases (including MySQL → MariaDB).

Migration snapshot
Laragon source
C:\laragon\www

Imported into EnvKit
sites          detected
hosts          provisioned
databases      MySQL → MariaDB transfer
php extensions matched

PATH sync

Sync EnvKit's php, mysql and nginx to your user or system (Machine) PATH. Stale entries are pruned, and competing stacks (Laragon / XAMPP / WAMP / MAMP / Herd) are auto-removed so nothing shadows EnvKit's binaries.

PATH options
Sync target
( ) User PATH
(•) System (Machine) PATH

Pruned
stale EnvKit entries
competing stacks (Laragon / XAMPP / WAMP / MAMP / Herd)

Result
php / mysql / nginx → EnvKit, nothing shadowing

Diagnose & self-heal

When a service won't start, run Diagnose. EnvKit finds port conflicts, stale PIDs and bad configs, then offers to repair them — so you fix the one service that needs attention instead of restarting the whole stack.

AI control (MCP)

EnvKit ships an MCP server so AI assistants — Claude Code / Desktop, Cursor, Windsurf, VS Code, Zed, OpenCode, Gemini CLI, and PhpStorm / JetBrains IDEs (via Junie) — can operate your local stack: add/remove sites, manage MySQL databases, and start, stop, or diagnose services.

Enable MCP
Settings → AI
1. Enable MCP server
2. Set up AI clients     registers globally + installs skill
3. Restart your AI client

Endpoint
http://127.0.0.1:<port>/mcp   (bearer token, local-only)
Assistant examples
Ask your assistant
"start redis"
"diagnose why mysql will not start, then repair it"
"list my Laravel sites"
"add this project as a .test site"
"create a MySQL database for acme-app"

Tools & installers

Beyond the runtimes, EnvKit bundles one-click installers for the developer tools you reach for most, and Composer/Laravel scaffolding so you can spin up a new project without leaving the app.

Included tooling
One-click installers
Composer   Git   gh (GitHub CLI)
nvm        ngrok Cmder

Scaffolding
composer create-project ...
laravel new acme-app

Languages & translations

EnvKit ships in English, Arabic, German, Persian (Farsi), and Spanish, and switches instantly from the language picker in the title bar or Settings → Language. Right-to-left languages (Arabic, Farsi) flip the whole layout automatically.

You can add or fix a language without waiting for a release. On first run EnvKit publishes a locales folder in its data directory with a README and a _template.json containing the complete, current key list. Copy it to <code>.json (e.g. fr.json), set the language name and direction, translate the values, and restart — your language appears in the picker. A file with a built-in code (e.g. de.json) overrides that translation, so you can correct wording too.

Add a language
%ProgramData%\envkit\locales\
  _README.md        how-to
  _template.json    full English key list
  fr.json           <- drop your language here

fr.json
{
  "_meta": { "label": "Français", "dir": "ltr" },
  "translation": {
    "nav": { "dashboard": "Tableau de bord", ... }
  }
}

Troubleshooting

When something does not respond, start with the service state and port ownership. Most local stack issues are either a stopped service, a busy port, or a browser holding old certificate state.

First checks
Port check
nginx      :443   running
mysql      :3306  running
mailpit    :8025  running

If a port is busy:
1. Stop the conflicting app (or run Diagnose)
2. Restart the EnvKit service
3. Re-open the .test host

Support

Found a bug or have a feature request? Open an issue on GitHub and include your OS version, EnvKit version, and steps to reproduce.

docs