Writing reliable blockchain integrations is complicated and time-consuming. The process requires careful analysis of the unique aspects of each blockchain and extensive communication with its developers to understand the best strategies to deploy nodes, recognize deposits, broadcast transactions, etc. Even a minor misunderstanding can lead to downtime, or even worse, incorrect fund attribution. Not to mention, this integration must be continuously modified and tested each time a blockchain team releases new software.
Instead of spending time working on their blockchain, project developers spend countless hours answering similar support questions for each team integrating their blockchain. With their questions answered, each integrating team then writes similar code to interface with the blockchain instead of spending their engineering resources adding support for more blockchain projects or working on unique products and applications.
Rosetta is a new project to standardize the process of deploying and interacting with blockchains. With an explicit specification to adhere to, all parties involved in blockchain development can spend less time figuring out how to integrate with each other and more time working on the novel advances that will push the blockchain ecosystem forward. In practice, this means that any blockchain project that implements the requirements (Node and API) outlined in this specification will enable exchanges, block explorers, and wallets to integrate with much less communication overhead and network-specific work.