Skip to content

Real-time multiplayer roguelike game platform built with Elixir & LiveView

License

Notifications You must be signed in to change notification settings

Elixir-journey/draconic-ghoul

Repository files navigation

Draconic Ghoul

Build Status Code Style License

Draconic Ghoul is a real-time, roguelike game engine built with Elixir and Phoenix LiveView. Designed as both a solo project and a public technical series, it explores how to build fast, resilient game systems with clean architecture, platform thinking, and a LiveView approach.

Story & Design Philosophy

Draconic Ghoul is more than a demo—it's a narrative system:

A cursed ghoul seeks soul fragments of a fallen dragon to restore his fading mind. Each fragment recovered is a deeper dive into platform design, functional rigor, and game abstraction. It is inspired by:

  • Soulslike themes and tactical games
  • ADT-rich languages like Haskell, F#, and Scala
  • A desire to master developer platforms and LiveView

This is a practice ground, not an overengineered monolith. Every mechanic, abstraction, and test exists to clarify thinking and grow real-world architectural skill.

Project Highlights

  • Built with Elixir, Phoenix LiveView, and functional design principles
  • Game systems modeled with ADTs (Option, Result, etc.) for expressive state
  • Backend-first roguelike engine focused on tactical depth and platform extensibility
  • Infrastructure-aware: CI/CD, DevContainers, and Dockerized from the start
  • Paired with a long-form technical blog series, post by post

Getting Started

Local Development (with Dev Containers)

  1. Install Docker + VS Code
  2. Add the Dev Containers extension
  3. Open the repo and select “Reopen in Container”

Inside the container:

mix deps.get
mix phx.server

About

Real-time multiplayer roguelike game platform built with Elixir & LiveView

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published