Shttr

Shttr is a webapp that allows users to view and critique nearby restrooms. It is the Yelp equivalent for only bathrooms.

Inspiration

Hello! My name is Clair and I was inspired to create this application because of my personal experiences as a transwoman and the experiences of other members of the trans community. Finding the best, safest place to relieve yourself is something everyone has a right to.

Both Braxton and Jash contributed their own gusto to the team and were essential in providing more ideas and feedback.

What It Does

Primarily, shttr acts as a basic social rating system for bathrooms, as well as recording information such as type (all gender, family, men's, women's), presence of changing rooms, and times open/closed.

How We Built It

Shttr was built by separately building a JSON-based backend and connecting it via Flask to a frontend MVC utilizing a combination of Angular and Leaflet.

Challenges

The three of us have very different coding backgrounds and experiences which led to a lot of learning!

I had personally never used Flask or Leaflet before and integrating those into a cohesive backend/frontend relationship was quite the task! Both Braxton and Jash came into the project as first-year computer science students and learned Python, JSON parsing, database functionalities, and much, much more in an incredibly short amount of time.

Accomplishments

The aesthetic! I think the frontend looks pretty polished for such a short development time and add/modify/delete functions were completed too! We made great strides with login/logout functionality as well.

Learning

As mentioned above, different backgrounds required different types of learning! In general, quite a bit was new for everyone involved (Braxton and Jash came in and learned everything, which was amazing to watch).

Getting started

Prerequisites

  • Python 3
  • Flask
  • Javascript-enabled browser

Configuration

Run python server.py (contained within the app folder). Next, open index.html in any major browser (primary testing done with Google Chrome).

Usage

The first page loaded will ask for the user's location, required to show services closest to you! From there, bathrooms may be added by navigating andf clicking around the map.

Information about bathrooms can be seen when clicking on the toilet icon. Editing/deleting functions are available toward the buttom of the info drawer.

Help and about features are available in the top navigation bar. Finally, basic user functionality (registering/logging in/logging out) is available in version 0.1a.

Happy shitting!

Primary Components

  • AngularJS - Model View Control system
  • JQuery - Simple animations
  • Flask - Connect the server to the client
  • Python - Back-end development
  • Leaflet - Front-end map data

What's Next

New developments could include users' favorite lists of bathrooms, comments, user interaction, microbiome-connection, and much, much more! We're excited to see what the future holds for this little guy.

Contributing

History

  • 2 March 2019: First push.
  • 3 March 2019: Push for project presentation, alpha version 0.1.

Acknowledgements

We would just like to thank the volunteers at RevolutionUC 2019 for providing the rations we needed to develop this web-app. They provided us food, shelter, advice, and a stable wifi connection that allowed us to reach the point we're at.

License

Copyright (c) 2019-2020 Clair Kronk, Braxton Laster, and Jash Gada. All rights reserved.

Share this project:

Updates