Visit the site

Visit the site

Organizations Involved

Potluck Chef is for foodies and for people willing to get the best taste of dishes made by the expert chefs to search, discover, and book a private chef all around the world โ€“ online or from a mobile phone. It is a platform for hiring a chef based on location, distance, event, cuisine type, diet type, experience level, availability, and hourly rate. Its basic purpose is to hire/book chefs for cooking/providing food for various events ranging from weddings to potlucks. It is also a very good platform for chefs to feature themselves and their skills with an authentic rating system to promote their profiles highlighting their achievements and awards.

About the project

Goals

The project envisioned to make booking chefs easy. And it was just not booking one chef, it wanted to bring in a concept of events, where users can hire multiple chefs and then be able to discuss everything and share information under one unified space. There needed to be a payment mechanism for starting such an event and then option to cancel an event and get the booking fee refunded into a virtual wallet. Apart from that there would be search based on chef availability, discussion board and profile creation.

Requirements

The project requirements can be broadly classified into the following aspects:

Design & Conceptualisation

The site needed to be designed and conceptualised by us. The client came to us with certain ideas in mind, but wanted us to actually help them come up with a UI/UX that would be appropriate and a flow that will be easy for non technical users. Our team of creative designers have set a very high standards for themselves already and hence their challenge was to keep up with it. We finally, after a lot of discussion within the team and with the client gave the site a perfect flow that will be appropriate for it's targeted customer base.

Registration and Profile Creation

Users needed to be able to register, either as Chef or as Customer. The registration form would contain same fields, but after registration there would be different fields for each profile. Chef had lot many fields, and this needed to be presented cleanly and very professionally as Chef's public profile which other's could go in and visit.

Events Space

The client wanted to have a space where customer and chefs can discuss and share information regarding the event. We came up with the concept of event. So a Chef can't be directly booked. A customer needs to first create a event. Once he creates can event, he gets an event space. Event space is sort of like a wall feed, and showing details about the event in the sidebar. Users can then search for chef and invite chefs for the event. If a Chef accepts the invite, he or she joins the event space. but chatting can still not begin. Customer now needs to pay for the event (an one time fee) and then once payment is made, the event space opens up. All the parties can upload documents, share information and chat by creating posts. Once an event expires, the chat can no longer be accessed.

Event Cancellation & Refund to Wallet

We implemented a concept of digital wallet, where refunded payment will be called back. It could be used for the next payment for events. The wallet money could not be withdrawn, but later on, in Phase II plan is to integrate this to user points and then be able to purchase point credits using this amount.

An extensive search mechanism needed to be integrated. We used Search API + SOLR backend. But we also needed to search based on availability of Chefs. For Chefs time slots, we used Opening Hours module, which nicely provided the slots and then wrote it's integration for search API. The system worked great. We provided Facets through Search API Facets module.

Outcome

The project was a great success, the client was extremely satisfied with the end result. The design that we produced was highly appreciated and the functionality was smooth, and very easy to use and understand even for non technical users, who was a big target audience for the client - the Chefs.

Why Drupal was chosen

When the project spec came to us, our immediate preference for this was drupal. The project needed some complicated features but it also needed an extensible and extensive CMS architecture. We felt Drupal will be most suitable keeping the feature set in mind - availability calendars, booking, search and profile creation. There was also an event space that was needed and stripe payment integration for creating the event space. We discussed with client, and they agreed for Drupal. They came to us with Wordpress in mind, but after researching upon suggestion, they ended up choosing Drupal as they saw the benefits of the framework.

Technical Specifications

Drupal version:

Why these modules/theme/distribution were chosen

The registration and profile creation was provided through profile2 and profile2 registration path and some field based modules like date, field collection and field collection table. The event wall was created using statuses and fbsmp module - these two are hidden gems, they were extremely helpful for us to come up with the events wall feature which otherwise would have taken quite along time to implement. They were quite extensible as well. The stripe payment gateway was implemented using the Stripe API module.