Skip to content

Skip to the Loo, a full-stack app designed to help people find restrooms when they're on the go. Built with Node, Express, MySQL, Sequelize, and Handlebars and uses map data from two Google APIs.

alexastef/loo

Repository files navigation

Skip To The Loo: A Public Restroom Mapper

GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License GitHub License Open Source Love

Description

Skip To The Loo is a full-stack application that identifies nearby public restrooms in times of need, especially relevant during the era of COVID-19. Functioning as a user-driven 'Loo' logger, Skip To The Loo was created using Node, Express, Handlebars, a Sequelize ORM, MySQL for our database, and renders all the pertinent information with a Google Places API. It follows the MVC deisgn paradigm where Node & MySQL query the route data and Handlebars generates the HTML for the user to view. For validation, code consistency, and testing of our app both ESLint & Travis CI were used.

The app is currently deployed on Heroku so you can check out Skip To The Loo now!

Table of Contents

Demo

Skip to the Loo live on Heroku!

Logging In, Adding Loo, Logging Out

Adding Loo

Updating Loo Info

Updating Loo Info

Prerequisites

Should you want to create your own replica of the application, you'll need to have the following technologies and resources installed:

Installation

To review the repository of the project, you can clone the repo remotely with the following command line in your terminal

git clone https://github.com/alexastef/loo.git

If you'd like to install the app locally, you can navigate to the 'loo' directory and then follow the next steps:

Install the necessary and relevant dependencies using Node.js by running the following command:

npm install

You can then run the following command below, then go to your browser and enter: https://localhost:8080

node server.js

Usage

Whether you've accessed the app locally on your browser or if you went directly from the Heroku link, you'll be directed to the home page where you're presented with an embedded Google Maps area based on your current location and an option to "Add New Loo." If you click on the "Add New Loo" button you'll be prompted first to either sign up or log into the app.

After doing so, you're given results of places based off of your current location or any keyterm you input on the search bar that you can either add into your collection or edit loo info for those respective places.

As a user, you will be provided with some additional information about the 'loo' such as

  • Details Provided
    • Address & Contact Information
    • Time Stamp from last verfied & updated

You're also given the option to update the following critical details for the loo

  • Basic Essentials

    • Availability
    • Needs a Key
    • Gender Neutral
    • ADA-Compliant/Accessible
  • Supplies Information

    • Sink
    • Soap
    • Toilet Paper
    • Mirror
  • Overall Cleanliness Rating

You then begin to add public restrooms with relevant info to your collection that are saved to your account so that you may look back and reference for the next time you or others are on the go and need to Skip To The Loo!

License

This project is licensed under the MIT license.

Collaborators

Johnny Li

Matt Moncayo

Erin Smith

Alexa Stefankiewicz

Contributing

If you'd like to contribute to the repo, there is interest in future development in major areas for an easier UI experience, connectivity across social media platforms, etc.

If interested in contributing, please reach out to any of the collaborators via GitHub to discuss your input.

Questions

Questions or feedback-- we welcome them all! Feel free to reach out for any questions about the repo, open an issue or contact any of the collaborators above and we'll get back to you as soon as possible.

About

Skip to the Loo, a full-stack app designed to help people find restrooms when they're on the go. Built with Node, Express, MySQL, Sequelize, and Handlebars and uses map data from two Google APIs.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published