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.
Log in or sign up for Devpost to join the conversation.