Let me say this right away – OroPlatform is best to build a multi-tenant b2b business app and you will find why in this write-up.
For those who don’t know what OroPlatform is, here is the quick introduction
OroPlatfrom is a Business Application Platform which has a multi-tenant architecture built into it. Just not that, It is Open Source Business Application Platform (BAP) built on top of proven PHP framework – Symfony. Its frontend architecture is very well built around JQuery & Backbone JS (Chaplin JS to be particular)
With that said, I would further explain why OroPlatform is the best for SaaS Apps – without being too technical.
Before we go into details, let’s answer this trust-based question. Who is already using this OroPlatform? The below screenshot answers your question.
Just to brief things off, OroPlatform is being used by Open source ERP, Open Source Product Management Software, Open Source Support Software, Open Source CRM, Open Source B2B E-commerce System.
Along with all these open source software it is also being used by SaaS-based Human Resource Management Software called HrRoll. This company is based out in Bangalore, India
(Disclaimer: I am not associated with the HrRoll Company in anyways. Of course, I do work on OroPlatform out of Bangalore, India)
Now you have got a reason to read this blog further – isn’t it?
Now let’s get straight to the point of this blog – Why you should use OroPlatform for next Sass app.
Let me run thru the advantages.
Built-In Multi-tenant Architecture
The first big challenge in SaaS application is to build a multi-tenant architecture. This challenge has been addressed in the core of OroPlatform. OroPlatform has Organization implementation. Every record in the database gets stored in association with the organization.
Each of your client company can be one organization in Oro. Also, this platform has organization switcher being implemented which can allow founder of 2 companies switch between organizations with just one logged-in account.
User, Roles & Permission Management System
Next thing which is most required in any B2B SaaS system is a user, roles, permission management system. All this has been built into the platform. In fact, it also takes the consideration of different branches of the organization into permission management equation – It’s called as business units in Oro.
Just not that It has built-in Login system as well. Of course, the registration screen is missing in the implementation. This can be built with little efforts.
Dashboard & Widget System
Any B2B SaaS system wants to show small dashboard as soon as a user login. This has been already built into the platform. A widget Quick LaunchPad is available in the dashboard with default platform installation.
Of course, one has to build the app specific widgets. However good part is there is a very well organized way to build it. Plus your user can drag-drop, re-arrange, remove widgets from dashboard & can also create multiple dashboards. This is why I admire OroPlatform.
Main Menu & User Menu
OroPlatform has menu management system where you can arrange the menu in required order & can also specify how the menu has to appear. It can be horizontal with dropdowns or vertical with pull-left kind of interface.
User menu is being displayed on the top right which includes a way for your user to do personal configurations, manage their account, change password & log-out
History, Favourite, Most Viewed
This is the best part of this platform. There is a quick menu which can help your users to navigate quickly based on screen they had opened previously, screens they have started, screen they view the most.
There is a pin bar implementation which allows the user to pin any screen in the system & navigate to other screens. After some time, they can open the pinned screen & continue from where ever they had left – Their entered data will not be lost.
Search & Shortcut
You also have global search system being implemented into the platform which will search the entry system for a given keyword. You can also constrain the search to a specific entity of your app say candidates or contacts etc.
The shortcut menu allows users to do an activity using shortcuts – Say create a customer, open timesheet etc.
Good User Experience – No Page Refresh
Yep OroPlatform not only have a good amount of built-in features, but it also has a good UI implementation. The page doesn’t refresh when user switches between the screens. Also, this platform comes with many built-in form controls, dialogs, autocomplete dropdowns that make the user experience even better.
Good… But! How can I benefit with respect to my SaaS App?
By now you may have somewhat convinced that OroPlatform is good to give a try – at least explore further.
But wait! I will explain how you can benefit with respect to your SaaS app.
For this, you need to know that platform has Code bundles. Each code bundle is responsible for a specific generic functionality. For example Grid Bundle will help you to display any data in a nice sortable, filterable data grid, similarly, you have UI Bundle, Chart Bundle, Workflow Bundle, Attachment Bundle etc.
You can look at all the available bundles here
While, I will not able to go thru all the bundles here, but will list the bundles which can help you to build your next SaaS app.
Calendar Bundle
Integrates jQuery Full Calendar plugin and provides additional calendar related functionality.
Chart Bundle
Displays different types of charts (like line charts, pie charts, flow charts).
Config Bundle
Helps to maintain configuration/ user preferences setting & show them in configuration trees like UI.
Cron Bundle
You SaaS app always has one or the other background task. This bundle helps you to implement them. Also provides a user interface to keep an eye on their executions.
Dashboard Bundle
Helps you to build your application-specific dashboards & widgets
Data Audit Bundle
Helps to keep an eye on the data change that happens in your SaaS app.
Data Grid Bundle
Helps to show the data in a nice table in which users can sort, filter the data. They can also add/remove columns as per their convenience. They can also edit the data inside the data grid.
Email Bundle
Do you SaaS app need to sync with the user’s inbox. This bundle is meant for that purpose. It also has all the UI required to show the emails.
Help Bundle
With this bundle, you can link the help docs of your application that sits outside the app.
Import Export Bundle
Any SaaS app has some amount of import & export. This module is available just to import & export data.
Integration Bundle
Integration is a must-have feature for SaaS apps these days. The platform gives an abstracted logic to connect your SaaS app with third-party services and applications.
Notification Bundle
Want to send automated emails from your SaaS app. Use this bundle to send email notifications triggered by specific activity of the user.
Reminder Bundle
Want to remind the users of something via emails or as a flash message in the application. Then this bundle is right there for you.
Report Bundle
Reports are must for any serious SaaS application. This bundle will help to build a custom & configurable reports in the application.
Translation Bundle
Oops! Forgot to say. This platform has a multilingual implementation. This bundle helps you to achieve that.
User Bundle
This bundle provides user management functionality (authentication, authorization, etc).
Windows Bundle
Want to show few things in the popup dialog box. Ok. That’s being covered.
Workflow Bundle
Want to build some kind of workflow stages in your application. Say candidate go thru different stages of interview or and Order go thru different states. Then this bundle helps you to do that. This is very powerful part of OroPlatform.
Well, at last, you may say – how do you know this? Have you experienced them? Well, I am working on this platform for last 1.5 years for a start-up.
Hence, yes. I have experienced it. I am not writing this article just after reading the documentation.
If you want to know more on the technical front, get in touch with me. I am happy to help you.