Technical Challenges - peterniemeier/Flex-Project GitHub Wiki

Technologies and Challenges

Architecture

The architecture of Porcelain will be deployed and maintained as a desktop application that can be responsive as on the mobile.

Porcelain is built with the MERN stack (MongoDB, Express, React, and Node). It features a frontend agnostic API servicing both web and mobile in conjunction with client side rendering with React.

Backend

The backend will be done in Node, Express, and MongoDB. With minimal relations, a NoSQL DB will be efficient for this project

The schema consists of 3 models (Users, Toilets, and Comments)

Frontend

  • The frontend will be done in React/Redux.
  • Bootstrap will be used as a CSS library for responsive resizing of the view.
  • Redux will be making api calls to the backend

UI/UX

The user experience will go right to the map for the user to see the reviews of toilets closest to them. It will be similar to Waze with a crowdsourcing interface where users will be able to contribute their own reviews by simply clicking on a coordinate on the map.