We
We is a Holochain runtime that makes it trivially easy for groups to build collaboration spaces by composing custom "Applet" suites to meet their collaboration needs.
We is composed of a group management DNA, together with a defined pattern on how to build Applet DNAs that can be added to a We group. Each such group as well as each Applet used within a group is its own private peer-to-peer network.
For more about the motivation behind We, read this blogpost.
Design
For details about the design, read the design document.
Creating We Applets
The details on how to create a we applet can be found here.
Installation
Go to the releases page and download the latest release for your Operating System.
For Developers
Environment Setup
- Enter nix shell to get the holochain dev environment (follow holochain's setup instructions if you don't have nix installed yet)
nix develop
- Build the Node Rust-add-ons, install and build all dependencies and download default apps:
yarn setup
- Fetch the holochain or lair binaries for your platform:
# Linux
mkdir resources/bins
yarn fetch-binaries:linux
chmod +x resources/bins/* # give permission to run the binaries
# macOS
mkdir resources/bins
yarn fetch-binaries:macos
chmod +x resources/bins/* # give permission to run the binaries
# Windows
mkdir resources/bins
yarn fetch-binaries:windows
OR
Build the sidecar binaries locally:
bash ./scripts/setup-binaries.sh
Development
The following commands build the example applet and then run we in "applet-dev" mode based on the we.dev.config.example.json
file.
$ yarn build:example-applet
$ yarn applet-dev
We will start up 2 agents each with the same group and 3 applets installed. One of the applets will be in hot-reloading mode, i.e. you can modify the code in the example/ui/
directory and should see the changes immediately. You should also see changes applied to the src/renderer/src
directory immediately reflected.
Build
# For windows
$ yarn build:win
# For macOS
$ yarn build:mac
# For Linux
$ yarn build:linux
License
Copyright (C) 2021, Harris-Braun Enterprises, LLC
This program is free software: you can redistribute it and/or modify it under the terms of the license provided in the LICENSE file (CAL-1.0). This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.