- job-board updated with sib-conversation - counter for the number of comments added - new styles added
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 to have:
- Python3 & Pip
- NodeJS & NPM
- A Prosody Server
- (Optional) A SMTP Server
Installing
At first, you'll need to deploy a sib-manager server, then configure it.
sib-manager installation or update
$ pip3 install -U sib-manager
sib-manager deploy
$ sib startproject newserver -m djangoldp_project -m oidc_provider@django-oidc-provider -m djangoldp_circle -m djangoldp_joboffer -m djangoldp_profile -m djangoldp_skill -m djangoldp_account -m djangoldp_notification -m djangoldp_conversation
$ sib initproject newserver
We're using
- djangoldp_project,
- django-oidc-provider,
- djangoldp_circle,
- djangoldp_joboffer,
- djangoldp_profile,
- djangoldp_skill,
- djangoldp_account,
- djangoldp_notification,
- djangoldp_conversation
As dependencies, if you don't want them, just remove the -m packagename.
sibserver is the name of the folder that sib-manager will create, choose it wisely.
In addition to the startproject you can add :
- --site-url "http://localhost:8000"
- --productionto use postgresql instead of sqlite
- --db-host,- --db-name,- --db-userand- --db-passare used to configure the database (mandatory with- --production)
- --smtp-host,- --smtp-userand- --smtp-passare used to configure the SMTP (optional)
sibserver configuration
You'll have to change some settings on the sibserver files.
- Add your server name to ALLOWED_HOSTS- In settings.py, add your hostname onALLOWED_HOSTS, eg:ALLOWED_HOSTS = ['api.myserver.com', 'localhost']
 
- In 
- Around line 96-97ofsettings.pyset yourPROSODY_HTTP_URL,JABBER_DEFAULT_HOST, eg:PROSODY_HTTP_URL = 'https://jabber.happy-dev.fr' JABBER_DEFAULT_HOST = 'happy-dev.fr'
sib-manager launching
On the first sibserver folder
$ ./manage.py runserver
Create a Client ID for Prosody & Client
- Go to localhost:8000/admin/
- Login with previously created account.
- If needed you can create another admin account with ./manage.py createsuperadmin
 
- If needed you can create another admin account with 
- Add a ClientsonOpenID Connect Providersection- 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-digitsnewly createClient IDsomewhere
Then, you'll have to install the client.
Clone this repository
# With SSH
$ git clone git@git.happy-dev.fr:startinblox/applications/sib-app.git
# Or with HTTPS
$ git clone https://git.happy-dev.fr/startinblox/applications/sib-app.git
Install dependencies
$ cd sib-app
$ npm install
Configure config.json
On the newly created ./src/config.json change the dev configuration like this:
  "dev": {
    "sdn": "http://api.myserver.com", # Or localhost:8000
    "cdn": "https://cdn.happy-dev.fr",
    "xmpp": "https://prosody.myserver.com/http-bind/",
    "client_id": "000000" # <- Here goes your previously created Client ID
  },
That's all! Now let's run it!
# For dev
$ make watch
$ npm run serve
# Or for prod
$ make build
# Then publish the www folder
Deployment
Deployment will need a registered RSA Key on production servers.
On Alpha
$ make syncprod
On Staging
$ make sync
Built With
- Sib-Core - An awesome new framework!
Architecture
Some general schema of the existing StartinBlox applications architecture can be found here.