Nhost self-hosted stack and more, in seconds!

Deploy a feature-complete backend infrastructure on your own servers with PostgreSQL, Hasura GraphQL, Redis, Auth, Storage, and optional microservices. Works seamlessly across local development, staging, and production with automated SSL, smart defaults, and production-ready configurations.

Based on Nhost.io for self-hosting! Copy the below command in Terminal to install and get up and running in seconds!

curl nself.org/install.sh | bash

Created by Aric Camarata

Getting Started

Complete Backend Stack

The nself CLI deploys everything you need for a modern application:

• Hasura GraphQL - Instant GraphQL APIs with real-time subscriptions
• PostgreSQL 16 - With TimescaleDB, PostGIS, pgvector extensions
• Authentication - JWT auth with email, OAuth, magic links, WebAuthn
• MinIO Storage - S3-compatible object storage with web console
• Redis Cache - In-memory cache, pub/sub, queue backend
• Database Tools - Migrations, seeding, backup/restore, dbdiagram sync
• NestJS - TypeScript microservices for actions and webhooks
• BullMQ - Redis-based queue for background jobs
• Go - High-performance microservices
• Python/FastAPI - ML/AI services with async support
• Nginx + SSL - Reverse proxy with Let's Encrypt certificates
• Email Services - SendGrid, AWS SES, Mailgun, SMTP support

Based on Nhost.io, the open-source Firebase alternative. With nself, you get the same powerful stack on your own infrastructure.

v0.3.9 - Admin UI Integration & Simplified Workflow

🎯 Admin UI & Streamlined Development

Web-based Admin UI - Complete admin interface at localhost:3100 with real-time monitoring
Simplified Initialization - Minimal setup by default, --full and --wizard options for advanced configuration
Enhanced Reset System - Timestamped backups in _backup/ directory with version history
35+ Total Commands - Expanded CLI with comprehensive database operations and admin UI management
25+ Service Templates - Complete language support: Express, FastAPI, Flask, Gin, Rust, Ruby, and more

Quick start: nself init, nself admin enable, nself build, nself start

v0.3.8 - Enterprise-Grade Features & Advanced Automation

🚀 Enterprise-Ready with Zero-Config Automation

Zero-Config Automatic SSL - Auto-detection, daily renewal checks, seamless certificate management
Enterprise Monitoring Suite - Live monitoring, metrics collection, Prometheus/Datadog integration
Advanced Backup System - 10+ backup commands, S3 support, automated retention policies
Container Operations & Scaling - Secure exec, intelligent scaling, rollback capabilities
33 CLI Commands - Expanded from simple 3-command setup to enterprise-grade toolkit

Still just 3 commands to get started: nself init, nself build, nself start

v0.3.7 - Critical Fixes & Release Infrastructure

⏺ Critical Fixes & Production-Ready Release Process

Complete Release Infrastructure - Automated GitHub releases, multi-platform Docker images, Homebrew formula
Critical Bug Fixes - Fixed nginx SSL paths, logs command, db help display, and start.sh errors
Standardized Output Formatting - Unified help system with consistent command output across the CLI
CI/CD Pipeline - GitHub Actions with ShellCheck compliance and multi-arch support
100% Backward Compatibility - Patch release with all tests passing on Linux, macOS, and WSL

Update now: Run nself update for enhanced stability and fixes

v0.3.6 - Enhanced Command Structure & Container Reliability

🎯 Cleaner Commands & Rock-Solid Recovery

New Primary Commands - nself start and nself stop for intuitive control
100% Backward Compatibility - up and down commands still work perfectly
Fixed Container Recovery - Resolved nginx and auth container auto-fixer failures
Enhanced Error Detection - Better handling of minimal Docker images and OCI runtime errors
Improved Health Checks - Smarter recovery strategies for container health issues

Update now: Run nself update - Your existing scripts will continue working!

v0.3.5 - Complete SSL/HTTPS Support & 100% Service Reliability

🔒 Production-Ready SSL & Perfect Reliability

Automatic SSL Certificates - Uses mkcert for dual domain support: *.localhost and *.local.nself.org
100% Service Success Rate - All 17/17 services now run successfully with enhanced reliability monitoring
Green Lock Browser Compatibility - HTTP to HTTPS redirect ensures secure connections across all services
Smart Port Allocation - Reserved 3000-3099 for frontend apps, system services moved to 3100+ range
Fixed Volume & Module Issues - Source-only volume mounting, eliminated Node.js module loading errors

Update now: Run nself update then nself trust for green lock support

