NextGraph brings about the convergence of P2P, E2EE and Semantic Web technologies into a new decentralised cloud system, based on CRDTs.
We aim at providing an open source ecosystem for software developers wishing to create decentralised apps with the following features: live collaboration, peer to peer communication, offline-first, local-first, portable and interoperable data, total ownership of data and software, security and privacy.
This innovative solution is centered on data repositories containing semantic data (RDF/SPARQL) as well as structured formats of conflict-free data like JSON. Syncing of data is done by peers organised into permissioned groups of users, and is using operation-based CRDTs in order to offer strong eventual consistency. Transactions on the data repository are replicated, validated and signed asynchronously, by all or a subset of members belonging to the group and its P2P overlay network and Pub/Sub. Data can be shared outside of the group, thanks to cryptographic OCAP permission system.
Within the ecosystem we aim at developing or integrating live collaboration rich text editors, wikis, knowledge bases, groupware, productivity and supply chain solutions, marketplaces and e-commerce, ERPs, social networks, DAOs, and any other apps tailored to the needs of each group and community. With the help of the provided data management softwares, as well as user interfaces that display and interact with such data, app development becomes trivial, and users can create their own workflows and interfaces, thanks to end-user programming, and access freely their own interlinked data graphs.
In addition to providing a coherent set of building blocks for the advent of a new decentralised cloud infrastructure, we also aim at developing or integrating existing pieces of software that will enable us to offer a complete cloud solution to enterprises and end-users alike.
This includes services like webmail, collaborative document editing, contact management, note taking, agenda/calendar/events, website publishing, tasks/kanban, chat and video calls, maps, search, federated queries and more.
We have detailed a list of features, and the initial design of NextGraph.
We consider that data and software sovereignty is a geopolitical concern, and that the European Union is in great need for a decentralised architecture of softwares and data stores that will be independent from the Silicon Valley and China. Respect for privacy, user rights, security, and protection from economic intelligence are important and urgent European needs that we want to address with NextGraph.
General use cases
We distinguish 4 main use cases :
- Private individual using some social network application in order to stay in touch with their friends, family, acquaintances, coworkers and in order to meet new people. The social network enables them to share all kind of content between each other. This user is captive today of the major social networks belonging to Meta and the like, with proprietary formats, closed APIs, and a monolithic centralised platform. This user also uses the cloud productivity tools and search engines mentioned just below.
- Small business, professional, student or coworker who need productivity tools in order to accomplish tasks. This includes webmail, document sharing and collaborative editing, groupware, translation, and more. The number of participants on a collaborative document is of small order of magnitude (10). This user is captive today of the technologies from Google and Apple, who offer a semi-closed platform, with several open standards but no open source, limited portability, and a centralised topology.
- Consumer or producer of knowledge, public information, marketplace offers for goods and services, and all kind of publicly available data indexed and readily available. This user can be a private individual consuming those data (with Google search, Amazon, Alibaba) without contributing (because contributing means owning a website). Or it can be any professional, company, academic, that is actively producing data on their own website, that is later indexed by the crawlers of some global company (Google), or that uploads directly the information on some platforms (Amazon). It can also be a wiki user who is using some global platforms to share knowledge (Wikipedia). Those system are often federated or centralised because they are based on web 2.0 technologies.
- Industries, companies, public authorities, private entities, and any organisation that exchange data both internally and with external actors in their field of concern. Those exchanges are mostly private and secure, and need highly performant systems with high availability, redundancy and guarantees of uptime.
With NextGraph, we propose a novel architecture for the internet that will gradually and eventually answer the needs of all the above use cases. Although our proposal is a breaking change, as URLs are substituted for Hashes and Public keys, we state here that this change is a requirement, in order to enter a new era of decentralised interconnected data.
Many attempts have been made before us, and few other projects are developing similar solutions.
We believe that associating the Semantic Web with P2P is the key challenge that wasn’t addressed so far.
We base our approach on established standards like RDF, SPARQL and JSON, and state of the art research on innovative technologies for strong eventually consistency, byzantine fault-tolerant causal broadcast, and reliable distributed databases.
We chose a Peer to Peer architecture for the lower stack in order to answer some use cases (sharing information within a closed group), but we do also plan to provide federated mechanisms to access and query public information with efficiency and scalability at heart. Those 2 technologies should be able to complement each other.
The adoption of such disruptive change relies on several aspects :
- the maturity, readiness and quality of the proposed innovative software, with documentation, test suites, and a strong community of developers.
- backward compatibility with the web 2.0
- the deployment of European regulations mandating data portability, data sovereignty, and interoperability.
- the incentive for private users to switch to newer products, more respectful of their privacy. Probably the end of the motto “If it is free, you are the product“.
- the business models of the new ecosystem that will be less based on advertising, and should probably focus more on mutualising resources and federated cost sharing.
- reducing the need for centrality and global databases, by designing applications and services that can work with partial views of graphs, networks, and information.
With NextGraph, we aim at implementing the 2 first aspects of this radical change, leaving the rest to their respective actors.
All code will be released under the permissive licenses MIT and Apache2.