Skip to content

rizonesoft/IsotoneStack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

35 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

IsotoneStack - Portable Windows Development Environment

A complete, portable WAMP (Windows, Apache, MySQL/MariaDB, PHP) stack distributed as a pre-bundled package with the latest stable versions of all components.

๐Ÿ“ฆ Distribution Model

IsotoneStack follows the XAMPP distribution model:

  • Pre-bundled components - All binaries included in the download
  • No internet required - Works completely offline after download
  • Portable installation - Can be moved between systems
  • Zero configuration - Works out of the box
  • Complete distribution - All components in distribution/isotone-components/

Component Distribution

All required components are pre-bundled in C:\isotone\distribution\isotone-components\:

  • Apache, PHP, MariaDB binaries
  • Database management tools (phpMyAdmin, Adminer, phpLiteAdmin)
  • Development tools (Mailpit, PowerShell)
  • All dependencies and utilities
  • Ready for offline installation

See distribution/isotone-components/COMPONENTS.md for complete component list.

๐Ÿš€ Components

Core Services

  • Apache 2.4.65 (Latest stable web server)
  • PHP 8.4.11 (Latest stable PHP runtime)
  • MariaDB 12.0.2 (Latest stable database server)
  • SQLite 3 (Built into PHP - file-based database)

Management Tools

  • phpMyAdmin 5.2.2 (Latest stable - MariaDB management)
  • phpLiteAdmin 1.9.8.2 (SQLite database management)
  • Adminer 5.3.0 (Universal database management - supports MariaDB, SQLite, PostgreSQL, and more)
  • Mailpit 1.27.7 (Email testing tool - captures and displays emails sent by your applications)
  • Control Panel - Modern Python/CustomTkinter GUI

System Utilities

  • NSSM 2.24 (Non-Sucking Service Manager - reliable Windows service management)
  • PowerShell 7+ (Portable PowerShell for script execution)
  • VC++ Runtime 2022 (Required runtime libraries)

โœจ Features

  • โœ… Complete portable package (no separate downloads)
  • โœ… Modern GUI control panel
  • โœ… Windows service integration
  • โœ… No registry dependencies
  • โœ… Pre-configured for optimal performance
  • โœ… Virtual hosts manager
  • โœ… Database management interface
  • โœ… Email testing with Mailpit (captures all outgoing emails)
  • โœ… System tray integration
  • โœ… Dark/light theme support

๐Ÿ“ฅ Installation

Download Package

  1. Download the complete IsotoneStack package (includes all components)
  2. Extract to C:\isotone

Manual Component Setup (for developers)

If you're building from source or updating components:

  1. Download components manually:

  2. Extract to correct directories:

    C:\isotone\apache24\      โ† Apache files
    C:\isotone\php\           โ† PHP files
    C:\isotone\mariadb\       โ† MariaDB files
    C:\isotone\phpmyadmin\    โ† phpMyAdmin files
    C:\isotone\phpliteadmin\  โ† phpLiteAdmin files
    C:\isotone\adminer\       โ† Adminer files
    C:\isotone\mailpit\       โ† Mailpit executable
    
  3. Run setup script:

    cd C:\isotone
    .\Setup-IsotoneStack.ps1

๐ŸŽฎ Control Panel

GUI Control Panel (Recommended)

C:\isotone\control-panel\launch.bat

Features:

  • Service management (start/stop/restart)
  • Virtual hosts configuration
  • Database management
  • Port configuration
  • Log viewer
  • Settings management

PowerShell Scripts

Located in C:\isotone\:

# Configure and register services (run once)
.\Setup-IsotoneStack.ps1

# Start all services
.\Start-Services.ps1

# Stop all services
.\Stop-Services.ps1

# Check service status
.\Check-Status.ps1

# Uninstall services (preserves files)
.\Uninstall-Services.ps1

๐Ÿ“ Directory Structure

C:\isotone\
โ”œโ”€โ”€ apache24/          # Apache 2.4.65+ binaries
โ”œโ”€โ”€ php/               # PHP 8.4.11+ binaries
โ”œโ”€โ”€ mariadb/           # MariaDB 12.0.2+ binaries
โ”œโ”€โ”€ sqlite/            # SQLite databases directory
โ”œโ”€โ”€ phpmyadmin/        # phpMyAdmin 5.2.2+ web app
โ”œโ”€โ”€ phpliteadmin/      # phpLiteAdmin 1.9.8.2 SQLite manager
โ”œโ”€โ”€ adminer/           # Adminer 5.3.0 universal DB manager
โ”œโ”€โ”€ mailpit/           # Mailpit 1.27.7 email testing tool
โ”œโ”€โ”€ bin/               # System utilities
โ”‚   โ””โ”€โ”€ nssm.exe       # NSSM 2.24 service manager
โ”œโ”€โ”€ runtime/           # VC++ Runtime installer (included)
โ”‚   โ””โ”€โ”€ vc_redist.x64.exe
โ”œโ”€โ”€ distribution/      # Component distribution packages
โ”‚   โ””โ”€โ”€ isotone-components/  # All pre-bundled components
โ”‚       โ”œโ”€โ”€ apache24/         # Apache distribution
โ”‚       โ”œโ”€โ”€ php/              # PHP distribution
โ”‚       โ”œโ”€โ”€ mariadb/          # MariaDB distribution
โ”‚       โ”œโ”€โ”€ mailpit/          # Mailpit distribution
โ”‚       โ”œโ”€โ”€ adminer/          # Adminer distribution
โ”‚       โ”œโ”€โ”€ phpmyadmin/       # phpMyAdmin distribution
โ”‚       โ”œโ”€โ”€ phpliteadmin/     # phpLiteAdmin distribution
โ”‚       โ”œโ”€โ”€ pwsh/             # PowerShell distribution
โ”‚       โ””โ”€โ”€ bin/              # Binary utilities
โ”œโ”€โ”€ control-panel/     # Python GUI application
โ”‚   โ”œโ”€โ”€ main.py        # Main application entry
โ”‚   โ”œโ”€โ”€ ui/            # UI components
โ”‚   โ””โ”€โ”€ services/      # Service management
โ”œโ”€โ”€ www/               # Your websites go here
โ”‚   โ””โ”€โ”€ default/       # Default website
โ”œโ”€โ”€ logs/              # Centralized logs
โ”œโ”€โ”€ config/            # Configuration templates
โ”œโ”€โ”€ ssl/               # SSL certificates
โ”œโ”€โ”€ tmp/               # Temporary files
โ””โ”€โ”€ backups/           # Database backups

