Website Builder Platform
Industry: Advertising
Country: USA
Description
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.
Client goals
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.
Main roles
Administrator
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.
Guest
This category of users only have access to the landing page and don’t have access to the administration part.
Implemented features
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.
Back-end
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.
Front-end
The front-end of this platform was built using Angular (a JavaScript framework) to enable rapid development of the user interface and other front-end features. We chose to use Angular because it is one of the best frameworks used to build dynamic and single web applications. This framework also gets regular updates, which will make it easy to add more features to the front-end of the client's platform without having to do a lot of work.
Testing
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.
Hosting
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.
Methodology of development
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
The top features created by us
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.
The most difficult
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.
Details
Timeline
June 2019 - February 2020
Team
1 Front-end, 1 Back-end developers, 1 QA engineer, 1 Designer
Used Technologies
Angular 8
NgRx
RxJs
Angular Material UI
Java
Spring
Spring Security
Hibernate
Kanban