Skip to content

Conversation

@1nf3rna
Copy link

@1nf3rna 1nf3rna commented Dec 28, 2025

Summary

Adds Racetime.gg integration

Screenshots/GIF (if UI)

Checklist

  • Prettier/fmt run (task fmt)
  • Tests pass (task test)
  • Lint passes (task lint)
  • Docs/README updated (if needed)
  • Linked issue (if any): Fixes #Racetime.gg integration #78

Notes for reviewers

TODO:
Needs a second window to continue testing and callback is probably incorrect.

1nf3rna and others added 30 commits October 8, 2025 00:44
- to do: file format for splitter language, add usage to main project, test functionality
Currently only supports NWA
- moved public stuff to top of file and private stuff to bottom
- added comments
- moved public stuff to the top of the file and private to the bottom
- changed NWASplitter stuct to make it generic
- added compare_type enum (might remove this)
- added Element and MemoryEntry structs to make generic interface
- added setup function for initializing memory and conditions
- made client public
- updated Update function for generic interface, construct arguments, build multi-byte values from little endian data
- start, reset, and split helper functions updated for generic usability
- addedfindInSlice, compareTypeConverter, and compare functions for generic usability
- added example usage
added autosplitter service initialization and activation
added service struct
added service thread to connect, setup NWA splitter, control splitter
added read deadline
removed unneeded enum and converter function
made MemoryEntry struct variables public
fixed hex to int conversion and byte to int conversion
added output for invalid condition lengths
service to set up config
token validity checking
auth code generation
token generation, storage, and refreshing
frontend token retreival
WebsocketManager connects to raceroom after authentication
RaceList get list of available races
RaceData gets data for selected races
LoginWithOAuth handles authentication to racetime.gg
1nf3rna and others added 8 commits December 3, 2025 22:20
fixed restURL protocol
added imports for go interface and buttonlist functions
RaceList requests a list of races and returns json response data
RaceListWindow displays list of races as interactable buttons
Clicking on a button replaces the window contents with the RaceWindow contents
RaceWindow opens authenticated websocket for the selected race, handles responses to messages (not everything is handled), and builds the webpage
OAuth login hides the auth button and shows the race list/window button
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.

1 participant