Satellite gives you peace of mind with end-to-end encryption without sacrificing quality. Stream in 4k, chat in 500kbs+, share 10GB files.
Satellite gives you peace of mind with end-to-end encryption without sacrificing quality. Stream in 4k, chat in 500kbs+, share 10GB files.
Browse the codebase fast: https://github1s.com/Satellite-im/Satellite
You must install Node.JS on your system prior to running the application.
Because the application uses HMR it will refresh un-nessiarily so it is recommended to run Textile locally. You can use their Docker container which makes this very easy, information here: Textile Docker.
Alternativley you can simply create a key for Textile and include it in your config. Creating a Textile account and generating keys is explained here: Textile Account
You'll need to fill out a few things in the config, first create your config by running cp src/config/config-example.js src/config/config.js
.
Next enter the following information:
env
- Switch to 'prod' unless you're using a local instance of Textile.
textile.key
- Replace this with your Textile.io API key.
Update Submodules
git submodule update --init --recursive
Install Deps.
yarn
or npm install
Build Contracts
Install Truffle npm i -g truffle
Build Contracts cd src/contracts && truffle build
Start in Devmode
yarn dev
or npm run dev
Navigate to http://localhost:8080
. (This should open automatically.)
In your browser, use something like metamask connected to the goerli testnet.
Satellite is intended to be built by the community. PLEASE document all new methods with JSDoc clearly so that future developers can pick up and improve Satellite rapidly. We also use the Standard.js style guide. Maintain this style guide wherever possible.
If a single file component exceeds 150 lines please split it into a three file component.
Nothing is here yet, that's a problem, if you'd love a great place to start we would love to setup some automated testing!
This repository encompases all of Satellite's infastructure. There is no back-end API to store keys or anything really. With this in mind please be mindful that anything you add to the repository will be visible to the end user. Traditional secret key authentication into external APIs will expose those secrets to the public.
We're probably hiring, if you've made it this far you're probably interested in the tech side. Please feel free to reach out and chat with us!