SnapMail is an open-source P2P messaging app based on Holochain.
It is the latest iteration of Snapmail from Glass Bead Software.
This is the repository for the different native applications See snapmail-rsm for holochain backend source code.
- Linux:
libssl
package must be installed on your system (and possiblylibssl-dev
)
- Go to the release page
- Download the latest release file for your platform.
- Execute the downloaded installer.
- Launch the
Snapmail
executable. - You will be prompted to select a network access key. This is required for discovering other peers on the network. You will only communicate with peers using the same network access key.
- You will be prompted to Set a username.
- Other users on the same network will appear in the bottom right list box.
- Make sure the following executables have execution rights:
Snapmail
,snapmail-lair-keystore
,snapmail-holochain
.
- Set version number in top-level
package.json
npm run update-version
- Tag a new release in the release page.
- Wait for CI to complete its workflow.
npm run deploy-win
npm run deploy-mac
- Check
snapmail-rsm
repo has a branch for the new holochain version. - Update
hc-version
field in the top-levelpackage.json
. - Update the holochain-related dependencies in child
package.json
: 4.webcomponents
:lit-happ
&holochain-client-js
5.webapp
:lit-happ
&holochain-client-js
6.we-applet
:holochain-client-js
6.electron
:@lightningrodlabs/electron-holochain
- Check
npm run install:zits
: Make surezits
is compatible for the version of holochain &holochain-client-js
. git commit
cargo, npm, rollup, typescript, eslint, electron-builder
Directory | Description |
---|---|
/assets/ |
Original media files used throughout the code base |
/electron/ |
The electron app directory |
src/ |
The electron app source code |
web/ |
Final artifacts for the electron app (includes output from webapp ) |
bin/ |
All the binaries we are dependent on and must ship with the app |
/scripts/ |
Various shell scripts for building, testing, releasing |
/submodules/ |
Temp folder for code dependencies |
/we-applet/ |
We-applet source code |
webhapp.workdir/ |
"we-applet" webhapp work directory |
/webapp/ |
Webapp source code. Used by electron app |
webhapp.workdir/ |
"Normal" webhapp work directory |
/webcomponents/ |
Source code of the web components to be used by the webapps |