We're thrilled to announce the release of Laragon Dashboard 4.0.5, a complete reimagining of local development environment management for Windows. This isn't just an update, it's a quantum leap forward in how you interact with your Laragon setup.
Laragon Dashboard is a modern, feature-rich web-based dashboard for managing Laragon development environment. Version 4.0.5 aims to be a comprehensive MAMP competitor on Windows, replicating Laragon control panel functionality in a modern, themed web interface.
"The best Windows development environment just got better. Welcome to the future of local development."
- Project Name: Laragon Dashboard
- Version: 4.0.5
- Author: Tarek Tarabichi
- Company: 2TInteractive (2tinteractive.com)
- Project Start: Early 2024
- GitHub: https://github.com/LebToki/Laragon-Dashboard
- License: MIT
- Goal: MAMP competitor for Windows OS (with potential future cross-platform support)
Laragon has always been the fastest, most lightweight development environment for Windows. With version 4.0.5 of the dashboard, we're bringing that same philosophy to the web interface:
- No Electron bloat – Pure web technology, zero memory overhead
- Instant Startup – Access your dashboard immediately via localhost.
- Seamless Auth – Local Auto-Authorization pre-authorizes sessions from
127.0.0.1. - Integrated Environment – Direct bridge between web UI and Laragon services.
- Native feel – WebSocket updates make it feel like a desktop app
- Extensible – Plugin system for custom tools and integrations
This release transforms Laragon from a simple WAMP alternative into a comprehensive development ecosystem that rivals (and surpasses) MAMP on macOS. Whether you're a Laravel artisan, WordPress developer, or Symfony specialist, this dashboard will change how you work.
-> Download now from the official repository or update through Laragon's built-in tools.
- Windows: ✅ Fully supported (primary platform)
- macOS: ❌ Not supported by Laragon (Windows-only)
- Linux: ❌ Not supported by Laragon (Windows-only)
Laragon is currently Windows-only. For future cross-platform support, the dashboard architecture is designed to:
- Abstract platform-specific operations (service management, file paths, etc.)
- Support multiple backend environments (Laragon on Windows, MAMP/XAMPP on macOS/Linux)
- Detect and adapt to the host platform
- Provide platform-specific features when available
Potential Future Platforms:
- macOS: Could integrate with MAMP, Laravel Valet, or Docker
- Linux: Could integrate with LAMP stack, Docker, or platform-specific tools
- Start/Stop/Restart Services - Apache, MySQL, Nginx, Redis, Memcached, MongoDB, PostgreSQL, Mailpit
- Service Status Monitoring - Real-time status display
- Port Monitoring - View all listening ports on your system
- Service Version Detection - Automatic version detection
- Windows Service Control - Full Windows service management via
sccommands - Process-Based Services - Support for non-Windows services (Nginx, Mailpit)
- Project Discovery - Automatically list projects from
wwwdirectory - Framework Detection - WordPress, Laravel, Drupal, CodeIgniter, Symfony, CakePHP, Joomla
- Project Search/Filter - Quick search and filtering capabilities
- Quick Access Links - Direct links to project admin panels
- Framework-Specific Icons - Visual identification of project types
- Project Actions Menu - 3-dot dropdown menu for quick actions (Ignore Project)
- Smart WP Admin Button - Only displays for WordPress projects, hides automatically for others
- Project Ignoring - Hide projects from the list via dropdown menu or right-click context menu
- Universal Database Browser - Browse all databases with real-time size calculations.
- Table Explorer & Schema Viewer - Deep-dive into table structures, row counts, indices, and constraints.
- Safe SQL Query Runner - Execute SELECT queries with a result grid (Safe Read-Only mode).
- Engine & Collation Tracking - Monitor storage engines and character sets at a glance.
- Modular Backend - Powered by a high-performance
Databases.phpcore class.
- Smart Email Viewer - Integrated viewer for Laragon's sendmail output.
- Logs as HTML Rendering - NEW: Automagically transforms raw log emails into searchable, color-coded HTML tables.
- Mailpit Sync - Seamless integration with Mailpit for real-time local email monitoring.
- Email Statistics - Comprehensive breakdown of email volume and unique senders.
- Bulk Operations - Advanced search, filter, and management of local mail.
- Real-time Vitals - CPU, memory, and disk usage monitoring
- PHP Memory Tracking - Monitor PHP memory usage and limits
- Multi-drive Support - Track disk usage across all drives
- Visual Charts - Interactive charts using Chart.js
- Windows Compatible - Optimized for Windows/Laragon environment
- Multi-Log Support - View Apache, PHP, MySQL, and Dashboard logs
- Configurable Display - Adjust number of lines to display (10-1000)
- Log Management - Clear log files with one click
- Auto-Detection - Automatically finds available log files
- Terminal-Style Display - Easy-to-read log format
- Cache Management - Clear application and framework caches
- Database Optimization - Optimize all tables in a database
- Git Integration - Check Git status for projects
- Composer Commands - Install, update, dump-autoload, clear-cache
- NPM Commands - Install, update, run build/dev/prod
- PHP Info - Quick access to PHP configuration
- SMTP Configuration Fix - Automatically configure PHP to use Mailpit SMTP instead of sendmail.exe
- Full Project Backup - Backup projects with database
- Configurable Options - Include/exclude vendor, cache directories
- Recent Backups List - View and manage backup history
- Download Backups - Easy backup retrieval
- ZIP Compression - Efficient backup storage
- GitHub-Integrated Updates - Automatic checks against the latest releases.
- Visual Progress - Real-time download and installation feedback.
- Safety First - Automated backup of the current installation before any update.
- BYOK AI Agent - NEW: Integrated glassmorphic chat widget for project scaffolding, troubleshooting, and code assistance.
- System Context Bridge - Secure backend API providing real-time environment data to the agent.
Laragon Dashboard now features a powerful plugin system that allows you to extend functionality with third-party tools and integrations.
- Multi-provider AI support: Ollama, DeepSeek, Gemini, HuggingFace, OpenAI, Anthropic, Qwen, MiniMax
- Project manager with 7 starter templates
- AI Studio for image generation
- Monaco Editor (VS Code engine)
- Full file browser and editor
- One-click installation from GitHub
- Click the puzzle icon in the navbar
- Click "Open Plugin Hub"
- Browse available plugins
- Click "Install" on any plugin
- Auto-updates: Plugins check for updates automatically
- One-click updates: Update plugins with a single click
- Easy uninstallation: Remove plugins completely
- Enable/disable: Toggle plugins without uninstalling
Plugins are distributed as GitHub releases with .zip archives. To create a plugin:
- Create a GitHub repository with your plugin
- Add a
plugin.jsonmanifest file - Create releases with
.ziparchives - Add your plugin to the available plugins list
plugins/
├── codepilot/ # Plugin directory
│ ├── public/ # Web-accessible files
│ ├── src/ # Source code
│ └── plugin.json # Plugin manifest
└── ...
data/plugins/
└── registry.json # Installed plugins registry
Plugins automatically check for updates from GitHub and notify you when new versions are available.
- CSRF Protection - Secure token-based protection
- Security Headers - Comprehensive HTTP security headers
- Rate Limiting - Prevent abuse and brute force attacks
- Input Sanitization - XSS and injection protection
- Secure Sessions - HTTPOnly and secure cookie settings
- Content Security Policy - Advanced CSP implementation
- SQL Injection Protection - Prepared statements throughout
- 8 Languages - English, German, Spanish, French, Indonesian, Portuguese, Tagalog, Arabic
- Easy Language Switching - Quick language selector
- Consistent Translation System - Organized translation files
- Module-Based Translations - Translations organized by feature
- Laragon development environment installed
- PHP 7.4+ with required extensions:
jsonmbstringopensslpdo_mysql
- MySQL/MariaDB server
- Web server (Apache/Nginx)
-
Download the latest release from the Releases page
-
Extract the zip file to your Laragon
wwwdirectory:C:\laragon\www\Laragon-Dashboard\ -
Edit Laragon's root index.php (located at
C:\laragon\www\index.php)Replace the existing content with this redirect:
<?php header('Location: /Laragon-Dashboard/'); exit; ?>
-
Access Dashboard
http://localhost/or directly:
http://localhost/Laragon-Dashboard/
-
Clone the repository
git clone https://github.com/LebToki/Laragon-Dashboard.git cd Laragon-Dashboard -
Move to Laragon www directory
# Move Laragon-Dashboard folder to www move Laragon-Dashboard C:\laragon\www\Laragon-Dashboard
-
Edit Laragon's root index.php (located at
C:\laragon\www\index.php)Replace the existing content with this redirect:
<?php header('Location: /Laragon-Dashboard/'); exit; ?>
-
Access Dashboard
http://localhost/or directly:
http://localhost/Laragon-Dashboard/
The dashboard auto-detects Laragon installation paths. Edit config.php to customize:
// Auto-detected values (no manual configuration needed)
$LARAGON_ROOT = getLaragonRoot(); // Auto-detect from common paths
SENDMAIL_OUTPUT_DIR = getLaragonSendmailDir(); // C:/laragon/bin/sendmail/output/
DOMAIN_SUFFIX = getLaragonDomainSuffix(); // .local
APP_VERSION = getAppVersion(); // From Git or VERSION file
// MySQL Configuration (defaults)
MYSQL_HOST = 'localhost'
MYSQL_USER = 'root'
MYSQL_PASSWORD = ''
// Application Settings
APP_NAME = 'Laragon Dashboard'
APP_DEBUG = false // Debug banner is DISABLED by default (line 38)
APP_ENV = 'production' // development, staging, production (line 41)
SESSION_TIMEOUT = 3600
MAX_LOGIN_ATTEMPTS = 5
// Time and Date Format (optional overrides)
TIME_FORMAT = null // null = auto-detect, '12' = 12-hour, '24' = 24-hour
DATE_FORMAT = null // null = auto-detect, or custom format like 'Y-m-d', 'm/d/Y'Important Notes:
-
Debug Banner: The debug banner is disabled by default (
APP_DEBUG = falseon line 38). You won't see it unless you enable it for troubleshooting. Only enable it if you're experiencing CSS loading issues, asset path problems, or need to debug routing/URL issues. You can also enable it via the Preferences page. -
Environment: The dashboard runs in
productionmode by default (APP_ENV = 'production'on line 41). This ensures optimal performance and security. Change todevelopmentonly if you need additional debugging features. -
Time/Date Format: Time and date formats are auto-detected from your system locale. You can override them in
config.phpor via the Preferences page.
Laragon Path Auto-Detection Order:
LARAGON_ROOTenvironment variable- Common paths:
C:/laragon,D:/laragon,E:/laragon - Detect from
DOCUMENT_ROOT(if contains 'laragon') - Default fallback:
C:/laragon
Important Setup Note:
- The root
index.phpfile atC:\laragon\www\index.phpshould redirect to the dashboard - This allows accessing the dashboard via
http://localhost/instead ofhttp://localhost/Laragon-Dashboard/ - If you prefer direct access, you can skip modifying the root
index.phpand access the dashboard directly athttp://localhost/Laragon-Dashboard/
Laragon-Dashboard/
├── api/ # API endpoints
│ ├── services.php # Services management API
│ ├── databases.php # Database management API
│ ├── vitals.php # Server monitoring API
│ ├── logs.php # Log viewer API
│ ├── tools.php # Quick tools API
│ ├── backup.php # Backup API
│ ├── update.php # Update API
│ └── mailpit.php # Email management API
├── assets/ # Application assets
│ ├── css/ # Stylesheets
│ ├── js/ # JavaScript files
│ ├── images/ # Images and icons
│ └── fonts/ # Web fonts
├── i18n/ # Internationalization
│ ├── common/ # Common translations
│ ├── dashboard/ # Dashboard translations
│ ├── projects/ # Projects translations
│ └── ... # Module-specific translations
├── includes/ # Helper classes
│ ├── Router.php # Routing system
│ ├── UpdateManager.php # Update management
│ ├── AdminerModule.php # Database admin integration
│ ├── ConfigMigrator.php # Configuration migration
│ └── helpers.php # Helper functions
├── pages/ # Page templates
│ ├── dashboard.php # Main dashboard
│ ├── projects.php # Projects page
│ ├── services.php # Services page
│ ├── databases.php # Databases page
│ ├── mailbox.php # Email client
│ ├── vitals.php # Server monitoring
│ ├── logs.php # Log viewer
│ └── tools.php # Quick tools
├── partials/ # Layout partials
│ ├── layouts/ # Layout templates
│ │ ├── layoutTop.php # Top layout (header, sidebar, navbar)
│ │ └── layoutBottom.php # Bottom layout (footer, scripts)
│ ├── head.php # Meta tags, CSS includes
│ ├── sidebar.php # Navigation sidebar
│ ├── navbar.php # Top navigation bar
│ ├── footer.php # Footer content
│ └── scripts.php # JavaScript includes
├── devfiles/ # Development files
│ ├── KNOWLEDGE_BASE.md # Knowledge base documentation
│ ├── TESTING_CHECKLIST.md # Testing guidelines
│ └── ... # Other dev documentation
├── config.php # Main configuration
├── index.php # Entry point and router
└── README.md # This file
The main dashboard provides:
- Server Information - PHP version, MySQL status, web server details
- Project Management - List and manage your development projects
- Framework Detection - Automatic detection of WordPress, Laravel, Drupal, etc.
- Quick Access - Direct links to project admin panels
Control Laragon services via the "Services" tab:
- Start, stop, or restart services (Apache, MySQL, Nginx, Redis, Memcached, MongoDB, PostgreSQL, Mailpit)
- View real-time status of all services
- Monitor listening ports
- Quick service actions
Access projects via the "Projects" tab:
- View all projects in your
wwwdirectory - Search and filter projects
- See framework detection results
- Quick access to project admin panels
Access database tools via the "Databases" tab:
- Browse all available databases and their sizes
- Explore table structures, row counts, and sizes
- Run SELECT queries safely (read-only)
- Optimize database tables
Access the email client via the "Mailbox" tab:
- View email statistics (total, daily, weekly, unique senders)
- Search and filter emails
- Read full email content
- Delete individual or bulk emails
- Export email data
Monitor your server via the "Server Vitals" tab:
- Real-time charts for CPU, memory, and disk usage
- PHP memory usage tracking
- Multi-drive disk space monitoring
- Performance metrics
View logs via the "Logs" tab:
- Multiple log types (Apache, PHP, MySQL, Dashboard)
- Configurable line count (10-1000)
- Clear log files when needed
- Terminal-style display
Access developer tools via the "Tools" tab:
- Cache management (clear application and framework caches)
- Database optimization
- Git status check
- Composer and NPM commands
- PHP info viewer
All APIs return JSON responses and follow a consistent pattern:
GET /api/services.php?action=status
GET /api/services.php?action=start&service=Apache
GET /api/services.php?action=stop&service=MySQL
GET /api/services.php?action=restart&service=Nginx
GET /api/services.php?action=get_ports
GET /api/databases.php?action=list_databases
GET /api/databases.php?action=get_tables&database=dbname
GET /api/databases.php?action=get_table_structure&database=dbname&table=tablename
GET /api/databases.php?action=get_database_size&database=dbname
POST /api/databases.php?action=execute_query
GET /api/vitals.php
Returns JSON with server statistics (uptime, CPU, memory, disk usage, PHP memory info).
GET /api/logs.php?action=list_logs
GET /api/logs.php?action=read_log&path=logpath&lines=100
GET /api/logs.php?action=clear_log&path=logpath
POST /api/tools.php (action: clear_cache)
POST /api/tools.php (action: optimize_database, database: dbname)
POST /api/tools.php (action: composer_command, project_path: path, command: install)
POST /api/tools.php (action: npm_command, project_path: path, command: install)
POST /api/tools.php (action: git_status, project_path: path)
GET /api/tools.php?action=php_info
GET /api/backup.php?action=list
POST /api/backup.php?action=create
POST /api/backup.php?action=delete&backup_id=id
GET /api/update.php?action=check
POST /api/update.php?action=download
POST /api/update.php?action=install
- PHP 7.4 or higher
- Laravel (or any PHP web server like Apache/Nginx)
- HTTPS enabled (recommended for production)
Before deploying to production, please configure the following security settings in config.php:
The dashboard now requires authentication by default. Make sure to set a strong password:
// In config.php
define('AUTH_ENABLED', true);
// Set a strong password (recommended: use environment variable)
define('ADMIN_PASSWORD', getenv('LARAGON_DASHBOARD_PASSWORD') ?: 'YourStrongPassword123!');Best Practice: Use environment variables instead of hardcoding passwords:
# Set environment variable
set LARAGON_DASHBOARD_PASSWORD=YourStrongPassword123!Uncomment the HTTPS redirect in .htaccess:
# .htaccess
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]The following settings are recommended for production:
// config.php
define('APP_DEBUG', false); // Disable debug mode
define('APP_ENV', 'production'); // Set environment
define('SECURITY_HEADERS_ENABLED', true); // Enable security headers- Clone the repository:
git clone https://github.com/LebToki/Laragon-Dashboard.git
cd Laragon-Dashboard- Checkout production branch:
git checkout production-
Configure security:
- Edit
config.phpand set a strong admin password - Or set
LARAGON_DASHBOARD_PASSWORDenvironment variable
- Edit
-
Configure HTTPS:
- Uncomment HTTPS redirect in
.htaccess - Or configure SSL in your web server
- Uncomment HTTPS redirect in
-
Access the dashboard:
- Navigate to your deployed URL
- Login with your configured password
| Variable | Description | Default |
|---|---|---|
LARAGON_DASHBOARD_PASSWORD |
Admin password | (none - must be set) |
LARAGON_ROOT |
Laragon installation path | Auto-detected |
- CSRF Protection - All forms protected with CSRF tokens
- XSS Prevention - All user inputs sanitized
- SQL Injection Protection - Prepared statements used throughout
- Rate Limiting - Prevents brute force attacks
- Secure Headers - Comprehensive HTTP security headers
- File Upload Security - Restricted file types and sizes
X-Frame-Options: DENYX-Content-Type-Options: nosniffX-XSS-Protection: 1; mode=blockStrict-Transport-Security(HTTPS only)Content-Security-PolicyReferrer-Policy: strict-origin-when-cross-origin
The dashboard leverages Bootstrap 5's theming capabilities with a custom CSS layer. You can easily customize the look and feel by modifying these CSS variables:
/* Main color scheme */
:root {
--primary-color: #0d6efd;
--secondary-color: #6c757d;
--success-color: #198754;
--danger-color: #dc3545;
--warning-color: #ffc107;
--info-color: #0dcaf0;
}
### Language Files
Add new languages by creating JSON files in `i18n/[module]/[language].json`:
```json
{
"title": "Welcome to the Laragon Dashboard",
"header": "My Development Server",
"servers_tab": "Servers",
"inbox_tab": "Mailbox",
"vitals_tab": "Server's Vitals"
}If you're experiencing issues with path detection, CSS loading, or 404 errors, use the built-in diagnostic tool:
-
Access the diagnostic page:
http://localhost/Laragon-Dashboard/diagnostic.phpor
http://laragon-dashboard.local/diagnostic.php -
Review the output - The tool will show:
- Server configuration and paths
- Laragon detection status
- File system checks
- Asset path verification
- URL access tests
-
Share results - If you need help, share the diagnostic output for faster troubleshooting
404 Errors:
- Run the diagnostic tool to identify path issues
- Verify Apache's document root matches your setup
- Check that
.htaccessfile exists and is readable - Ensure
index.phpis accessible directly
CSS/JS Not Loading:
- Check browser console (F12) for 404 errors on assets
- Verify
ASSETS_URLis correctly calculated (use diagnostic tool) - Clear browser cache and hard refresh (Ctrl+F5)
- Ensure assets directory exists and is readable
Laragon Not Detected:
- Use the diagnostic tool to verify detection
- Manually set Laragon path in Preferences if auto-detection fails
- Check that
laragon.exeandusr/laragon.iniexist in Laragon root - Verify file permissions allow PHP to read Laragon directory
Email not loading:
- Check
SENDMAIL_OUTPUT_DIRpath in config.php - Ensure directory exists and is readable
- Verify Laragon sendmail configuration
Server vitals not working:
- Ensure PHP has necessary permissions
- Check if required PHP extensions are loaded
- Verify disk paths are accessible
Database connection issues:
- Verify MySQL credentials in config.php
- Ensure MySQL service is running
- Check firewall settings
Performance issues:
- Enable caching in config.php
- Check log files for errors
- Monitor memory usage
The debug banner is disabled by default and you won't see it unless you enable it. This is intentional - it's only needed when troubleshooting issues.
To enable the debug banner:
-
Via Preferences (Recommended):
- Go to Preferences page
- Under Debug Settings, check "Show Debug Banner"
- Save preferences
-
Via config.php:
// In config.php (line 38) define('APP_DEBUG', true); // Only enable if troubleshooting
When to enable it:
- If you're experiencing CSS loading issues
- If assets (images, JS, CSS) aren't loading correctly
- If you need to troubleshoot path detection problems
- If you're debugging routing or URL issues
What it shows:
- Base URL and Assets URL
- Document root path
- Laragon root detection
- Current script path
- Server variables
Note: The debug banner is controlled by APP_DEBUG in config.php (line 38) and can also be toggled via user preferences. It's set to false by default for a clean user experience.
- File-based Caching - Reduces database queries
- Lazy Loading - Loads content as needed
- Minified Assets - Optimized CSS and JavaScript
- Compressed Responses - Reduced bandwidth usage
- Database Connection Pooling - Efficient database usage
- Execution Time Tracking - Monitor page load times
- Memory Usage Monitoring - Track memory consumption
- Cache Statistics - Monitor cache hit rates
- Error Logging - Track and analyze errors
The dashboard automatically detects frameworks in your projects:
- WordPress - Checks for
wp-config.php - Laravel - Checks for
artisanfile - Drupal - Checks for
sites/default/settings.php - CodeIgniter - Checks for
application/config/config.php - Symfony - Checks for
app/AppKernel.phporsymfony.lock - CakePHP - Checks for
config/app.php - Joomla - Checks for
configuration.php
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
- Follow PSR-12 coding standards
- Add comprehensive comments
- Include error handling
- Test on multiple PHP versions
- No inline JavaScript in PHP files (all JS in separate files)
- Use template partials for layout consistency
This project is licensed under the MIT License - see the LICENSE file for details.
- Laragon Team - For the excellent development environment
- Bootstrap Team - For the amazing CSS framework
- Chart.js Team - For the beautiful charting library
- Contributors - All the amazing people who contributed to this project
- Documentation - Check this README and the Knowledge Base
- Issues - Report bugs via GitHub Issues
- Discussions - Join our GitHub Discussions
See CHANGELOG.md for detailed version history.
- refactor: utilize Security::checkAuth and update Router authentication by @LebToki in #47
- performance: consolidate shell executions for service and system vitals by @LebToki in #48
- 🧹 chore: remove unused getDiskInfo and formatBytes methods by @LebToki in #49
- 🧹 [Code Health] Remove unused getDiskInfo and formatBytes methods from System class by @LebToki in #50
- 🧹 Remove unused scanForLaragonInstallations from config.php by @LebToki in #54
- 🧪 [Testing Improvement] Add tests for Services::stop() method by @LebToki in #55
- Fix false-positive TODO in full-calendar.js by @LebToki in #56
- 🧪 Test System::getDiskInfo() by @LebToki in #57
- Remove architectural TODO from vendored full-calendar.js by @LebToki in #73
- ⚡ Optimize disk space WMI query in vitals API by @LebToki in #76
- 🧪 Add tests for UpdateManager::checkForUpdates by @LebToki in #75
- 🧪 Add tests for findFile() depth constraint by @LebToki in #74
- ⚡ Optimize git branch and status checks in project scanner by @LebToki in #77
- Fix: trigger dayRender in AgendaView buildDayTable by @LebToki in #78
- ⚡ Consolidate service status query execution and fix boundary matching by @LebToki in #80
- 🧪 Add PHPUnit test suite for getServicesStatus by @LebToki in #79
- 🧹 [Code Health] Refactor
getServerVitalsinapi/vitals.phpby @LebToki in #82 - 🧪 Add test for Cache::set() by @LebToki in #83
- Fix: Address TODO in full-calendar.css using opacity by @LebToki in #81
- 🧪 Add tests for Security::verifyCSRFToken() error paths by @LebToki in #72
- Remove TODOs from vendored full-calendar.js by @LebToki in #53
- Remove TODO in full-calendar.js by @LebToki in #68
- Clarify isAuthenticated method in Router by @LebToki in #71
- chore: clear TODO in vendored full-calendar.js by @LebToki in #60
- 🧪 Add tests for formatLogToHtml error handling by @LebToki in #84
- 🧪 Add tests for AdminerModule::isInstalled() by @LebToki in #51
- Fix missing start date handling in full-calendar.js by @LebToki in #69
- 🧪 Test Databases::drop() method by @LebToki in #70
- 🧪 [testing improvement] Add test coverage for Logs::read() method by @LebToki in #67
- 🧪 Add unit tests for Databases::list() by @LebToki in #61
- 🧪 Implement tests for getLaragonRoot() by @LebToki in #85
- Fix: prevent parseDate from returning invalid Date objects in full-calendar.js by @LebToki in #63
- 🧪 Add tests for createProject in helpers.php by @LebToki in #66
- 🧪 Add unit tests for load_translations in i18n.php by @LebToki in #64
- 🧪 [Testing] Add test suite for Router::resolve method by @LebToki in #58
- chore: Remove memory leak TODO from vendored full-calendar.js by @LebToki in #52
- 🧪 Add comprehensive tests for Services management and system commands by @LebToki in #59
- 🧪 test: implement comprehensive tests for ConfigMigrator by @LebToki in #62
- 🧪 Add tests for Security::generateCSRFToken() by @LebToki in #65
- Fix: add .fc-today to to highlight current day by @LebToki in #86
- 🧹 [Code Health] Disable authentication check in Router for stack dashboard experience by @LebToki in #88
- Refactor full-calendar.js to remove modifiedEventID early binding hack by @LebToki in #87
- chore: remove invalid TODO comment from full-calendar.js by @LebToki in #89
- Fix duplicated code for event classNames in full-calendar.js by @LebToki in #90
- feat: support git pull in update manager by @LebToki in #91
- Unify clearEvents in full-calendar.js by @LebToki in #93
- Refactor: Consolidate renderDayOverlay in FullCalendar by @LebToki in #92
- 🎨 Palette: Add ARIA labels to navigation buttons by @LebToki in #94
- ⚡ Bolt: Optimize getDiskUsage using native PHP functions by @LebToki in #95
- 🛡️ Sentinel: [CRITICAL] Fix Path Traversal in Backup API by @LebToki in #96
- style: Override fc-event-bg with a better selector by @LebToki in #98
- Fix order-dependent class replacement in full-calendar setDayID by @LebToki in #97
- Fix missing authentication in Update API by @LebToki in #99
- Fix file encodings and migrate custom tests to PHPUnit by @LebToki in #100
- Fix "ignore project" and save ignored state to main configuration by @LebToki in #101
- 🧪 Test Security::verifyCSRFToken() error path by @LebToki in #102
- Support CodePilot installation and update tests by @LebToki in #103
- UPDATED: Version number to 4.0.5
Made with ❤️ for the Laragon community
Author: Tarek Tarabichi | Company: 2TInteractive | Website: https://2tinteractive.com
If you find Laragon Dashboard helpful and want to support its ongoing development, consider buying me a coffee or donating via PayPal! Your support helps keep the project active and enables the creation of more advanced features.
Looking for custom development, premium solutions, or professional services?
2TInteractive offers:
- Custom Web Development - Tailored solutions for your business needs
- Premium Dashboard Solutions - Enterprise-grade dashboard and admin panel development
- Laragon Dashboard Customization - Custom features, integrations, and modifications
- Full-Stack Development - Modern web applications with cutting-edge technologies
- Consulting Services - Expert guidance for your development projects
- Maintenance & Support - Ongoing support and updates for your applications
Visit us: https://2tinteractive.com
Contact: For inquiries about premium solutions, custom development, or professional services, please visit our website or reach out through our contact channels.
This dashboard is open-source and free to use. For enterprise features, custom integrations, or professional support, consider our premium services.
