nOS is a blockchain powered virtual operating system that serves as the gateway to Decentralized Applications.
The nOS Client (Developer MVP Release) allows for the development of Decentralized Applications that interact with Smart Contracts in the back-end.
The standalone client installers can be found here. To build manually, the client can be cloned from GitHub and run using the development steps below.
Commands
# Cloning from Github
git clone https://github.com/nos/client.git
# Install dependencies and launch the nOS client
# This is used to start developing on the nOS client
yarn install && yarn start
# Testing command
yarn test
# Testing with debug (repl) command
yarn test:debug
# Distribution command (code signing certificates are required to make this work)
yarn dist
We welcome contributions to the code base. If you are interested in becoming a contributor, please read the contributing guide that covers the following:
There is a specific channel called develop on Discord to discuss development.
Need some help with building nOS dApps? Check out our dedicated documentation website containing useful info for the following topics:
Check out the documentation of the Create nOS dApp CLI tool to get going quickly.
Resources:
We use CircleCI to automatically create builds based upon git tags.
- run
yarn release --dry-run
- Note if the output version tag/changelog is correctly generated. - run
yarn release
- This will generate the changelog, update the version in package.json and create and push a tag. - The deploys jobs will be triggered and upload the artifacts to Github Release page as a draft.
- Export the following variables:
CSC_LINK
- This is the path to the .p12 certificate fileCSC_KEY_PASSWORD
- This is the password of the .p12 certificate fileCSC_IDENTITY_AUTO_DISCOVERY
- Set tofalse
to disable usage of local keychain (By default it looks in yourlogin
keychain)GH_TOKEN
- This is used to upload the artifacts to Github
- Create the distributable, i.e.
yarn dist
. - Locate and upload the following files as these are required for the auto-updater to work:
dist/nOS-1.0.0-mac.zip
dist/nOS-1.0.0-mac.dmg
dist/nOS-1.0.0-mac.dmg.blockmap
dist/latest-mac.yml
- Create the distributable, i.e.
yarn dist
. - Locate and upload the following files as these are required for the auto-updater to work:
dist/nOS-1.0.0-linux-amd64.snap
dist/nOS-1.0.0-linux-x86_64.AppImage
dist/latest-linux.yml
- Export the following variables:
WIN_CSC_LINK
- This is the certificate file in text formatWIN_CSC_KEY_PASSWORD
- This is the password of the certificate fileGH_TOKEN
- This is used to upload the artifacts to Github
- Create the distributable, i.e.
yarn dist
. - Locate and upload the following files as these are required for the auto-updater to work:
dist/nOS-1.0.0-win.exe
dist/nOS-1.0.0-win.exe.blockmap
dist/latest.yml
- MacOS/Linux:
shasum -a 256 ./*
- Where the final argument is the location of the artifacts