https://s3-us-west-2.amazonaws.com/secure.notion-static.com/da15d785-6003-432f-9d07-cb749a2f5b67/Untitled.png

About

Travel always has been an integral part of human life to reduce stress. People are always looking for new and exciting locations and most of the locations out there become mundane after one visit. Besides how many times we try to book the next best trip using the many third-party aggregators?

Introducing Aloha Travels, a travel company based in the USA that provides exciting tours to remote locations with tour guides to make your travel adventure memorable.

Role

This project was assigned in March 2020. It was a solo led project comprised of starting the project from scratch with ideation, research, design, and development. I collaborated with all available stakeholders over the time period on the execution and delivery of the final product v1.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/bacb9862-5169-4a22-b3f8-b4bdb4eaf38c/Untitled.png

The Product Goals

Create an online platform that will allow users to book a tour for travel purposes and with any budget. In addition, to create a full tour, add multiple starting dates for the same tour. display map of the locations.

The customer should be able to explore all tours, write reviews about their travel, and book tours. The platform should be able to accept payments through Stripe.

Platforms: a cross-browser responsive website with back-end

The Business Goals

Build a complete user experience that makes it easy for travel enthusiasts to book tours online.

Increase customer market and maximize sales revenue once covid-19 element settles down. Minimize the call bookings and bring customers online.

Sell more than 500 packages per month with our new online platform.

Partner with a bus company for the travel.

Partner with tent-renting companies for the camping trips to ease travel.

Follow Complete UX Case Study on Behance

                                                     [<https://www.behance.net/gallery/113025531/Aloha-Travels-Part-One>](<https://www.behance.net/gallery/113025531/Aloha-Travels-Part-One>)

DEVELOPMENT

Design and develop the complete front and backend tour booking platform that provides a comfortable experience to view a tour and book it online. It must be able to provide clear steps in booking, proper error handling, and a comfortable checkout process.

In a nutshell, Build a API and consume it to build website.

Solution Process

  1. Create a server with node.js with an express layer on top of it.
  2. Setup cloud MongoDB database with atlas cloud mongo and connect it with our server using the string method
  3. Choosing JSend specification
  4. Setup API structure by dividing the requirements into routes to have different resource points.
  5. We will be using MVC architecture.
  6. The callback functions for the resources to be established separately into a folder called controllers.
  7. As we using mongoose as an ODM for MongoDB, we will write schema and logic in model folders.
  8. Create endpoints and test them using POSTMAN
  9. Setup authentication of accounts using JSON WEB TOKEN.
  10. Persist test data into the database such as tours, initial users, reviews by creating a seeder function.
  11. Once the API is established, we can set up the views folder with pug as templating engine.
  12. Create and style all the elements in the views and consume the API.
  13. Use Mapboxgl to display the map for the specific tour.
  14. Setup stripe with company branding and test it in development mode.
  15. Test and deployment

Technologies

Front-End: HTML, CSS3 (SCSS), javaScript, Axios, Gsap

Back-End: Express, bcrypt, jwt, Node.js

Database: MongoDB (Modelling: Mongoose)

Template Engine: PUG

Bundler: Parcel bundler

API: Rest Api Architecture with JSend data specification

Payment gateway: Stripe

Eslint: airbnb style guide, prettier

Other packages: bcrypt, cookie-parser, dotenv, helmet, hpp, jsonwebtoken, lazyload, lazysizes, morgan, multer, nodemailer, sharp, slugify, xss-clean, express-mongo-sanitize, express-rate-limit, parcel-bundler, prettier, nbd

Rest API