Implementation of a _Prtcl provider for Holochain.
This is a new version control protocol that aims to provide the same potential that Git provides for source code, but as a general purpose and multiplatform protocol for all kinds of objects and applications.
In the Holochain world, this project was previously known as Fractal Wiki.
- What is the _Prtcl?
- What is a _Prtcl provider?
- What is the _Prtcl technology stack?
- How can I integrate a Holochain application with the _Prtcl?
This application is composed by these zomes. Whether this zomes should be organized in their own hApp will be made in the future, for now development is much easier in one repository.
- uprtcl: contains contexts, perspectives and commits and their relationships.
- proxy: contains proxy addresses to any entry, enabling linking to entries outside the hApp.
- discover: contains the known sources for any proxied entry, that is the application or platform where they are stored. This enables the consuming app to know where to ask for that entry.
- documents: contains simple text-node entries, documents that contain other subdocuments.
- folder: contains simple folder entries, that contain other any kind of entry.
This project is in active development, and in its early stages. Its intention is to be tested and released once holochain gets to a stable release.
- Implement basic _Prtcl functionality
- Implement clone functionality
- Implement demo content zomes compatible with the _Prtcl
- Link to entries outside the hApp (other platforms as well)
- Implement signatures inside the entries for external platforms validation
- Implement merge request mechanism
- Switch tests to try-o-rama
- Create clone tests
- Integrate did provider to get the creatorId
This project is to be used with HoloNix. After cloning, run this in the project's root folder:
$ nix-shell
This will ensure you always have the appropriate version of hc
installed.
In the project's root folder, run:
[nix-shell:]$ hc run
The compiled binary will be on the dist
folder.
In the project's root folder, run:
[nix-shell:]$ hc test
In the project's root folder, run:
[nix-shell:]$ hc run