The Forge is a Laravel-based web application that provides a platform for the Single Player Tarkov community to share and discover user-generated content, such as mods, guides, and other tools. It is currently under heavy development. Please review this entire document before attempting to contribute, especially the "Development Discussion" section.
We use Laravel Herd for local development. Herd Pro is recommended as it includes MySQL, Redis, Meilisearch, and Mailpit out of the box. Herd Free works for lighter development tasks but lacks these services, so some features (search indexing, queued jobs, etc.) will be limited.
- Laravel Herd (Pro recommended)
- Composer (bundled with Herd)
- Node.js & npm (bundled with Herd)
-
Clone the repository and point Herd to the project directory.
-
Copy the environment file and generate an application key:
# Herd Pro (recommended): cp .env.example .env # Herd Free (limited): cp .env.light .envIf using
.env.light, updateDB_DATABASEto the absolute path to yourdatabase/database.sqlitefile. -
Install dependencies:
composer install npm install -
Generate an application key:
php artisan key:generate -
Start the Herd Pro services (if using Herd Pro):
Open Herd and ensure the following services are running:
Service Purpose Default Port MySQL Database 3306 Redis Cache, sessions, and queues 6379 Meilisearch Full-text search 7700 Mailpit Local email testing 8025 Reverb WebSocket broadcasting 443 Create a
forgedatabase in MySQL:mysql -u root -e "CREATE DATABASE IF NOT EXISTS forge" -
Migrate and seed the database:
php artisan migrate:fresh --seed -
Start the dev server:
composer run devThis starts the application server, queue listener, log viewer, and Vite dev server concurrently.
-
Sync search indexes (Herd Pro only, requires Horizon running):
php artisan horizon php artisan app:search-sync
| Service | Authentication |
|---|---|
| Redis Queue Management (Horizon) | Via User Role |
| Website Status (Pulse) | Via User Role |
| Meilisearch WebUI (Herd Pro) | Local Only |
| Mailpit WebUI (Herd Pro) | Local Only |
For more information on Laravel development, please refer to the official documentation.
