Release Notes

Laravel 13 and Inertia v3

Vito v4.x has been updated to the latest versions: Laravel 13, Inertia.js 3, and Vite 8. This brought refactors to plugin caching and CSRF middleware, and keeps Vito current with the latest framework releases.

Inertia context shrinking

Inertia responses previously shipped ~120 KB+ of mostly-static shared data on every request. The frontend now uses URL paths directly, without a client-side route catalogue or route-script cache. A cached bootstrap endpoint serves the provider/service catalogue once and hydrates it on the frontend, cutting typical responses down to a few KB.

Realtime websocket Updates

Vito now ships a built-in WebSocket server that pushes live updates across all async operations - deployments, servers, services, sites, SSLs, backups and more - replacing the old polling-based refresh. The header shows connection status with manual reconnect, and connections survive page navigation.

GitHub App registration

Connect source control via a GitHub App, a more secure alternative to personal access tokens and deployment keys. Register an app against your instance (automatically or manually), and deployments authenticate with short-lived, per-repo tokens that never touch disk.

Site improvements

Resume failed site deployments

Sites that fail during installation now enter a failed state instead of being lost. A failure banner surfaces a friendly error summary, and a Retry action resumes the install idempotently from where it left off.

Shared isolated users

Isolated users can now be shared across multiple sites on a server rather than being tied to one. This release adds default username suggestions, distributed locking to prevent race conditions, and a reserved-name list that blocks system accounts from being used as site users.

Hosted domains

Manage multiple alias and redirect domains per site. Domains that don't yet resolve are held in a pending state and re-checked automatically (or validated on demand), each domain can have its own SSL option, and vhost generation is driven by editable nginx/Caddy templates with preview.

Site tooling

Per-site tooling management has been expanded and standardised, with install and uninstall actions. Tooling now correctly runs as the site's isolated user and is available across all site types, not just PHP. The available tools are Node.js, Bun, Yarn, pnpm, and Composer, each installed per isolated user.

Site stats (beta)

Install the new GoAccess service to get per-site traffic statistics. Stats appear per site, refresh automatically every hour, and can be enabled or disabled individually.

Bun & Node site types

Vito now supports Bun and Node.js sites natively, with per-site version management via Site Tooling. PHP/Laravel sites can optionally install Node/Bun alongside them where needed.

Site Alerts

Vito now tracks and displays alerts per site, both on the table listings and with more information on each site page. Multiple alerts collapse automatically, and most provide a call to action. Alerts can include when domains no longer resolve to the server, VHost generation is turned off, or a Worker has failed to start.

HTTP basic auth

Protect sites with HTTP Basic Authentication on both nginx, Caddy and Apache. This is useful for staging and preview sites that must be publicly reachable but not openly accessible. Users and passwords are managed from the site settings UI.

Server improvements

Server networking (IP management)

Vito can now manage a server's IP addresses. Add individual addresses or whole ranges, set the interface and prefix length, and mark a primary public and private IP for the server. Addresses you add are listed alongside the ones Vito detects, and you can refresh at any time to pick up changes made on the server.

Server security

A new Security section gives each server a hardening dashboard. From here you can install and configure fail2ban, manage the UFW firewall, toggle SSH password authentication and root login, and enable automatic package updates on a schedule. Vito shows an overall security score and can run an on-demand check to confirm the server's live state matches your settings.

Live terminal

The server console is now a full, interactive terminal in the browser. Vito opens a real SSH shell to the server and streams it over a WebSocket, so it is stateful (commands like cd carry over) and supports interactive programs such as top, vim, and nano. You can choose which user to connect as and open more than one session at a time.

Valkey

Valkey joins Redis as a supported in-memory data store. Install it as a service from the Services page (a server can run one in-memory service at a time), with its logs available in the Service Logs viewer.

Service Log viewer

A new Service Logs section in the server logs menu exposes logs for installed services automatically. You can change the number of lines shown, download the full file, or clear a log.

Monitoring updates

Server monitoring has been extended to collect and visualize a much wider range of system metrics, with supporting database, API, and frontend updates.

Server Alerts

Vito now tracks and displays alerts per server, both on the table listings and with more information on each server page. Multiple alerts collapse automatically, and most provide a call to action. Alerts can include when a server needs a restart, or when updates to packages are available.

Apache support (beta)

Apache joins nginx and Caddy as a supported webserver. The config generation system was refactored for extensibility, removing hard-coded webserver assumptions throughout the codebase, Apache joins Vito in beta, and we would not recommend using on a production server just yet.

SSL updates, including wildcard certs

SSL certificates can now be managed directly at the server level, in addition to per-site. This adds custom certificates, CSR generation and download, and auto-renewing wildcard Let's Encrypt certificates for domains managed by Vito.

Other improvements

API key project scoping

API keys can now be scoped to specific projects and granted read-only or read-and-write access, instead of always having full account access. Leave the project list empty for a key that works across all of your projects.

SFTP storage

A new SFTP storage provider lets you store backups on any SFTP server. Provide the host, port, path, and credentials, and Vito verifies the connection before saving.