Skip to content

StarCitizenWiki/API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2,735 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Star Citizen Wiki API

MIT License PHP 8.4+ Laravel 13 Docker Build

The Star Citizen Wiki / Tools API for Star Citizen game data – vehicles, items, manufacturers, star systems, missions, commodities, comm-links, and galactapedia entries.

Interactive Swagger API documentation: docs.star-citizen.wiki

Quick Example

curl https://api.star-citizen.wiki/api/vehicles?filter[name]=Arrow
{
  "data": [
    {
      "uuid": "...",
      "name": "Arrow",
      "class_name": "AEGS_Arrow",
      "manufacturer": {
        "name": "Aegis Dynamics",
        "code": "AEGS"
      },
      "classification": "fighter",
      "crew": 1,
      "mass": 26357.0,
      "cargo_capacity": 0.0
    }
  ]
}

Features

  • Game Data: Items, vehicles, manufacturers, missions, starmap locations, and specifications from ScDataDumper game files
  • Starmap: Star systems, celestial objects, and jump points
  • Comm-Link Archive: Automated downloading, importing, and translating of official RSI Comm-Links
  • Galactapedia: Synchronized articles with translation support
  • Ship Matrix & Pricing: Daily updates of ship specifications, MSRP, and loaner data
  • Multi-language: English, German, and Chinese Simplified translations
  • RESTful API: Game-Versioned endpoints with filtering, sorting, and includes (docs)

Tech Stack

Component Technology
Runtime PHP 8.4+
Framework Laravel 13
Database PostgreSQL 16
Queue Database / Redis
Cache Database / Redis
Auth Laravel Sanctum + Fortify
Translations DeepL API
Search Spatie Query Builder
Containerization Docker + Docker Compose

Quick Start

Prerequisites

  • Docker
  • Docker Compose 2.0+
  • Git

Installation

git clone https://github.com/StarCitizenWiki/API.git
cd API
git submodule update --init --recursive
cp .env.example .env

Edit .env and set at minimum:

APP_NAME='Star Citizen API'
APP_URL=http://localhost:8080

DB_DATABASE=api
DB_USERNAME=api
DB_PASSWORD=secret

POSTGRES_DB=api
POSTGRES_USER=api
POSTGRES_PASSWORD=secret

The DB_* and POSTGRES_* values must match. For the full configuration reference, see docs/configuration.md.

Start Services

docker compose up -d
docker compose exec api php artisan key:generate
docker compose exec api php artisan migrate
docker compose exec api php artisan game:add-version --default <SC_UNPACKED_DATA_VERSION>
docker compose exec api php artisan db:seed
docker compose exec api php artisan game:sync

Visit http://localhost:8080 to verify.

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Make your changes and add tests
  4. Run the test suite (php artisan test --compact)
  5. Run the linter (vendor/bin/pint --dirty)
  6. Open a pull request

Documentation

Document Description
API Reference Interactice swagger api endpoint documentation
Configuration Environment variable reference
Artisan Commands All custom commands and scheduled tasks
Docker Guide Architecture, queues, volumes, and Traefik setup
v2 Migration Migrating from v2 to v3

Third-Party Data & Attributions

StarCitizenDeutsch: German Translations

Source: rjcncpt/StarCitizen-Deutsch-INI License: CC BY-NC-SA 4.0

German translations loaded from global.ini files during item import. Integrated as a git submodule at storage/app/api/StarCitizenDeutsch/.

ScToolBoxLocales: Chinese Simplified Translations

Source: StarCitizenToolBox/LocalizationData

Chinese Simplified translations maintained by the StarCitizenToolBox community. Located at storage/app/api/ScToolBoxLocales/.

scunpacked-data: Game Data

Source: StarCitizenWiki/scunpacked-data

Unpacked Star Citizen game data in JSON format: items, vehicles, manufacturers, labels, and tags. Primary data source for all game content imports. Located at storage/app/api/scunpacked-data/.

Inspiration

Datatables inspired by spviewer.eu.

License

This project is licensed under the MIT License.

German translations are © Star Citizen Community Translation Team (rjcncpt and contributors), licensed under CC BY-NC-SA 4.0. ScToolBoxLocales and scunpacked-data are community-maintained; verify licensing independently for commercial use.

Legal Notice

This is a fan-made tool and is not affiliated with or endorsed by Cloud Imperium Games or Roberts Space Industries. Star Citizen®, Roberts Space Industries®, and Cloud Imperium® are registered trademarks of Cloud Imperium Rights LLC and Cloud Imperium Rights Ltd. All game data and translations are used for informational and educational purposes only.

About

The star-citizen.wiki API. Automatically scrapes Comm-Links, Stats and In-Game Data.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors

Languages