Hi,
Apologies if covered before but I have been lurking for a while and not yet found a framework that fits my needs. I am a full stack java developer by day but want a framework that I can use to rapidly rollout ideas and test viability straight away. This should include
- Authentication - email / twitter / github / facebook
- Authorisation - persistent RBAC model saved to a backend db can be used by app to give access to different users based on roles
- https certification issuance per app
- User Account Profile Details
- User Billing & Invoicing
- Payment - one off or scheduled via Stripe AND PayPal - (paypal is nice because of the perceived additional security offered of not having to disclose card details esp for unknown sites)
- Payment Schedule and Billing for Users for (annual / monthly payments)
- Robust testing and coverage of all components via integration and unit tests
- Complete ownership of code on the server preferred - no use of paid for 3rd party services (apart from Stripe / Paypal)
- Runnable on a linode server
- Capable of running several applications with different domains against same backend
- Email subscription and notification
I am thinking about two approaches
- Delegate from app to a paid SASS service that provides all the above authentication, authorisation, billing, invoicing and scheduling - Ideally should allow to use an external persistent store hosted by myself. Also should allow for multiple applications with account details qualified by application name. Cost should be annual / monthly not dependent on usage.
OR
- Open source stack for everyting that I can fully host. (aside from payment services)
Initially app will be run on a single linode server that I could scale as needed. My language of choice on the backend is java / spring boot but if you can convince me use js / node-js I'm up for that too (provided there is sufficient testing).