- Install the holochain dev environment (only nix-shell is required): https://developer.holochain.org/docs/install/
- Enable Holochain cachix with:
nix-env -iA cachix -f https://cachix.org/api/v1/install
cachix use holochain-ci- Clone this repo and
cdinside of it. - Enter the nix shell by running this in the root folder of the repository:
nix-shell
npm installThis will install all the needed dependencies in your local environment, including holochain, hc and npm.
- Build the DNA (assumes you are still in the nix shell for correct rust/cargo versions from step above):
npm run build:happnpm run testTo test out the UI:
npm startTo run another agent, open another terminal, and execute again:
npm startEach new agent that you create this way will get assigned its own port and get connected to the other agents.
To package the web happ:
npm run packageYou'll have the notebooks.webhapp in workdir. This is what you should distribute so that the Holochain Launcher can install it.
You will also have its subcomponent notebooks.happ in the same folder`.
We are using this tooling:
- NPM Workspaces: npm v7's built-in monorepo capabilities.
- hc: Holochain CLI to easily manage Holochain development instances.
- @holochain/tryorama: test framework.
- @holochain/client: client library to connect to Holochain from the UI.