Overview & Requirements
This site is about bringing together Ayurveda practitioners/ doctors under one roof. Qualified Ayurvedic practitioners/doctors can register themselves to the site by submitting their details and bio data. Once submitted, the client’s team validates and checks the details added. Once approved, the doctor become a part of the team. Each doctor can set an hourly rate for their consultations. The patients looking for qualified practitioners can search through the search and request to book a consultation with any of the doctors. For this they have to purchase plans/packages each of which gives them access to a certain fixed number of consultations. Then admin sets up an appointment for them, and one appointment slot is deducted from their available time slots. For each appointment, both doctors and customers can add notes and upload online e-prescriptions to the site and track their case history. Doctors can manage the timeslots they are available through an interactive calendar. Also doctors and practitioners can send private messages to one another. The site has a full blown admin backend for the client to assign admin role to certain people who can manage different aspects of the site like contents, appointments, payments, orders. Etc. The site also has an extensive blogging system and all the contents are managed by admin through well crafted CMS backend. Also there is a know your dosha quiz, which contains few questions and the result depends on the logic based on what questions and answered. Based on the result, a few set traits and descriptions get sent to the test taker’s email as a result of the know your dosha quiz.
There are three types of users - normal users, doctors and site admins. Users can register to the site and purchase health plans. Also, practitioners can register to the site who want to provide consultation. Site admin will be created from time to time to manage the site and its functionality.
Users can choose health plans to purchase, and upon purchase entitles them to a certain fixed number of appointments with the available practitioners in the site.
Users can search through various practitioners and read their bio data and experience.
Practitioners can log in to their accounts once they have created an account and is verified by site admin. They can then mark their schedule through an interactive calendar, to mention what days and timeslots they will be available for consultation. Each session is one hour long.
There is an interactive and functional dashboard for both doctors and users, where they see their most recent upcoming appointments as well as their appointment histories and pre and post consultation notes.
An well knit email and notification system to alert users on upcoming appointments, updation of consultation notes etc.
An extensive blogging system, where the client can share various articles related to ayurveda
A know your Dosha quiz was incorporated, which would let users know their Dosha report based on various questions asked, and in the backend the answers were processed depending on the predetermined logics and the right Dosha results are sent to the person through email.
The account types were set up using profile2 + profile2 registration path modules.
The e-commerce part was implemented using drupal commerce and its associated modules. An extensive coupon and discount system was implemented using commerce Coupon + Commerce Discount modules.
The doctor’s scheduling was set up using a forked version of the awesome opening hours module and bridging code was written to incorporate the booked hours into the doctor’s schedule.
The custom modules were written utilising Drupal APIs in order to implement various functionalities like appointment features, theming layer enhancements, and elements tweaking.
The major challenge of this project was to achieve the appointment booking feature. The Drupal ecosystem did not provide us with a right out of the box solution for this feature, even though, there were quite a few modules available for this purpose, but as per our review, they all fell short to what the client was looking to achieve. We decided to go ahead and implement this from scratch, using the awesome opening Hours modules at it's heart. This provided us with more flexibility and less need to customise and alter other modules functionality. Some other challenges were the specific recurring payment and membership feature, and a comprehensive family plan feature which client wanted to have. With careful planning, architectural design and implementing Drupal's APIs in the right way, we managed to solve these problems and meant out a perfect solution to all client's requirements.
When the project started, the client was not really sure of the capabilities drupal had as a framework. They have heard of Drupal and Wordpress, but were considering it primarily as a CMS. We did detailed discussion with them, and successfully convinced them to use Drupal citing its capabilities. But it is really towards then end, when they looked at the finished product and began testing, they began to understand and appreciate the real power of Drupal as a framework. They were impressed with the backend options and site management tools we made available to them, and also the smoothness and performance of the features we built for them. This is just the first phase of the product, and they are already discussing the next phases with us. Needless to say, the client was extremely happy and satisfied with the end result.
A full featured doctor's and customer's dashboard with lookup tools
An extensive know your Dosha Quiz which sends out result in email based on various logic and test cases
Extensive permission system for a granular control on who can access what features of the site
A full blown video conferencing system for doctors and practitioners to contact each other
An extensive appointment scheduling mechanism, where practitioners can mark available time slots
Clean and professional site design, with separate design for the backend screens, all based on responsive bootstrap framework
Lines of code
Members in the Team