๐ฅ๏ธ System Requirements¶
NewWaves Hospital Management System requires specific server configurations and software dependencies to function properly.
๐ Minimum Server Requirements¶
Web Server¶
- Apache: 2.4+ or Nginx: 1.18+
- SSL Certificate: Required for HTTPS (recommended for healthcare data)
- Document Root: Public folder access
- URL Rewriting: mod_rewrite (Apache) or equivalent (Nginx)
PHP Requirements¶
- PHP Version: 8.1, 8.2, or 8.3 (recommended)
- Memory Limit: 512MB minimum, 1GB recommended
- Execution Time: 300 seconds minimum
- Upload Size: 100MB minimum (for file uploads)
- Post Size: 100MB minimum
Required PHP Extensions¶
โ OpenSSL PHP Extension
โ PDO PHP Extension
โ Mbstring PHP Extension
โ Tokenizer PHP Extension
โ XML PHP Extension
โ Ctype PHP Extension
โ JSON PHP Extension
โ BCMath PHP Extension
โ Fileinfo PHP Extension
โ GD PHP Extension
โ Zip PHP Extension
โ Curl PHP Extension
Database Requirements¶
Primary Database (Choose One): - MySQL: 8.0+ or MariaDB: 10.3+ - PostgreSQL: 13+ (alternative) - SQLite: 3.8+ (development only)
Database Configuration: - Storage Engine: InnoDB (MySQL/MariaDB) - Character Set: utf8mb4 - Collation: utf8mb4_unicode_ci - Max Connections: 100+ concurrent - Query Cache: Enabled (recommended)
Server Resources¶
Minimum Configuration: - RAM: 2GB - CPU: 2 cores - Storage: 10GB SSD - Bandwidth: 100Mbps
Recommended Configuration: - RAM: 4GB+ - CPU: 4+ cores - Storage: 50GB+ SSD - Bandwidth: 1Gbps
๐ Recommended Hosting Environments¶
Shared Hosting¶
- cPanel/WHM with PHP selector
- Softaculous installer (if available)
- File Manager access
- Database management (phpMyAdmin)
- SSL certificates included
- Daily backups recommended
VPS/Dedicated Servers¶
- Ubuntu: 20.04+ or CentOS: 8+
- LAMP/LEMP stack configured
- Composer installed globally
- Node.js: 16+ (for asset compilation)
- Git access (for updates)
- Cron jobs access
Cloud Hosting (Recommended)¶
- AWS EC2 (t3.medium or higher)
- Google Cloud (e2-standard-2 or higher)
- DigitalOcean (4GB+ droplet)
- Vultr (Regular Performance 4GB+)
- Linode (Nanode 4GB+)
๐ง Software Dependencies¶
Composer Dependencies¶
The system uses Laravel 10 framework with the following key packages:
{
"php": "^8.1",
"laravel/framework": "^10.0",
"laravel/sanctum": "^3.2",
"laravel/tinker": "^2.8",
"spatie/laravel-permission": "^5.10",
"intervention/image": "^2.7",
"maatwebsite/excel": "^3.1",
"barryvdh/laravel-dompdf": "^2.0",
"pusher/pusher-php-server": "^7.2"
}
Node.js Dependencies (Optional)¶
For asset compilation and development:
{
"vite": "^4.0",
"laravel-vite-plugin": "^0.7",
"bootstrap": "^5.3",
"jquery": "^3.7",
"chart.js": "^4.2"
}
๐ง Email Configuration¶
SMTP Settings¶
- SMTP Server: Required for notifications
- Authentication: Username/Password
- Encryption: TLS/SSL recommended
- Port: 587 (TLS) or 465 (SSL)
Supported Email Providers¶
- Gmail SMTP
- SendGrid
- Mailgun
- Amazon SES
- Custom SMTP servers
๐พ Storage Requirements¶
File System¶
- Writable Directories:
storage/
(logs, cache, sessions)bootstrap/cache/
(framework cache)public/uploads/
(user uploads)public/assets/images/
(system images)
File Upload Support¶
- Patient Documents: PDF, DOC, DOCX, JPG, PNG
- Medical Images: JPG, PNG, DICOM (if configured)
- Profile Photos: JPG, PNG, GIF
- Department Images: JPG, PNG, WebP
- System Logos: PNG, JPG, SVG
Backup Storage¶
- Database Backups: Daily recommended
- File Backups: Weekly recommended
- Off-site Storage: Cloud backup recommended
- Retention: 30 days minimum
๐ Security Requirements¶
SSL/TLS¶
- SSL Certificate: Required for production
- TLS Version: 1.2 or 1.3
- HTTPS Redirect: Mandatory for patient data
- HSTS Headers: Recommended
Server Security¶
- Firewall: Enabled with appropriate rules
- Fail2Ban: Recommended for brute force protection
- Regular Updates: OS and software patches
- Access Control: SSH key authentication
Application Security¶
- CSRF Protection: Enabled by default
- XSS Protection: Built-in Laravel protection
- SQL Injection: Protected via Eloquent ORM
- File Upload: Validated and sanitized
- Session Security: Secure session configuration
๐ฅ Healthcare Compliance¶
HIPAA Considerations¶
- Data Encryption: At rest and in transit
- Access Logging: All patient data access
- User Authentication: Strong password policies
- Session Management: Automatic timeout
- Audit Trails: Complete activity logging
Data Protection¶
- Regular Backups: Encrypted and tested
- Access Controls: Role-based permissions
- Data Retention: Configurable policies
- Privacy Settings: Patient consent management
๐งช Development Environment¶
Local Development¶
Development Tools¶
- Laravel Artisan: Command-line interface
- Vite: Asset bundling (optional)
- PHPUnit: Testing framework
- Laravel Telescope: Debugging (optional)
โก Performance Optimization¶
Caching¶
- OPcache: Enabled for PHP
- Redis: Recommended for sessions/cache
- Application Cache: Laravel cache enabled
- Database Cache: Query result caching
Asset Optimization¶
- CSS/JS Minification: Production builds
- Image Optimization: Compressed uploads
- CDN Support: Static asset delivery
- Gzip Compression: Web server level
๐ Monitoring & Logging¶
Error Logging¶
- Laravel Logs:
storage/logs/
- Web Server Logs: Apache/Nginx access logs
- Database Logs: MySQL/PostgreSQL logs
- PHP Error Logs: System PHP errors
Performance Monitoring¶
- Response Times: < 2 seconds recommended
- Database Queries: Optimized queries
- Memory Usage: Monitor PHP memory
- Disk Space: Regular cleanup required
๐ Backup & Recovery¶
Automated Backups¶
- Database: Daily automated backups
- Files: Weekly file system backups
- Configuration: Environment settings backup
- Testing: Regular restore testing
Disaster Recovery¶
- Recovery Time: < 4 hours target
- Data Loss: < 24 hours maximum
- Failover: Manual or automated
- Documentation: Recovery procedures
๐ฑ Mobile API Requirements¶
API Server¶
- Same server requirements as web application
- API Rate Limiting: Configured appropriately
- CORS Headers: Mobile app domains
- JWT Authentication: Token-based auth
Mobile App Support¶
- Android: API level 21+ (Android 5.0+)
- iOS: iOS 12+
- API Endpoints: RESTful JSON API
- Real-time Updates: WebSocket support (optional)
๐ Support & Troubleshooting¶
Common Issues¶
- Permission Errors: Check file permissions (755/644)
- Database Connection: Verify credentials and connectivity
- PHP Extensions: Install missing extensions
- Memory Limits: Increase PHP memory_limit
- Upload Failures: Check upload_max_filesize
Getting Help¶
- Documentation: Complete user manual included
- Installation Wizard: Automated system checks
- Error Messages: Detailed error reporting
- Log Files: Comprehensive logging system
โ Pre-Installation Checklist¶
Before installing NewWaves Hospital Management System:
- [ ] Server meets minimum PHP version (8.1+)
- [ ] Database server available (MySQL 8.0+)
- [ ] All required PHP extensions installed
- [ ] Web server configured with URL rewriting
- [ ] SSL certificate installed (for production)
- [ ] File permissions set correctly
- [ ] SMTP server configured for emails
- [ ] Adequate storage space available
- [ ] Regular backup system in place
- [ ] Security measures implemented
Note: The installation wizard will automatically check most of these requirements and provide guidance for any missing components.
Last Updated: August 13, 2024
Version: 1.0.0
Compatibility: NewWaves Hospital Management System v1.0.0