System Requirements
Before installing Dashboard Dilemas, ensure your environment meets these requirements:Server Requirements
- PHP: 7.4 or higher
- MySQL: 5.7 or higher (or MariaDB equivalent)
- Web Server: Apache or Nginx
- Node.js: 14.x or higher (for build tools)
PHP Extensions
- PDO
- PDO_MySQL
- mbstring
- json
- openssl (for session management)
Recommended
- Composer: For PHP dependency management
- NPM/PNPM/Yarn: For Node.js dependencies
- Cron: For automated tasks (email reminders, reports)
Dashboard Dilemas uses WordPress-compatible database naming conventions but does not require WordPress to be installed.
Installation Steps
1. Clone or Download the Project
Download the Dashboard Dilemas source code to your server:2. Install Node.js Dependencies
Install the required packages for database setup and build tools:The
mysql2 package is used for database initialization scripts, while dotenv manages environment configuration.3. Configure Environment Variables
Create your environment configuration file:.env file with your database credentials:
.env
4. Create the Database
Create a new MySQL database for the application:5. Initialize Database Schema
Run the database setup script to create all required tables:de_app_clients- Client organizationsde_app_areas- Organizational areas/departmentsde_app_users- Platform users and participantsde_app_games- Dilemma scenarios/gamesde_app_game_questions- Questions within each dilemmade_app_answers- User responses and submissionsde_app_sessions- User authentication sessions
The setup script creates the table structure only. You may need to import initial data separately or create it through the admin interface.
6. Configure Web Server
Apache Configuration
Create a virtual host configuration:Nginx Configuration
Create a server block:7. Set File Permissions
Ensure proper file permissions for security:8. Configure Automated Tasks (Optional)
Set up cron jobs for automated email reminders and reports:Adjust the paths and timing based on your server configuration and business needs.
9. Start Development Server (Development Only)
For local development, you can use the built-in development server:http://localhost:3000.
Verification
Verify your installation by checking:-
Database Connection: Ensure all tables were created successfully
- Web Access: Navigate to your dashboard URL and verify the login page loads
-
PHP Configuration: Check that all required PHP extensions are loaded
Post-Installation
After successful installation:Create Admin Account
Set up your first administrator account through the database or admin interface
Troubleshooting
Database Connection Errors
If you encounter connection issues:- Verify database credentials in
.env - Ensure MySQL service is running:
sudo systemctl status mysql - Check MySQL user permissions
- Try using
127.0.0.1instead oflocalhostforDB_HOST
Permission Denied Errors
If you see file permission errors:- Verify web server user ownership
- Check that directories have 755 permissions
- Ensure files have 644 permissions
- Check SELinux/AppArmor policies if enabled
Missing PHP Extensions
Install missing extensions:Next Steps
Quick Start
Follow the quickstart guide to create your first dilemma workflow
Database Schema
Understand the database structure and relationships
Environment Config
Learn about advanced environment configuration options
Email Setup
Configure SMTP for automated emails and notifications