๐ŸŒ Access Points

โš™๏ธ Configuration

Service Ports

  • Apache: 80, 443 (SSL)
  • MariaDB: 3306
  • Mailpit SMTP: 1025
  • Mailpit Web UI: 8025
  • PHP: Via Apache module

Configuration Files

  • Apache: C:\isotone\apache24\conf\httpd.conf
  • PHP: C:\isotone\php\php.ini
  • MariaDB: C:\isotone\mariadb\data\my.ini
  • phpMyAdmin: C:\isotone\phpmyadmin\config.inc.php

๐Ÿ› ๏ธ Troubleshooting

Services Won't Start

  1. Check Administrator privileges:

    # Run PowerShell as Administrator
  2. Check port conflicts:

    netstat -ano | findstr :80
    netstat -ano | findstr :3306
  3. Check Visual C++ Runtime:

    • Included in runtime\vc_redist.x64.exe
    • Auto-installed by Setup script
    • Manual install: Run runtime\vc_redist.x64.exe

View Logs

# Apache errors
Get-Content C:\isotone\logs\apache\error.log -Tail 20

# PHP errors
Get-Content C:\isotone\logs\php\error.log -Tail 20

# MariaDB errors
Get-Content C:\isotone\logs\mariadb\error.log -Tail 20

๐Ÿ”ง Advanced Usage

Virtual Hosts

  1. Use the Control Panel's Virtual Hosts Manager, or
  2. Edit C:\isotone\apache24\conf\extra\httpd-vhosts.conf:
<VirtualHost *:80>
    ServerName myproject.local
    DocumentRoot "C:/isotone/www/myproject"
    <Directory "C:/isotone/www/myproject">
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>
  1. Add to C:\Windows\System32\drivers\etc\hosts:
127.0.0.1 myproject.local

PHP Configuration

Create .user.ini in your project:

memory_limit = 1024M
max_execution_time = 600
upload_max_filesize = 256M
post_max_size = 256M

Email Testing with Mailpit

Mailpit captures all emails sent by your PHP applications for testing:

  1. Configure PHP to use Mailpit (already configured in php.ini):
SMTP = localhost
smtp_port = 1025
  1. Start Mailpit service (auto-starts with IsotoneStack):
.\Start-Services.ps1  # Includes Mailpit
  1. View captured emails:

    • Open http://localhost:8025
    • All emails sent by your applications appear here
    • No emails are actually sent externally
  2. PHP mail() example:

mail('[email protected]', 'Test Subject', 'Test message body');
// This email will be captured by Mailpit

SSL Setup

  1. Generate certificates in C:\isotone\ssl\
  2. Enable SSL in Apache configuration
  3. Restart Apache service

๐Ÿ“Š System Requirements

  • OS: Windows 10/11 (64-bit)
  • RAM: 2GB minimum, 4GB+ recommended
  • Disk: 2GB for installation
  • Runtime: Visual C++ 2019-2022 Redistributable (included in runtime folder)

๐Ÿ”’ Security Notes

โš ๏ธ Default configuration is for development only!

For production:

  1. Change all default passwords
  2. Restrict service access
  3. Enable firewall rules
  4. Configure SSL/TLS
  5. Disable debug modes
  6. Review security settings

๐Ÿ“ License

IsotoneStack distribution is open source. Individual components are subject to their respective licenses:

  • Apache: Apache License 2.0
  • PHP: PHP License 3.01
  • MariaDB: GPL v2
  • phpMyAdmin: GPL v2
  • Adminer: Apache License 2.0 or GPL v2
  • Mailpit: MIT License

๐Ÿ†˜ Support

  • Documentation: See /docs directory
  • Issues: Report on GitHub
  • Logs: Check C:\isotone\logs\
  • Status: Run Control Panel or .\Check-Status.ps1

IsotoneStack - Professional Development Environment for Windows Version 1.0 | Built with the latest stable components

About

A modern, portable Windows development stack (WAMP) with GUI control panel

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors