Hey @daveymackintosh! I love the fact that you're using Sails under the hood :). Could you explain the main differences between Multicolour and a basic Sails project?
@_yannbertrand Hey! Thanks for checking it out, it doesn't use Sails under the hood but it does use the same ORM. Waterline is great for using multiple database technologies and swapping at any time without any code changes.
The main differences between Multicolour and Sails is that Multicolour isn't a framework as such, it's not an abstraction of the technology it uses but rather an open source glue between other open source projects. Currently Multicolour only supports HapiJS as it's server technology but I'm working on a Koa module and Express module so that you can choose every part you want to use. Sails is an opinionated framework that insists you do it this way and that way, when I was building Multicolour I didn't want to enforce any style on it's users, you get all the standard stuff for free (CRUD API, CRUD frontend, etc) and when you want to add your own business logic you write the code you would normally write if you were writing everything from scratch.
To summarise, Sails is an opinionated framework that does some really cool stuff for you and Multicolour is a generator to get from A to B faster using less code.
@daveymackintosh Oh! I understand it better now :). Seems to be a good idea, I will definitely check it out deeply.
How does Multicolour help for OAuth authentication and users authorizations?
@_yannbertrand The OAuth module is built on top of the amazing Bell module for Hapi. Once you've added the desired provider config Multicolour will create endpoints to handle the login with "X" by creating new endpoints.
For example: If you have a Twitter app configured in config.js you'll see a new endpoint appear in Swagger like this `GET /session/twitter` which redirects you to Twitter, does the auth and comes back to the api to create the new user and a session token to be used in the Authorization headers for all future requests before redirecting you to the configured redirect url or to the newly created session, i.e /session/123.
This looks absolutely amazing. Perfect tool for a front-end dev who needs more control than Firebase or similar, but doesn't want to dump time into a JSON API. I'll definitely be using this for a project I'm working on. Thanks!
Multicolour
Multicolour
Process Street
Multicolour