-
Hi, Amazing work! I've spent the last two days reviewing and trying to understand how everything functions. I tested it on my own computer to get a better grasp, but I still have several questions. From what I gathered, the I noticed that However, I feel like I'm missing something. For instance, when I try to change the name of a variable in state, such as renaming I searched the entire repository for the term |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Thank you! Yes you are correct. In I see you have also found the state type and variable which is a key part of the dashboard. When there's an f1 session going on, state contained all the data f1 sends to us. Which are race control messages, team radios, driver timings and more. Thats why you can't change the state type, as it's the type for the data we receive from f1. So for example if u rename
The I hope this helps, feel free to ask again if there are any more questions. |
Beta Was this translation helpful? Give feedback.
Yes when recording a session we get the direct raw data from f1. In the beginning we get a message with an object that has a property named
R
. This message is the initial state f1 sends us. Every message after this first initial state is a partial update.In the live backend saves the initial state and applies all the updates. In the process we format the JSON from
PascalCase
tocamalCase
. And we send the initial state and then the updates to the frontend.These updates get applied via the merge functions in both the backend and frontend.
dash/src/lib/merge.ts
- frontendcrates/data/src/merge.rs
- backend