Skip to content
View jolexxa's full-sized avatar
๐Ÿ’–
making magic
๐Ÿ’–
making magic

Organizations

@VGVentures @chickensoft-games

Block or report jolexxa

Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
jolexxa/README.md

๐Ÿค  about me

I'm an engineering manager at Very Good Ventures, the creator of Chickensoft, and a board member of the IGDA Twin Cities. I care about open source, enjoyable architecture, and the idea that making games and apps should actually be fun.

Joanna May

Bluesky Mastodon LinkedIn Chickensoft Discord Twitch


I love everything people, game dev, compilers, native and mobile apps, NLP, music production, etc.

๐Ÿค Chickensoft

I created Chickensoft in 2021 as a home for my Godot + C# experiments. Over time, it has evolved into a grassroots community for Godot + C# developers and a suite of open source packages. Today, Chickensoft is a volunteer organization with a team dedicated to furthering Godot + C# development.

Chickensoft kicked into high gear when I wrote It's time to make that indie C# game in Godot โ€” it had a little moment on Hacker News which helped kick off the community as we know it today.

๐Ÿšฉ Projects

Project What it does
๐Ÿ•น๏ธ GameDemo Fully tested 3D game built with Godot + C#.
๐Ÿค– GodotEnv Manage Godot versions & addons from the CLI on every platform.
๐Ÿงฑ GodotGame C# game template with CI/CD, testing, and overage.
๐Ÿ’ก LogicBlocks Hierarchical, serializable state machines that generate diagrams as you code.
๐Ÿ’‰ AutoInject Reflection-free dependency injection for Godot node scripts.
๐Ÿš€ setup-godot GitHub Action to run Godot headlessly in CI/CD.
๐Ÿงช GoDotTest Test executor for Godot and C# โ€” debug from VSCode, collect coverage, run from CLI.
๐Ÿ”ฎ Introspection Build-time mixins & metadata generation for AOT-safe reflection.
๐Ÿ“ฆ Serialization Serializable models with AOT support and System.Text.Json compatibility.

...and many more โ€” save file systems, native platform extensions, logging, collections utilities.

๐Ÿ“ Enjoyable Game Architecture

I ported architectural patterns from React/Flutter/Vue to Godot's scene tree and wrote about it extensively. The result is what I affectionately refer to as Enjoyable Game Architecture โ€” a modular, testable, and consistent approach to building games. I created the Chickensoft Game Demo to accompany the blog.


๐ŸŽค Appearances

When Where Talk
๐ŸŽ™๏ธ Dec 2024 Nice Games Podcast Serialization โ€” Saving, loading, and why it's harder than you think
โ˜๏ธ Apr 2024 Google Cloud Next 2024 Build AI-Powered Games with Gemini and Flutter
๐ŸŽฎ Mar 2024 Minneapolis Game Dev Meetup Making It Fun to Make Games With Godot & C# (The Chickensoft Story)

โœ๏ธ Writing

When Where Article
Jun 2024 Chickensoft Serialization for C# Games
Dec 2023 Chickensoft Enjoyable Game Architecture
Nov 2021 VGV Blog How to Use Bloc with Streams and Concurrency
Jun 2022 Medium It's Time to Make That Indie C# Game in Godot

C# Dart TypeScript Godot Flutter .NET GitHub Actions


Pinned Loading

  1. chickensoft-games/GodotEnv chickensoft-games/GodotEnv Public

    Manage Godot versions and addons from the command line on Windows, macOS, and Linux.

    C# 560 30

  2. chickensoft-games/GameDemo chickensoft-games/GameDemo Public

    The Chickensoft Game Demo โ€” a fully tested, third-person 3D game built with Godot and C#. Now with saving and loading!

    C# 589 56

  3. chickensoft-games/LogicBlocks chickensoft-games/LogicBlocks Public

    Human-friendly, hierarchical and serializable state machines for games and apps in C#.

    C# 300 12

  4. chickensoft-games/GodotGame chickensoft-games/GodotGame Public

    C# game template for Godot 4 with debug launch configurations, testing (locally and on CI/CD), code coverage, dependency update checks, and spell check working out-of-the-box!

    C# 399 28