Local development,
nothing to install around it
.
Grove serves *.test domains with automatic routing, local HTTPS, bundled multi-version PHP and Node, bundled databases and a mail-catcher — from a single Rust core. No Homebrew, no Composer, no dnsmasq.
macOS · Apple Silicon
Grove_0.2.4_aarch64.dmg
5.7 MB
macOS · Apple Silicon
grove-v0.2.4-aarch64-apple-darwin.tar.gz
3.3 MB
Linux · x86_64
grove-v0.2.4-x86_64-unknown-linux-gnu.tar.gz
3.3 MB
Linux · x86_64
Grove_0.2.4_amd64.deb
5.7 MB
Linux · x86_64
Grove-0.2.4-1.x86_64.rpm
5.7 MB
Linux · x86_64
Grove_0.2.4_amd64.AppImage
76.7 MB
One Rust core,
everything bundled.
DNS, reverse proxy, FastCGI and TLS are built in. PHP, Node, databases and mail are downloaded and supervised by Grove itself — no Homebrew, Composer, dnsmasq or OpenSSL required.
Automatic *.test routing
An embedded DNS resolver serves your *.test domains — no manual hosts-file editing, no dnsmasq.
Local HTTPS
A private root CA with on-demand per-site leaf certificates, so every site gets trusted TLS locally.
Bundled PHP
Install multiple self-contained PHP versions (grove php install 8.5 | 8.4 | 8.3), with per-site isolate and lazy FPM pools.
Bundled Node.js
Download node, npm and npx with per-site Node versions — no nvm or Homebrew.
Bundled services
Grove downloads and supervises PostgreSQL, MySQL and Redis itself — no separate database or cache to install.
Built-in mail-catcher
An SMTP server captures outgoing mail, with a Mailpit-style viewer to inspect it.
Public tunnels
Expose a local *.test site at a public URL with grove share — a native, self-hostable ngrok/Expose alternative. Zero-config via grove.elyracode.com.
Request inspector
A live table of recent tunnelled requests (method, path, status, duration) — ideal for debugging webhooks, in the GUI and the terminal.
Hide & restore sites
grove forget removes a site from the list without deleting its files; grove restore brings it back.
Driver system
First-class drivers for Laravel, WordPress, generic PHP, static sites, and reverse proxy (Vite/Node).
GUI + CLI in parity
Both are thin clients over the same daemon, plus a macOS menu-bar icon. Built with Tauri 2 + Svelte 5.
Zero external dependencies
DNS, proxy, FastCGI and TLS are all built into the Rust core. Nothing to install around it.
# Share a local site publicly — no config needed $ grove share myapp ✓ https://quiet-river-4821.grove.elyracode.com → myapp.test (HTTPS, streaming) # Live request inspector for webhooks 12:04:31 POST /webhooks/stripe 200 142ms 12:04:33 POST /webhooks/stripe 200 88ms
Share localhost,
without ngrok.
grove share exposes any local *.test site
at a public HTTPS URL for demos, real-device testing and webhooks — a native,
self-hostable alternative to Expose/ngrok, built right in.
- Zero-config via grove.elyracode.com — works out of the box
- Self-host your own server with the included deployment kit
- Live request inspector for debugging webhooks
- Streaming bodies proxied end-to-end over a single connection
Park a folder,
open the browser.
Point Grove at a directory of projects and every subfolder is served at
name.test with HTTPS — or import an existing Valet setup.
# Install a PHP version $ grove php install 8.5 # Serve every project in a folder at *.test $ grove park ~/Code # Or link a single site $ cd ~/Code/app && grove link ✓ https://app.test
Your machine,
your dev environment.
Download Grove and serve your projects locally with HTTPS in minutes. Free, open source, and dependency-free.