- clone the repo
- generate a GitHub Personal Access Token with the
read:package
scope- add to npm by running
npm config set //npm.pkg.github.com/:\_authToken=YOUR_GITHUB_TOKEN
- add to npm by running
- run
npm install --legacy-peer-deps
- copy .env.example to .env and change/add the necessary values
- run
npm start
to run the app or npm run test
to run the tests
The ZERO Feed app is the first core app, and provides a template to follow. Get in touch with the zOS core team to discuss having your app integrated.
- fork the zOS repo, as new apps still require some changes to the platform at this stage.
- follow the getting started steps above and make sure you have a running zOS instance.
- add a repo for your new app. you can copy the feed app to get the basics, or just start from scratch.
- an app is just a component that conforms to the interface required by the platform. once you have the basics of your app in place, you can add it to the platform to make sure it loads correctly:
- create a new folder for your app in src/apps
- if your app is externally hosted, create an index.tsx file that uses the ExternalApp component and points to your app.
- add your app component to the AppRouter
- add a link to your app in the AppBar
- once you have a stable version of your app, you can create a PR to the core zOS repo with the platform changes, and the version of your app you would like released.
- create a new folder for your app in src/apps
There is always work to be done on the core platform, so if you've noticed a bug or want to get involved at a deeper level, feel free to open a PR, or get in touch with the core team. Be sure to check out the contributing guidelines and style guide before opening a PR.
A high level overview of the Component, Connected Component, Redux Saga, Normalizr, Redux architecture: https://miro.com/app/board/uXjVPL_sxFI=/
- Increment the version number in the
package.json
file and update thepackage-lock.json
(npm install --package-lock-only
) - Create a PR and merge your version update
- View https://github.com/zer0-os/zOS/releases, find your new release and edit it, ensure that
Set as the latest release
is checked, and click thePublish Release
button - View https://github.com/zer0-os/zOS/actions, watch for your release deployment to complete
- View https://zos.zero.tech, open the Developer Tools Console, verify that your version number is correct (matches your version increment in package.json from the first step)
For local development you can test against the development home server or run our matrix server locally: https://github.com/zer0-os/zOS-chat-server. If you want to run against your local home server set the env var and restart zOS: REACT_APP_MATRIX_HOME_SERVER_URL=http://localhost:8008