-
-
Notifications
You must be signed in to change notification settings - Fork 2
v0.3.9
Release Date: December 2024
Type: Feature Enhancement Release
Status: 🚧 In Development
nself v0.3.9 enhances the development experience with a powerful custom services framework, frontend application support, and improved environment management. This release focuses on flexibility and ease of configuration for multi-service applications.
-
Simplified service definition with
CS_N=name,framework[,port][,route]format - Supported frameworks: js, py, go, rb, php, rust, flask (with working templates)
- Framework aliases: nodejs→js, python→py, golang→go for convenience
- Complete hello-world templates for each supported framework
- Auto-generated docker-compose.custom.yml for all custom services
-
Advanced configuration options:
- Resource limits (memory, CPU)
- Database table prefixes
- Custom routing and ports
- Health check endpoints
- Environment variables
- FRONTEND_APPS configuration for SPAs and frontend projects
-
Format:
"name:short:prefix:port"for each app - Development routing via subdomains
- Production domain overrides per app
- Database isolation with table prefixes
- Nginx configuration with SSL and CORS headers
- Configuration export for backend services
-
Multi-environment support:
-
.env.local- Personal development settings -
.env.dev- Team development defaults -
.env.staging- Staging configuration -
.env.prod- Production configuration -
.env.secrets- Sensitive data (git-ignored)
-
- Proper loading precedence with environment-aware logic
- File permission validation for .env.secrets
- Environment compilation for different stages
- Smart service detection for CS_N and legacy formats
- Template-based service generation
- Automatic nginx routing configuration
- Frontend app configuration generation
- Better error handling and progress reporting
# Build now handles CS_N services and FRONTEND_APPS
nself build # Generates custom services and frontend configs
# Status recognizes custom services
nself status # Shows CS_N service status
# Init with multi-environment support
nself init # Creates .env.local, .env.dev, .env.staging, .env.prod templatesnself email setup # Configure email providers
nself email validate # Check configuration
nself email test # Test email (development only)Note: Production email sending requires integration with auth service.
The CS_N pattern provides a clean way to define backend services:
# Basic service
CS_1=api,js,3000
# Advanced configuration
CS_1_PORT=3000
CS_1_ROUTE=api.localhost
CS_1_MEMORY=512M
CS_1_TABLE_PREFIX=api_
CS_1_PUBLIC=true
CS_1_HEALTHCHECK=/healthFrontend apps are configured with routing and database isolation:
FRONTEND_APPS="dashboard:dash:dsh_:3000,store:shop:shp_:3001"
DASHBOARD_PROD_ROUTE="dashboard.myapp.com"
STORE_PROD_ROUTE="shop.myapp.com"Working templates are provided for:
- js - Node.js with Express
- py - Python with FastAPI
- go - Go with Gin
- rb - Ruby with Sinatra
- php - PHP with Slim
- rs - Rust with Actix
- flask - Python with Flask
Each template includes:
- Dockerfile
- Main application file
- Dependencies file
- Health check endpoint
Custom Services:
CS_1=api,js # Service definition
CS_1_PORT=3000 # Port mapping
CS_1_ROUTE=api.localhost # Domain routing
CS_1_MEMORY=512M # Memory limit
CS_1_TABLE_PREFIX=api_ # Database prefixFrontend Applications:
FRONTEND_APPS="app:short:prefix:port,..."
APP_PROD_ROUTE="app.domain.com"nself v0.3.9 is fully backward compatible with v0.3.8 projects:
- All existing functionality remains unchanged
- New features are opt-in
- Existing
.env.localfiles continue to work - Legacy CUSTOM_SERVICES format still supported
To upgrade:
nself updateTo use new features:
# Add CS_N services to .env.local
CS_1=myservice,js,8001
# Add frontend apps
FRONTEND_APPS="myapp:app:app_:3000"
# Rebuild
nself build- Better error messages with actionable fixes
- Progress indicators for long operations
- Automatic framework detection for templates
- Framework aliases for common naming
- Service status integration for CS_N services
- File permission checking for .env.secrets
- Environment-based secret management
- Secure defaults for production environments
- Git-ignore patterns for sensitive files
- Modular service builder (service-builder-v2.sh)
- Consistent environment loading across commands
- Better test coverage with corrected paths
- Documentation accuracy improvements
New Projects:
mkdir myproject && cd myproject
nself init # Create environment files
# Edit .env.local to add CS_N services and FRONTEND_APPS
nself build # Generate infrastructure
nself start # Launch all servicesAdding Custom Services:
# Edit .env.local
CS_1=api,nest,3000,api.localhost
CS_2=worker,bullmq
# Rebuild and start
nself build
nself restartAdding Frontend Apps:
# Edit .env.local
FRONTEND_APPS="dashboard:dash:dsh_:3000"
# Rebuild
nself build- Commands Reference - Complete command documentation
- Environment Configuration - Environment setup guide
- Architecture - System architecture overview
- Troubleshooting - Common issues and solutions
- Email sending - Only development (MailPit) implemented, production requires auth service integration
- Init wizard - Basic implementation only, advanced wizard features planned for v0.4.0
- MLflow - Configuration present but requires external MLflow server
Planned features for the next release:
- Complete admin UI implementation
- Enterprise search integration
- VPS deployment automation
- Enhanced init wizard with project detection
- Production email service integration
- Service discovery and mesh networking
nself v0.3.9 delivers a solid foundation for multi-service application development with the CS_N pattern and frontend app support. The focus on actual working features ensures reliability while maintaining backward compatibility.
For questions or issues, visit our GitHub repository.
ɳSelf CLI v1.0.9. MIT licensed. Docs CC BY 4.0.
GitHub · Issues · Discussions · nself.org · nself.org/docs
Getting Started
Commands
- Commands, Overview
- Lifecycle: cmd-init · cmd-build · cmd-start · cmd-stop · cmd-restart · cmd-dev
- Monitoring: cmd-status · cmd-logs · cmd-health · cmd-urls · cmd-doctor · cmd-monitor · cmd-alerts · cmd-sentry · cmd-watchdog
- Data: cmd-db · cmd-backup · cmd-dr · cmd-queue · cmd-webhooks
- Config: cmd-config · cmd-service · cmd-env · cmd-promote
- Networking: cmd-ssl · cmd-trust · cmd-dns-setup
- Security: cmd-access · cmd-security · cmd-secrets
- Tenancy: cmd-tenant · cmd-billing
- Plugins: cmd-plugin · cmd-license · cmd-dogfood (extracted, CLI-R11) · cmd-k8s (extracted, CLI-R11) · cmd-encryption (extracted, CLI-R11) · cmd-waf (extracted, CLI-R11) · cmd-federation (extracted, CLI-R11) · cmd-mail (extracted, CLI-R11) · cmd-dlq (extracted, CLI-R11)
- AI: cmd-ai · cmd-claw · cmd-model
- Templates: cmd-template
- Utilities: cmd-exec · cmd-clean · cmd-reset · cmd-update · cmd-upgrade · cmd-version · cmd-admin · cmd-migrate · cmd-migrate-firebase · cmd-migrate-supabase · cmd-completion
Features
- Features, Overview
- Feature-Auth
- Feature-Storage
- Feature-Search
- Feature-Functions
- Feature-Email
- Feature-Monitoring
- Feature-Plugins
- Feature-nClaw, AI Assistant
- Feature-nChat, Messaging
- Feature-nTV, Media Player
- Feature-nFamily, Family Social
- Feature-nCloud, Managed Hosting
- Feature-Memory-Rooms, Knowledge Organization
- Feature-Agent-Dashboard, Agent Metrics
- Feature-Image-Generation, AI Image Generation
Configuration
- Configuration, Overview
- Config-Env-Vars
- Config-Postgres
- Config-Hasura
- Config-Auth
- Config-Nginx
- Config-Optional-Services
- Config-Custom-Services
- Config-System
Plugins (87 + 10 monitoring)
Free (25)
- plugin-backup
- plugin-content-acquisition
- plugin-content-progress
- plugin-cron
- plugin-donorbox
- plugin-feature-flags
- plugin-github
- plugin-github-runner
- plugin-invitations
- plugin-jobs
- plugin-link-preview
- plugin-mdns
- plugin-mlflow
- plugin-monitoring
- plugin-notifications
- plugin-notify
- plugin-paypal
- plugin-search
- plugin-shopify
- plugin-stripe
- plugin-subtitle-manager
- plugin-tokens
- plugin-torrent-manager
- plugin-vpn
- plugin-webhooks
Pro (62)
- plugin-access-controls
- plugin-activity-feed
- plugin-admin-api
- plugin-nself-ai-gateway
- plugin-nself-ai-mcp
- plugin-nself-ai-mcp
- plugin-analytics
- plugin-auth
- plugin-backup-pro
- plugin-bots
- plugin-browser
- plugin-calendar
- plugin-cdn
- plugin-chat
- plugin-claw
- plugin-claw-budget
- plugin-claw-news
- plugin-claw-web
- plugin-cloudflare
- plugin-cms
- plugin-compliance
- plugin-cron-pro
- plugin-ddns
- plugin-devices
- plugin-documents
- plugin-donorbox-pro
- plugin-entitlements
- plugin-epg
- plugin-file-processing
- plugin-game-metadata
- plugin-geocoding
- plugin-geolocation
- plugin-google
- plugin-home
- plugin-idme
- plugin-knowledge-base
- plugin-linkedin
- plugin-livekit
- plugin-media-processing
- plugin-meetings
- plugin-moderation
- plugin-mux
- plugin-notify-pro
- plugin-object-storage
- plugin-observability
- plugin-paypal-pro
- plugin-photos
- plugin-podcast
- plugin-post
- plugin-realtime
- plugin-recording
- plugin-retro-gaming
- plugin-rom-discovery
- plugin-shopify-pro
- plugin-social
- plugin-sports
- plugin-stream-gateway
- plugin-streaming
- plugin-stripe-pro
- plugin-support
- plugin-tmdb
- plugin-voice
- plugin-web3
- plugin-workflows
Planned (26)
plugin-auditplugin-blogplugin-checkoutplugin-commerceplugin-drmplugin-exportplugin-flowplugin-importplugin-ldapplugin-mailgunplugin-mediaplugin-oauth-providersplugin-pagesplugin-postmarkplugin-rate-limitplugin-reportsplugin-samlplugin-schedulerplugin-sendgridplugin-ssoplugin-subscriptionplugin-thumbplugin-transcoderplugin-twilioplugin-wafplugin-watermark
Guides
- Guide-Production-Deployment
- Guide-SSL-Setup
- Guide-Multi-Tenancy
- Guide-Security-Hardening
- Guide-Monitoring-Setup
- Guide-Backup-Restore
- Guide-Custom-Services
- Guide-Migration-from-v1
Architecture
Reference
- API-Reference
- error-codes, Error Codes
Licensing
Security
Brand
Operations
- operations/release-cascade, Release Cascade
- operations/self-healing, Self-Healing Schema
- operations/redis-tuning, Redis Pool Tuning
- operations/meilisearch-warmup, MeiliSearch Warm-Up
- operations/jwt-rotation, JWT Key Rotation
- operations/windows-wsl2-setup, Windows / WSL2 Setup
- operations/gemini-oauth-reauth, Gemini OAuth Reauth
Contributing
Admin
- USER-ACTION-QUEUE, Pending Admin Actions
All commands (52)
- A: cmd-access · cmd-account · cmd-admin
- B: cmd-backup · cmd-build · cmd-bundle
- C: cmd-ci · cmd-clean · cmd-completion · cmd-config
- D: cmd-db · cmd-deploy · cmd-dev · cmd-doctor
- E: cmd-env · cmd-exec
- F: cmd-functions
- G: cmd-generate
- H: cmd-health · cmd-help-topics
- I: cmd-init · cmd-install
- L: cmd-license · cmd-login · cmd-logout · cmd-logs
- M: cmd-man · cmd-mcp · cmd-migrate
- O: cmd-oauth · cmd-ops
- P: cmd-plugin · cmd-promote
- R: cmd-remove · cmd-reset · cmd-restart · cmd-runner
- S: cmd-secrets · cmd-security · cmd-self-heal · cmd-server · cmd-service · cmd-start · cmd-status · cmd-stop
- T: cmd-telemetry · cmd-template · cmd-trust
- U: cmd-update · cmd-urls
- V: cmd-verify-sbom · cmd-version