I have a technical question I'm not sure about.
Right now I have a product / web app (rails application) that I white label to other companies. I host the white label and everything I'm just wondering how to get out of this viscous cycle of having to duplicate all my code.
If I make a change to an API on one I have to do it to the other. I'm not sure how to get around this but I think it is important.
I've thought about building a core API which will route requests to different white labels servers but I'm not sure this is the best option.
Any help offered is greatly appreciated!
It sounds as if you clone your app each time you add a new company, whereas the proper solution would be to have one app that serves somewhat different data depending on the current company.
You can use the Apartment gem if you wish to use different dbs for different companies (sort of, check docs for more details), but you need to make sure your db can handle multiple tables (PostgreSQL can't). Or you can use Acts As Tenant if you wish to scope records to a specific company.
My suggestion is to go with Acts As Tenant, as most dbs are doing well with multiple rows, but not so well with multiple tables.