v0.3.4 - Standardized Headers & Improved Stability

🎨 Professional CLI Experience

Standardized Command Headers - Consistent professional headers with blue borders across all commands
Service Detection Fixes - Resolved container state detection and management issues
Auto-Fix System Improvements - Fixed syntax errors and multi-line output issues in health checks
Nginx Configuration Updates - Fixed storage port mismatch and updated to modern http2 directive

Update now: Run nself update for enhanced stability

Previous Releases

🔧 Smart Configuration Management

25+ Validation Checks - Comprehensive validation for .env files with detailed error reporting
Smart Auto-Fix System - Automatic correction of common configuration mistakes
Professional Output Formatting - Clean, aligned messages with improved readability
Advanced Validations - IP addresses, SSL configs, timezones, and service list validation

Enhanced experience: Configuration errors are now caught and fixed automatically

v0.3.0 - Major Architecture Refactor

🚀 Breaking Changes - Complete Architectural Overhaul

Modular Architecture - Complete refactor from monolithic to src-centric modular design
Intelligent Error Recovery - Auto-fix capabilities with interactive prompts for common issues
Enhanced Doctor Command - Comprehensive system health checks with auto-fix suggestions
Full macOS Compatibility - Complete bash 3.2 support with Docker Desktop auto-start
Real-time Service Monitoring - Color-coded status indicators with improved log filtering
Modular Build System - Separated modules for Docker, services, nginx, SSL, and Hasura
⚠️ Breaking Changes: This is a major architectural update. Please review the migration guide before upgrading.

Upgrade: Run nself update to get v0.3.0

View Migration Guide

v0.2.4 - Complete Email Management

Production Email Made Simple

Zero-Config Development - MailPit automatically captures and displays emails in development
16+ Email Providers - SendGrid, AWS SES, Mailgun, SMTP, and more with 2-minute setup
Interactive Setup Wizard - nself email setup guides you through provider configuration
Smart Provider Detection - Automatic configuration based on your environment variables

Get started: Run nself email setup for guided configuration

v0.2.3 - SSL Trust & Developer Experience

Eliminate Browser Warnings

Automatic SSL Trust - Uses mkcert to eliminate "Not Secure" warnings in development
Nhost Dashboard Access - Local dashboard now works seamlessly with trusted certificates
Enhanced CLI Commands - New nself trust and nself diff commands for better development workflow
Critical Bug Fixes - Resolved JWT secret parsing, environment variables, and service port issues
Hot Reload System - Experimental hot reload for faster development iterations

Try it: Run nself trust to enable SSL certificate trust

v0.2.2 - Seamless Updates & Enhanced CLI

Revolutionary Update System

One-Command Updates - Simply run nself update to get the latest version
Smart Installation - Auto-detects existing installations, intelligent dependency management
Enhanced CLI Interface - Loading animations, color-coded messages, clean output
Automatic Rollback - Safe updates with automatic rollback if something fails
Network Resilience - Helpful recovery messages and retry mechanisms

Update now: Run nself update to get these improvements

Installation & Update Guide

v0.2.1 - Environment Management & Standards

Environment & Database Improvements

Simplified Environment Variables - New ENV variable (dev/prod) with backward compatibility for ENVIRONMENT
Environment-Specific Seeding - DB_ENV_SEEDS option follows Postgres/Hasura standards
Standardized Seed Structure - Organized seeds: common/, development/, production/ directories
Production Auto-Configuration - Automatic security settings when ENV=prod
Database Tools Enhancement - Better handling of environment differences for data

v0.2.0 - Database Tools & Developer Experience

Major Release: Database Management Suite

Comprehensive Database Tools - New nself db command suite with schema-first development using DBML
Migration Management - Auto-generate migrations from schema.dbml with up/down support
dbdiagram.io Integration - Visual schema design with bidirectional sync
Backup & Restore - Automated backups with point-in-time recovery
Enhanced CLI UI - Professional terminal interface with spinners and progress indicators
Production Safety - Removed auto-migration in production, added confirmation prompts

v0.1.0 - Initial Public Release

The Complete Nhost Self-hosted Stack

First public release of nself, bringing the power of Nhost.io to self-hosted environments. This release includes:

  • • Core services: PostgreSQL, Hasura GraphQL, Authentication, MinIO Storage
  • • Optional microservices: NestJS, BullMQ, Go, Python/FastAPI
  • • Docker Compose orchestration with single .env.local configuration
  • • Automatic SSL/TLS with Let's Encrypt integration
  • • Development environment with MailHog for email testing
  • • Production deployment with nself prod command
  • • Complete CLI for service management

