Skip to content

cromper (third time's the charm) - #2042

Open
ethteck wants to merge 60 commits into
mainfrom
cromper-3
Open

cromper (third time's the charm)#2042
ethteck wants to merge 60 commits into
mainfrom
cromper-3

Conversation

@ethteck

@ethteck ethteck commented Jul 17, 2026

Copy link
Copy Markdown
Member

(this is currently unfinished and is in draft state)

This PR adds a new entirely separate service for handling the various processes involves in running the site: assembling, compiling, diffing, and running decompilers.

The backend still talks to this service directly, as well as the frontend server, but now the client can also talk directly to this server to do decompilation tasks, incremental compilations, etc.

There's several reasons we are separating these into a separate service:

  • The django server can be freed of many of its responsibilities
  • The new service is async (woo), so requests will no longer block each other
  • The backend is now much leaner, allowing for possible future rewrites and optimizations without worrying about all this compiler junk

Todo:

  • Make compiler, library, and platform endpoints singular
  • Deserialize back into proper objects in Django
  • Django tests pass
  • Fixup frontend /platform endpoint to fetch platform data from cromper (or update api.ts to be able to call cromper?)
  • Sort out compiler flags
  • Update nginx config
  • health checks from django <> cromper?
  • 'super' endpoint to do initial scratch creation in 1 go (TBD: profile first to determine if necessary)

@ethteck
ethteck requested a review from bates64 as a code owner July 17, 2026 16:36
# Conflicts:
#	backend/coreapp/tests/test_compilation.py
#	backend/coreapp/tests/test_decompilation.py
#	backend/uv.lock
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants