How we mired in SSO, or pitfalls of 3 related web apps development

Kristina Margulec
humanseelabs
Published in
3 min readJul 5, 2019

Problem

Ketogains is a global project that aims to improve many human lives by teaching people how to take care of their fitness and health. The most valuable and engaging feature of Ketogains is personal programs for those who are driven to achieve their fitness goals: nutrition, sleep, trainee programs and much more. There is also an educational blog, which was created to provide people with extra knowledge of how do their bodies work. Ketogains’ team aims to grow into the most credible and well-respected health sciences resource.

In November 2018, they reached out to us requesting that we help make their service more useful and to make their customers’ schedules and nutrition regimens more disciplined. They also wanted to automatize the process of data collection in order to analyze training & trainers efficiency. Ketogains also wanted to optimize the communication between its users and the trainer in order to improve the customers’ achievements and to inspire them to the following progress.

Task

The purpose of our collaboration with Ketogains was to develop 3 web applications: for customers, trainers, and supervisors.

Application for trainers was expected to let them communicate with their trainees and to manage their physical activities, regimen, and nutrition. It was also designed to let the trainers get the latest data about the customers’ achievements in order to adjust the recommendations according to their progress.

Supervisors needed a personal application to assign trainees to trainers, view analytic reports, manage boot camps and improve the personalization of their customers.

Finally, the customers’ application was designed to become a personal assistant which would analyze the data that was filled in previously. This web assistant was intended to give the users personal recommendations to achieve their goals, whatever they might be — Body Recomposition, Gain Muscle & Increase Strength, Lose Body Fat.

Right after the idea had been approved, we started developing. Looking ahead, the main keystone was the SSO (single sign-on systems) implementation. We had to develop 3 related applications for 3 different roles of users with the appropriate access levels. We also needed to provide users with the possibility to log in all apps without re-authentification and let supervisors log in the trainers’ app to see the data through their eyes. The task was really daunting, but our experienced developers successfully completed the challenge.

Approach

Ketogains chose us for this project because of our impressive experience in serverless applications development. We implemented all the set-up features in the following way:

  • We decided to utilize React JS + Apollo as the main frontend technologies as soon as they were properly suitable.
  • We also used Ant Design as a UI kit.
  • PostgreSQL was adopted as the data management system for its extensibility, security, and reliability.
  • Hasura was used to set up a powerful GraphQL API on top of PostgreSQL database.
  • Business logic was implemented as serverless functions using Netlify Functions service.
  • Auth0 was chosen as the authentication & authorization platform.
  • CI/CD processes for development, testing/staging, and production environments were set up with deployment to Netlify servers.
  • Integrations with customer’s CRM and billing systems were implemented

Result

In less than 6 months, we accomplished the task and created 3 excellent serverless applications — usable, stylish and multifunctional. Ketogains got its brand-new services and became advantageous and functional like never before. And we gained that invaluable experience when you get a daunting task, then do your best, and finally, everything turns out just as you expected.

We take on ambitious tasks, so if you have an idea and need an experienced service provider to make it a reality, feel free to contact us. Our experienced and enthusiastic team will implement the most challenging decisions to get the perfect result.

Development performed by Humansee Labs Company https://humanseelabs.com

Your Project on React with the help of Humansee Labs https://react.humanseelabs.com

--

--