Releases: XBS-Nathan/Nova
Releases · XBS-Nathan/Nova
v0.5.0
Nova v0.5.0
Install
curl -fsSL https://raw.githubusercontent.com/XBS-Nathan/Nova/main/install.sh | shOr build from source:
git clone https://github.com/XBS-Nathan/nova.git
cd nova
go generate ./internal/config/...
go build -o nova .
sudo mv nova /usr/local/bin/What's New
nova slow on/off— simulate a resource-constrained server by applying CPU and memory limits to PHP containers (e.g.nova slow on --cpu 0.25 --memory 128m)- Workers config — run background processes (Horizon, queue workers, scheduler) as auto-restarting Docker services via
workers:in config nova php— run PHP commands in the project's PHP containernova npm/yarn/pnpm— run package manager commands in a one-off Node container with correct user permissionsnova logs horizon— logs command now matches workers by prefixnova snapshot restore— shows all snapshots across all databases by default, not just the current project'snova sharefix — tunnels now work correctly with Laravel by rewriting the Host header via cloudflarednova use service— add shared services from other projects interactively- Image hash fix — PHP image tags are now based on full Dockerfile content, so changes (like adding composer) trigger rebuilds
- New extensions —
soapandsocketsadded to supported native PHP extensions
Breaking Changes
- PHP image tags have changed due to the new content-based hashing. Run
nova buildto rebuild images.
v0.4.0
Nova v0.4.0
Install
curl -fsSL https://raw.githubusercontent.com/XBS-Nathan/Nova/main/install.sh | shOr build from source:
git clone https://github.com/XBS-Nathan/nova.git
cd nova
go generate ./internal/config/...
go build -o nova .
sudo mv nova /usr/local/bin/What's New
- Interactive
nova init— all options now use arrow-key selectable lists with typeahead filtering instead of free-text prompts - Docker Hub version fetching — PHP, Node, MySQL, Postgres, and Redis versions are fetched from Docker Hub at build time via
go generate, with hardcoded fallbacks - Shared service discovery —
nova initscans other projects forshared_servicesand offers a multi-select to include them nova use service— add shared services from other projects to an existing config interactively- Node dev server support —
nova initprompts fornode_commandand port;nova startruns the dev server in a node container with corepack for pnpm/yarn nova logs node— stream logs from project services (e.g., node dev server)- Composer in PHP images —
composeris now included in all PHP Docker images via multi-stage copy NOVA=trueenv var — set on both PHP and Node containers for runtime detection- Forwarded ports in
nova info— shows configured ports and node command in the info output - Postgres fixes —
CreateIfNotExistsnow waits for Postgres to be ready and uses stdin piping for\gexeccompatibility nova use phpfixes — creates.nova/directory if missing, pre-createsconf.dbefore Docker to prevent root ownership, starts PHP service if Docker is running
Breaking Changes
PHP images now include Composer. Existing images need a rebuild with nova build.
v0.3.0
Nova v0.3.0
Install
curl -fsSL https://raw.githubusercontent.com/XBS-Nathan/Nova/main/install.sh | shOr build from source:
git clone https://github.com/XBS-Nathan/nova.git
cd nova
go build -o nova .
sudo mv nova /usr/local/bin/What's New
nova use phpcreates .nova/ directory — no longer fails when .nova/ doesn't exist yet, sonova use php 8.4works beforenova initnova use phpstarts the PHP service — if Docker services are already running, changing PHP version automatically builds the image and starts the containernova infoshows all services — shared services and per-project services now appear in the info table alongside Caddy, MySQL, Redis, and Mailpit
Breaking Changes
None.
v0.2.0
Nova v0.2.0
Install
curl -fsSL https://raw.githubusercontent.com/XBS-Nathan/Nova/main/install.sh | shOr build from source:
git clone https://github.com/XBS-Nathan/nova.git
cd nova
go build -o nova .
sudo mv nova /usr/local/bin/What's New
- Database tools run inside containers —
nova snapshotandnova snapshot restoreno longer requiremysqldump,pg_dump, or other DB tools on the host - Zstd compression — snapshots now use zstd with multithreaded compression (
-T0), significantly faster than gzip - Interactive snapshot restore — running
nova snapshot restorewithout a name shows an interactive selector - Local snapshots —
nova snapshot --localstores snapshots in the project's.nova/snapshots/directory nova statuscommand — shows running services and linked projects at a glance- Postgres custom format — snapshots use
-Fc(single file) streamed from the container, no host tools needed - Backward compatible — restoring old
.sql.gzsnapshots still works
Breaking Changes
None. Existing snapshots remain fully restorable.
v0.1.0
Nova v0.1.0
First release of Nova — a fast, lightweight PHP development environment for Linux and macOS.
Install
curl -fsSL https://raw.githubusercontent.com/XBS-Nathan/Nova/main/install.sh | shOr build from source:
git clone https://github.com/XBS-Nathan/nova.git
cd nova
go build -o nova .
sudo mv nova /usr/local/bin/Highlights
- Shared Docker containers — one PHP-FPM per version, one Caddy, one MySQL/Redis across all projects
- Automatic local HTTPS via Caddy with
*.testdomains - Dev-optimized PHP & MySQL defaults — tuned for local development out of the box
- Per-project and global config overrides for
php.iniandmy.cnfsettings - Database snapshots with parallel dump/restore (mydumper, pg_dump)
- Xdebug toggle — sub-second on/off without container restart
- Per-project services — custom Docker containers scoped to individual projects
- Shared services — containers shared across all projects
- WSL2 support — automatic hosts and certificate trust for both Linux and Windows
Quick Start
cd /path/to/your/project
nova init
nova start
nova trust