Libra Open Source
The Libra Blockchain is powered by open-source software. The first implementation of the Libra protocol — the technology behind the blockchain — is Libra Core, which is an open-source project managed by the Libra Association using development practices established by the open-source community. Developing the technology behind the Libra Blockchain in this way ensures that the blockchain is accessible to everyone and that technology decisions are fair and transparent.
Open-source software is software that anyone can use, inspect, and modify. Building Libra Core on open-source software means that people can use the Libra Blockchain in new and creative ways. It means that developers can build new applications that support the blockchain and run those applications on any kind of device. It means that the public can inspect how the blockchain works, giving everyone equal knowledge of the inner workings of the code. It also means that the community of security researchers can work together to make the blockchain more secure. The Libra Association is committed to ensuring that the Libra protocol specification and Libra Core are and always will be open source.
The invention of open-source software sparked a practice of engineers working across countries and across companies to collaborate on the development of ambitious software projects. Projects of this type build a community of developers who work together to make tough technical decisions about the evolution of the project. Because Libra is a platform that will serve many people, this type of community-focused decision making will be essential to make sure that everybody has a fair chance to contribute to the evolution of the platform.
Libra’s Engineering Principles
- The technology behind the Libra Blockchain will be free for all to inspect, use, modify, and distribute, and this is understood by all.
- Contributions are measured for technical merit and scrutinized for security.
- Trust and transparency of decisions will help to make Libra successful.
The Libra Blockchain: Built on Open Source
After reviewing different open-source licenses, the association has chosen to open source the Libra Core under the Apache 2.0 License. The license grants the user of the software the freedom to use the software for any purpose, to distribute it, and to modify it. Individuals and organizations who contribute code, documents, or ideas to Libra Core do so in the form a Contributor License Agreement (CLA). Libra will model its CLA on the Apache CLA. By asking contributors to agree to the CLA, the community can be confident that they are free to use the software.
The Apache License and CLA have a long history in the open-source developer community. It is well understood and trusted by thousands of open-source projects from many of the world’s largest technology companies. The license provides certainty and protection for contributors, maintainers, and all other participants in the open-source ecosystem that choose to invest in technology.
The Libra Association and Technology Decisions
Technology defines the way people interact with the Libra Blockchain. Therefore, decisions about technology are important to the future of the project. The association manages the open-source repositories that hold the technology used by the Libra Blockchain. Activities of the association are ultimately governed by the Libra Association Council, comprised of representatives from organizations running validator nodes on the Libra network. Because the set of validator nodes is designed to be diverse and collectively trusted, the association is an ideal governance body for the technology behind the Libra Blockchain. However, all developers are welcome to participate in Libra's open-source development.
The role of the association will be to:
- Manage the development of the technology. While the open-source structure helps drive day-to-day technical decisions regarding both Libra Core as well as the Libra protocol, the Libra Association Council provides a framework for the governance of the project. The council serves as a check to ensure that the decisions made by the open-source community are aligned with the Libra ecosystem as a whole.
- Define the open-source governance process. The open-source decision-making process will evolve as the community around the project grows.
- Define how changes are proposed, discussed, and accepted. In the early stage, rapid development is expected with a transition to a more formal process as the technology matures.
Where Are We Now?
Over the past year, engineers from Facebook's Novi team have designed a blockchain from the ground up to meet the needs of the Libra ecosystem. Facebook has consciously open sourced a prototype of Libra Core early so that the community can influence its direction. Facebook has irrevocably contributed its rights and code to the association under the terms of the Apache License and Apache Contributor License Agreement — just as any other contributor to Libra Core would. The development of Libra is now under the governance of the Libra Association.
Because Libra Core was open sourced early in its life, there remains much to build before the Libra Blockchain can be launched. Most open-source projects begin with a small set of core developers and a simple governance process, which allows the rapid development of the project in its early phases. The association is following this established practice and has asked Novi to manage the evolution of Libra Core over the coming months.
What’s Next?
The Libra Association governs the technology behind the Libra Blockchain. The governance of the technology behind the Libra Blockchain will evolve over time. The association’s first goal is to ready Libra Core for the launch of the Libra Blockchain and to create a formal Libra protocol specification. Before this launch, it is imperative that the community has a chance to review the decisions that have been made to ensure that the best technological choices have indeed been made. Before the launch of the network, the association is committed to establishing a fair and transparent process for accepting technical changes to the Libra Blockchain. No single company — including Facebook or Novi — will have the ability to determine the future evolution of the blockchain. The association is committed to building a strong community that guides the development of the technology so that it can serve as a financial infrastructure for billions of people.
As the project evolves, so will the governance of the ecosystem. The association may create processes so that important technical changes go through a more formal review process. The association will collaborate with the community to find ways to strengthen its commitment to open source and open governance.