Overview
This guide walks you through installing Flint Engine on a web server. The installation process sets up the database, default configuration, and initial admin account.
Step 1: Download Flint Engine
Get the Flint Engine files onto your server:
- Download or clone the repository to your web server
- Place the files in your web root directory (e.g.,
/var/www/html/or/htdocs/flintdigital/) - Ensure the web server user has read access to all files
# Clone the repository
git clone https://github.com/your-repo/flint-engine.git
# Or copy files via FTP/SFTP to your web root
# The project root should contain: app/, bootstrap/, config/, database/, public/, resources/, routes/, storage/
Step 2: Set Up Environment
- Copy the example environment file:
cp .env.example .env - Generate an application key:
php artisan key:generate - Edit
.envand set your database credentials:DB_HOST=127.0.0.1 DB_DATABASE=flint_engine DB_USERNAME=root DB_PASSWORD=your_password
Step 3: Set Up the Database
- Create a new MySQL database for Flint Engine
- Run the migration command to create all tables:
php artisan migrate - Seed the database with default data:
php artisan db:seed
This creates all required tables including users, roles, permissions, site_settings, orders, licenses, and more.
Step 4: Configure Your Web Server
Point your web server document root to the public/ directory:
Apache
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/flint-engine/public
<Directory /var/www/flint-engine/public>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Nginx
server {
listen 80;
server_name yourdomain.com;
root /var/www/flint-engine/public;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
}
Step 5: Set Permissions
# Set ownership to web server user
chown -R www-data:www-data /var/www/flint-engine
# Set directory permissions
find /var/www/flint-engine -type d -exec chmod 755 {} \;
# Set file permissions
find /var/www/flint-engine -type f -exec chmod 644 {} \;
# Make storage and cache writable
chmod -R 775 /var/www/flint-engine/storage
chmod -R 775 /var/www/flint-engine/bootstrap/cache
Step 6: Post-Installation
- Clear and rebuild cache:
php artisan cache:clear php artisan config:cache php artisan route:cache - Visit
https://yourdomain.com/adminto access the admin panel - Log in with the default credentials or the ones created during seeding
- Go to Settings and configure your site name, logo, and email settings
Important: For production, disable debug mode by setting APP_DEBUG=false in your .env file and configure proper email SMTP settings.
Common Installation Issues
- 500 Internal Server Error — Check file permissions and PHP error logs
- Database connection failed — Verify credentials in
.envand ensure MySQL is running - Blank page — Enable debug mode temporarily:
APP_DEBUG=true - Missing routes — Run
php artisan route:cacheand restart PHP