Official Documentation

Native Power.
Total Control.

Everything you need to know about the most advanced local development environment ever built.

01. Getting Started

Installation

OmniStack is a single, zero-dependency binary. No system bloat, no background agents. Just run and develop.

Quick Install (Linux/macOS)
curl -sL https://omnistack.pro/install.sh | bash

Windows users: Simply download the omnistack.exe and run it. No install required.

02. Core Services

OmniStack manages a full stack of native services with built-in heartbeat monitoring and auto-restart capability.

Apache (HTTPD)
PHP-FPM
MariaDB
PostgreSQL
MongoDB
Redis
Mailpit
SQLite
Nginx

03. Networking & SSL

Virtual Hosts

OmniStack automatically manages your /etc/hosts file, providing instant app.test domains with zero manual configuration.

1-Click SSL

Generate trusted self-signed certificates instantly. OmniStack integrates with mkcert to make HTTPS local development effortless.

04. Backups & Safety

Crash-Proof Backups

Never lose your local database work again. OmniStack performs automated daily snapshots and crash-recovery backups for MariaDB and PostgreSQL.

Automated Snapshots
1-Click Restoration

05. Custom Services

Procfile Support

OmniStack can manage any custom service. Drop a Procfile into your project root, and OmniStack will automatically start, monitor, and pipe logs for your custom workers.

# Procfile
web: npm run start
worker: python bot.py

06. Bundled Tooling

OmniStack includes a curated set of development tools pre-installed and mapped to its environment. No need for global system installs.

Node.js
NPM
Python
Pip
Composer

07. Advanced Config

Total isolation. OmniStack never touches your system configuration. Modify your environment directly at: ~/.local/share/OmniStack/config/

PHP Tuning

Edit php.ini for memory limits and extensions.

Database Engine

Modify my.cnf or postgresql.conf.

08. Plugin System

OmniStack is built for extensibility. Implement the ServicePlugin trait in Rust to integrate any CLI tool directly into the GUI.

pub trait ServicePlugin {
fn name(&self) -> &str;
fn start(&self) -> Result<(), OmniError>;
fn stop(&self) -> Result<(), OmniError>;
fn port(&self) -> u16;
}