SATISFACTORYBASE
The project

Used tools and repos

Standing on other people's work

Almost none of this would exist without open source. Every library, data source and tool listed below carries real weight in the app you use – nothing here is decorative, and nothing is listed that is not actually built into the site today. Both languages of this page are compiled by Paraglide JS; the Impressum credits the data sources once more, in the legal form German law asks for.

Framework & UI

  • SvelteKit (MIT) – the application framework: routing, server rendering, the API routes.
  • Svelte 5 (MIT) – the component language and its reactivity (runes).
  • Tailwind CSS (MIT) – the styling, utility-first.
  • Vite (MIT) – the build tool behind development and production bundles.
  • Paraglide JS (MIT) – compiles the English and German text into typed message functions.
  • marked (MIT) – renders every markdown document on the site, this one included.
  • sharp (Apache-2.0) – converts and resizes uploaded images and bug-report screenshots.
  • React Email (MIT) – builds the transactional e-mails (verification, invites, mentions).

Map & planner

  • Leaflet (BSD-2-Clause) – the interactive world map.
  • Svelte Flow (MIT) – the node canvas behind the factory planner.
  • ELK (EPL-2.0) – automatic layout for the planner graph.
  • three.js (MIT) – the 3D blueprint preview.

Solver

  • HiGHS (MIT) – the linear-programming solver that works out production chains exactly.
  • highs-js (MIT) – compiles HiGHS to WebAssembly so it runs in the browser and on the server.

Game data & files

  • Satisfactory's own game export ("Docs.json") from Coffee Stain Studios – the source for every item, recipe, building and rate on this site (see "Thank you, Coffee Stain" on the about page).
  • @etothepii/satisfactory-file-parser (MIT) – reads savegames and blueprint files.
  • satisfactory-logistics Iconset (MIT) – some of the item and building icons.
  • satisfactory.wiki.gg – used as a reference while building the wiki, not as a data source.

Data & auth

  • PostgreSQL (PostgreSQL License) – the database.
  • Neon – managed Postgres hosting for the database.
  • Drizzle ORM (Apache-2.0) – schema, migrations and queries.
  • postgres.js (Unlicense) – the Postgres driver underneath Drizzle.
  • Better Auth (MIT) – sign-in, sessions and account linking.

Testing

  • Vitest (MIT) – unit and integration tests.
  • Playwright (Apache-2.0) – the end-to-end user-story tests.

Hosting & operations

  • Cloudflare (Tunnel, R2) – the connection to the server and the bucket for images, tiles and backups.
  • Hetzner – the server the app runs on.
  • Docker (Apache-2.0) – packages and runs the app, the error tracker and the tunnel.
  • GitHub Actions – builds, tests and deploys every change.
  • Bugsink – self-hosted error tracking.
  • Umami (MIT) – cookie-free analytics, only after you agree to it.
  • Pushover – sends the operator a notification when something needs attention.

Building the site

This site is built with Claude, Anthropic's AI model – see "Vibe coding" on the about page for what that means in practice and what stays a human job.