About Spire Codex

Spire Codex is a comprehensive database for Slay the Spire 2, built by reverse-engineering the game files. Every card, relic, monster, potion, event, and power on this site was extracted directly from the game's source code and localization data.

The project started from curiosity about how StS2 was built, and grew into a full API and website. The goal is to provide the kind of detailed, searchable reference that the Spire community deserves.

What's Inside

How It Works

Slay the Spire 2 is built with Godot 4, but all game logic lives in a C#/.NET 8 DLL. The data pipeline:

1
PCK Extraction
GDRE Tools extracts the Godot .pck file — images, Spine animations, localization data (~9,947 files)
2
DLL Decompilation
ILSpy decompiles sts2.dll into ~3,300 C# source files containing all game models
3
Data Parsing
17 Python parsers extract structured data from decompiled C# source + localization JSON
4
Spine Rendering
Headless Node.js renderer assembles skeletal animations into 512×512 portrait PNGs (130+ sprites)
5
API + Frontend
FastAPI serves parsed data as a REST API with 20+ endpoints; Next.js frontend consumes it

Features

Detail Pages
Click-through pages for cards, characters, relics, monsters, and potions with full stats
Global Search
Press . anywhere to search across all categories instantly
Rich Text Rendering
Game BBCode tags rendered with colors, animations, and inline icons
Character Dialogues
NPC conversation trees and character quotes from the game's localization
Spine Renders
130+ monster and character sprites rendered from skeletal animations
REST API
Full API with filtering, search, and Swagger docs for your own projects
Changelog Tracking
Field-level diffs between game updates across all categories
Image Downloads
Browse and download all extracted game art by category

Tech Stack

Backend
Python, FastAPI, Pydantic
Frontend
Next.js, TypeScript, Tailwind
Rendering
Node.js, Spine Canvas
Infra
Docker, Forgejo CI

Get Involved

Found a bug or have a feature request? Use the Submit Feedback button in the footer, or open an issue on GitHub.

Thank You

Thanks to everyone who's been using the site, reporting bugs, and helping make it better. This project wouldn't be where it is without the community.

Special thanks to vesper-arch, terracubist, U77654, and Purple Aspired Dreaming for QA testing, bug reports, and contributions.

This project is for educational purposes. All game data belongs to Mega Crit Games. This should not be used to recompile or redistribute the game.