Dapps & Syncing — Rutile Weekly #9
🖥 PlayOS
We’ve decoupled more components from the centralized version of PlayOS. We have application loading working that comes from a provider. Each application receives its own token which includes a private key that is specific for that application and user.
We are slowly writing the Dapp backend in order to get real information that came from a chain. Rutile will be the first to test out, but the code will be written in a way that will make it easy for blockchains that use WASM to port their chain.
📥 Syncing
We continued building and improving our syncing code. We used to a naive syncing approach at the beginning for fast development. This is fine as it not on a main net/test net, but it’s not ideal.
We have created a mechanism that asks multiple nodes to give them their milestone data starting from a point which they were last (That may be starting from milestone #1 or #200). The receiving node will put all milestones received inside a list where it can sort the milestones in the correct order and validate them. The node knows when to stop when a milestone comes through that came from the regular network. After this, it can join the network as a validating node.
🔌 API
Websites need a way to communicate with a node to get their data from. We built a simple version of an API that allows websites to make calls on a node via the P2P layer. Once a transaction is sent it will immediately give a response back when it’s included in a milestone and the new state is known. Of course, a client can choose to let a node dry run the transaction and include it later to get a quick response on a temporary state.