EVE Online's Static Data Export as Eloquent models.
This package downloads EVE Online's official Static Data Export (SDE) from CCP and seeds it into your Laravel application's database — complete with migrations, Eloquent models, and relationships. Build market tools, fitting apps, universe maps, or killboards on top of a fully queryable SDE without ever touching a YAML file.
| Domain | Data |
|---|---|
| Items & dogma | Categories, groups, types, meta groups, market groups, attributes, effects, units — including per-type attributes and effects |
| Universe | Regions, constellations, solar systems, stargates and their connections, celestials (stars, planets, moons, asteroid belts), stations with operations and services |
| NPC & social | Factions, races, bloodlines, NPC corporations — plus ready-made tables and models for alliances, corporations, and characters to fill from ESI |
| Dynamic items | Mutaplasmids, their applicable types, and attribute ranges |
| Assets | Icons and graphics metadata |
- PHP 8.3+ (tested up to 8.5, plus nightly)
- Laravel 12 or 13
ext-zip
Install the package via composer:
composer require nicolaskion/sdePublish and run the migrations:
php artisan vendor:publish --tag="sde-migrations"
php artisan migrateOptionally, publish the config file:
php artisan vendor:publish --tag="sde-config"Download the latest SDE from CCP:
php artisan sde:downloadSeed everything into the database:
php artisan sde:seedsde:seed orchestrates all individual seeders in dependency order. Each is also available on its own:
| Command | Seeds |
|---|---|
sde:seed:icons |
Icons |
sde:seed:graphics |
Graphics |
sde:seed:units |
Dogma units |
sde:seed:attributes |
Dogma attributes |
sde:seed:effects |
Dogma effects and modifiers |
sde:seed:categories |
Item categories |
sde:seed:groups |
Item groups |
sde:seed:meta-groups |
Meta groups (Tech I, Tech II, …) |
sde:seed:market-groups |
Market group tree |
sde:seed:races |
Races |
sde:seed:types |
Item types |
sde:seed:type-attributes |
Per-type dogma attributes |
sde:seed:type-effects |
Per-type dogma effects |
sde:seed:universe |
Regions, constellations, solar systems, stargates, celestials, stations |
sde:seed:socials |
Factions, bloodlines, NPC corporations |
sde:seed:dynamic-items |
Mutaplasmids |
The models ship with their relationships wired up:
use NicolasKion\SDE\Models\Solarsystem;
use NicolasKion\SDE\Models\Type;
// A ship with its group, market group and dogma attributes
$rifter = Type::query()
->with(['group', 'marketGroup', 'typeAttributes'])
->where('name', 'Rifter')
->first();
// All low-sec systems in a region, with their stations
$systems = Solarsystem::query()
->with(['constellation', 'stations'])
->whereBetween('security', [0.1, 0.45])
->whereRelation('region', 'name', 'Heimatar')
->get();If you want to extend or override the bundled Eloquent models, publish them to your application and point the sde.models config entries at your own classes:
php artisan vendor:publish --tag="sde-models"// config/sde.php
'models' => [
'Type' => App\Models\Type::class,
// ...
],The seeders resolve every model through this config, so your overrides are used everywhere.
CCP updates the SDE with every game patch. To stay current, schedule the download and seed commands, e.g. in routes/console.php:
use Illuminate\Support\Facades\Schedule;
Schedule::command('sde:download')->weekly()->mondays()->at('11:30');
Schedule::command('sde:seed')->weekly()->mondays()->at('12:00');composer testThis runs Rector (dry-run), Pint, PHPStan (level max) and Pest.
Please see CHANGELOG for more information on what has changed recently. Releases are automated with release-please and published to Packagist.
EVE Online and all related data are © CCP hf. This package is not affiliated with or endorsed by CCP.
The MIT License (MIT). Please see License File for more information.