Website builder platform is a company that helps small businesses to create simple websites with static information without the need to code it from scratch. Just like Wix and Tilda, one can create a website with this platform without any technical skills in web development. We built this platform from scratch, and one of our key deliverables was to make the steps for creating websites straightforward with a relatively shallow learning curve.
Besides being a Website builder, this platform also hosts the websites and tracks customer behavior using complex CRM systems. So, Website Builder Platform will not only help small businesses put up websites, but it will also provide customer behavior data that can be of great importance as far as promoting the website is concerned.
Our client tasked us to build a website builder platform that allows the creation of static websites. The platform also had to have the capacity to integrate a CRM system that would assist the website owner track metrics of how the website is performing. The data provided by the CRM system includes the number of views per page, the total website visitors within a certain period, the time visitors spent on the site, etc.
We also had to build this web application because it will be mainly used by non-technical people. So, we had to make sure its user interface is not intimidating, and the steps of creating web pages are simple enough.
Admin users have access to tools for creating public websites. So, they create and customize webpages to build a fully-fledged site that can be used to promote a small business online.
This category of users only have access to the landing page and don’t have access to the administration part.
We integrated a CRM system into the platform, which would enable the website builders' admins to use credit from CRM to access it. We implemented a Single Sign-On system that would enable users to get access to all sections of the platform without multiple authentications. This option was implemented to reduce the time wasted to sign in to the different sections.
The back-end of this platform was coded using Java. The frameworks used to build the different sections of the back-end were Spring Security and Hibernate. Spring Security was used to build the authentication and security bit of the back-end. Hibernate was used to enable mapping from Java classes to the database tables.
After building the front-end and the back-end of this platform, our QA engineer had to do thorough tests to ensure the platform doesn't have any major flaws that would affect the user experience.
When it comes to hosting, we used Amazon Web Services (AWS). We set up a CI/CD process that ensures constant development, delivery, and integration of new code doesn’t cause problems to the development and operations team.
We used Kanban methodology to enable just-in-time delivery, and also reduce the amount of time that would be wasted on building useless features that our client won't be interested in
Design: We did the design of this platform based on client preferences
Integration with the CRM system. We integrated a CRM system into the platform to enable tracking of user activities on this website.
Domains: We made it possible for the platform to manage the different domains that will be created by various users
Implementation of video and image galleries, and other visual components, sliders, contact forms, text, and graphic information. While building websites, users of this platform can also add all these forms of media and infographics to make their sites more appealing and robust.
Despite successfully completing this project, we had to solve some complex problems, some of which include:
Creating the drag and drop components in a way that would make it swift for the users to take advantage of them.
It was also not easy to add the capability that makes all the domains created by the users to be fully functional on the internet without having to host them individually.
June 2019 - February 2020
1 Front-end, 1 Back-end developers, 1 QA engineer, 1 Designer
Angular Material UI