wanderlust FE

Wanderlust is an Airbnb like platform to match up tour guides and tourists through a full-stack web application powered by a React, Redux Frontend, a Java Spring Boot Backend and a PostgreSQL.

1
5
JavaScript

Wanderlust

Visit Wanderlust

Wanderlust is a fullstack web application that has been built during the WEB20 buildweek_2 (24.06.2019-28.06.2019) by LambdaSchool students. Each student fulfills a role in the project to collectively build the app. (Roles listed below)

Wanderlust provides an airbnb like platform for travelers and guides to match up. Tourists should have a fun experience visiting a foreign place so should easily be able to find tours to book. Guides should be able to utilize the platform to insert and edit own tours that will be displayed to tourists so their possible reached audience grows.

Built With

  • HTML - Foundation of the webpage
  • CSS - Styling and sizing of the webpage
  • JSX - Syntax extension to JavaScript for reactive DOM elements
  • JavaScript - Language used to make the webpage interactive
  • React.js - JavaScript library for user interfaces
  • Redux - A predictable state container for React
  • Redux-Thunk - Redux Middleware for asynchronous state operations
  • Axios - Promised based HTTP client to make requests to the backend
  • MDBReact - Material Design Bootstrap Framework for React
  • Axios-Progress-Bar - A library to incluse a progress bar into the webpage that makes visualizes to the user after a HTTP request how long it will take for him to wait.

Architecture and Workflow

The backend and database is handled by Rogelio Caballero with a solution of Java Spring Boot and PostgreSQL. The backend is RESTful and will provide specific endpoints to communicate with the Frontend through HTTP requests and JSON-Objects. The backend is deployed at Heroku.

The Frontend is built by the authors mentioned below. It runs JavaScript and uses a State Driven Development (SDD) approach with React and React Redux. For the deployment a Continuous Deployment (CD) solution was chosen through Netlify and then hosted under selfowned domains.

As working with 2 Frontend Developers the project progress needs to be commited in a way that keeps the amount of merge conflicts low. Thus before the project was built, design choices and modeling was done. The chosen branching strategy can be viewed here. It was later further improved with the usage of Release Branches.
The project is chunked in user stories/tasks which are provided to a trello board for developers to assign these for themself.

Before the development started the Frontend Developers did modeling and planning for the application and created use cases, detailed technical descriptions for use cases, models of JSON-Objects and a flowchart for the states that the application can go through.

For the design aspect the group had a UX Design student dedicated to it who provided a design mockup for the whole application. The Frontend Developers tried to stick as close as possible to this mockup.

Project Requirements and Documentation

Authors

Role: Frontend Developer

License

This project is licensed under the MIT License - see the LICENSE file for details