# SiB App SiB App is the magic tool that allows the Happy Dev network to thrive in a decentralized way. ## Getting Started These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system. ### Prerequisites To install SiB App, you'll need: * A SIB server with the appropriate modules * A Prosody Server (with [appropriate modules](https://git.happy-dev.fr/startinblox/prosody/custom-prosody-modules/) * A SMTP Server (optional) * NodeJS on your machine Before diving in you have to check your SIB server supports the following LDP packages: * djangoldp_project: 0.1.12 * djangoldp_uploader: 0.0.5 * djangoldp_circle: 0.1.9 * djangoldp_notification: 0.1.4 * djangoldp_account: 0.2.12 * djangoldp_skill: 0.1.1 * djangoldp_joboffer: 0.1.1 * djangoldp_conversation: 0.2.1 * djangoldp_profile: 0.1.4 * djangoldp_invoice: 0.1.0 * oidc_provider: 'git+https://github.com/jblemee/django-oidc-provider.git@develop' Those packages are given with the last stable version tested. Refer to the [documentation to install a SIB server](https://git.happy-dev.fr/startinblox/devops/doc/wikis/y_a_sib_application) with this configuration. ## Configure your SIB server Create a Client ID for Prosody & Client - Login on `localhost:8000/admin/` with the admin account you configured - Add a `Clients` on `OpenID Connect Provider` section - Name it as you wish - `Client type`: `Public` - `Response types`: `id_token token (Implicit Flow)` - `Redirect URIs`: ``` http://localhost:3000 http://127.0.0.1:3000 http://0.0.0.0:3000 http://localhost:8000 https://myserver.com ``` - Keep the `6-digits` newly create `Client ID` somewhere ## Build the application In order to find your server(s) the client application needs to be assembled with the proper configuration. Get the code of the SIB app on your machine: ``` $ git clone ... ``` Then create a `config.json` with all the the capabilities the SIB App requires. Which are: * businessproviders * circles * groups * joboffers * projects * skills * users [The documentation](https://git.happy-dev.fr/startinblox/devops/doc/wikis/create_sib_application) explains the details of this file but for convienence a `config.sample.json` exists in the source. Then build your new SIB App: ``` $ npm run build ``` The application bundle is in the `dist` folder, ready to be deployed everywhere as a static file. ## Built With * [Sib-Core](https://git.happy-dev.fr/startinblox/framework/sib-core/) - An awesome new framework!