Licensing

Free for Personal Use, Licensed for Business

Personal & Open Source - Completely free for personal projects, learning, and open-source development
💼
Commercial Use - Business use requires a license starting at $99/month with priority support

Project Inception

Welcome to nself

nself was born from a simple need: deploy production-ready backend infrastructure without the complexity and vendor lock-in of traditional BaaS platforms.

Our mission is to make self-hosting as simple as using a managed service, while giving you complete control over your data, infrastructure, and costs. Whether you're a startup building your MVP, an agency deploying for clients, or an enterprise requiring data sovereignty, nself provides the tools you need.

Built on the foundation of Nhost.io's proven architecture, nself brings enterprise-grade backend infrastructure to everyone. No more choosing between convenience and control - with nself, you get both.

Core Principles:

  • Simplicity First - One command to deploy everything
  • Production Ready - Security, SSL, backups built-in
  • Developer Friendly - Hot reload, great DX, comprehensive docs
  • No Vendor Lock-in - Open source, self-hosted, portable

Quick Install

Install nself with our simplified command:

curl -fsSL nself.org/install.sh | bash

Alternative: Install directly from GitHub

curl -fsSL https://raw.githubusercontent.com/acamarata/nself/main/install.sh | bash

Once installed, create your first project:

nself init     # Initialize project
nself build    # Generate configuration
nself up       # Start everything!

Your complete backend is now running with SSL at *.local.nself.org (mapped to 127.0.0.1).

CLI Commands

Command

Description

nself init

v0.3.9 Initialize with minimal setup (--full, --wizard, --admin options)

nself build

Generate project structure and configurations

nself start

v0.3.6 Start all services (recommended primary command)

nself stop

v0.3.6 Stop all running services (recommended primary command)

nself up

Start all services (alias for compatibility)

nself down

Stop all running services (alias for compatibility)

nself restart

Restart all services (down + up)

nself clean

v0.3.3 Clean up Docker resources (images, containers, volumes, networks)

nself admin

v0.3.9 Web-based admin UI at localhost:3100 (enable, password, open)

nself db

v0.3.9 Interactive database operations menu (25+ subcommands)

nself db run

v0.2.0 Generate migrations from schema.dbml

nself db migrate:up

v0.2.0 Apply pending migrations

nself db seed

v0.2.0 Seed database with environment data

nself db backup

v0.2.0 Create database backup

nself prod

Create production .env from .env.local

nself reset

Delete all data and configurations

nself email setup

v0.2.4 Interactive wizard for email provider configuration

nself trust

v0.3.5 Install SSL certificate for green lock in browsers

nself ssl

v0.3.5 SSL certificate management (bootstrap, renew, status)

nself diff

v0.2.3 Show configuration differences

nself update

v0.2.2 One-command update with rollback safety

nself doctor

v0.3.2 System health checks with enhanced auto-fix capabilities

nself status

v0.3.2 Real-time service health monitoring with improved reliability

nself validate

v0.3.8 Advanced configuration validation with auto-fix capabilities

nself exec

v0.3.8 Secure container command execution with environment injection

nself metrics

v0.3.8 Comprehensive metrics collection with Prometheus/Datadog integration

nself monitor

v0.3.8 Live monitoring dashboard with real-time service health

nself scale

v0.3.8 Intelligent resource scaling with CPU/memory control

nself rollback

v0.3.8 Comprehensive rollback system for version, database, and configuration

nself backup

v0.3.8 Advanced backup system with 10+ subcommands, S3 support, automated retention

nself functions

v0.3.9 Serverless functions management (create, deploy, test, logs)

nself mlflow

v0.3.9 ML experiment tracking and model registry (localhost:5000)

nself deploy

partial SSH deployment to VPS (full automation in v0.4.0)

nself search

partial Enterprise search with 6 engines (full integration in v0.4.0)

🧪 Quality Assurance

Professional QA Team

nself has a dedicated QA team that ensures the highest quality for every release:

Release Testing - Every release, patch, and update is thoroughly tested before deployment
Issue Reproduction - All user-reported issues are reproduced and verified by the QA team
Fix Verification - When maintainer Aric Camarata (acamarata) pushes a fix, QA confirms it resolves the issue
Regression Testing - Ensures new changes don't break existing functionality
Multi-Platform Testing - Validates functionality across macOS, Linux, WSL2, and Docker environments

Found an issue? Report it on GitHub Issues - Our QA team will verify and track it to resolution.