eputnam / latrine Goto Github PK
View Code? Open in Web Editor NEWWeb app for finding hygiene resources in Portland, OR
Web app for finding hygiene resources in Portland, OR
Create a unique_together
constraint for the lat
and lng
fields. Add it to the Meta
class on the Place
model. This will prevent duplicate entries.
Create a Dockerfile
for the Django app (development mode).
Get the same icons from the filters bar to display on the map at each datapoint of that type.
If a Place has multiple resources, show those icons in a row in a single "comment bubble".
Find an icon representing bathrooms that we can legally use for this project (or create one from scratch if you can). Upload it to latrine_django/frontend/src/images
.
Create a Pin component representing bathrooms. Make an API call to grab the data. Render pins on the map.
Each Place on the map will have Resources listed as icons (assuming resource type is checked for display by user).
Each Resource should have a tiny summary beneath the icon of feedback: thumbs-up with count and thumbs down with count.
Find or create thumbs-up and thumbs-down icons for voting on each resource displayed on the map.
They should be simple and easy to understand for people with disabilities or those who face a variety of barriers to computer use. Upload them to latrine_django/frontend/src/images
.
A row of filters with clear icons will show across the top of the page.
This row of filters will display at all times.
Each icon will show with a checkbox next to each reflect whether or not they are checked.
Filters will initially display unique sets of sample data.
Note:
Filters will later be connected to unique API endpoints.
We will need a logo at some point. Upload the image file to latrine_django/frontend/src/images
.
The users should be able to show / hide pins depending on which checkboxes are checked.
Find or create clear icons to represent:
They should be simple and easy to understand for people with disabilities or those who face a variety of barriers to computer use. Upload them to latrine_django/frontend/src/images
.
Remove the call from Map.js
and implement it in the Django backend. Save the data into our database.
Create Footer.js
and Footer.css
at the bottom of the page. It can contain things like:
Resize the map if necessary.
Check out react-bootstrap - it might be very helpful for creating a responsive footer looking good on any screen.
Create a navigation bar at the top by adding Navbar.js
and Navbar.css
. It might contain a project name and logo (once we have them) and a menu. It would also be nice to add a brief explanation of what this website is all about. Resize the map if necessary.
Check out react-bootstrap - it might be very helpful for creating a responsive navigation bar looking good on any screen.
Install django-cors-headers
, update settings.py
and requirements.txt
accordingly. Remove all manual configurations that were in the code previously.
The following changes will make our models more consistent with the RefugeRestrooms public API.
Add the following fields to the Resource model:
All of these fields can be empty/blank and none of them is required.
Remove the "icon_type" field from the Feedback model. Add the following instead:
Test the new fields by adding them to the model instance in tests.py
.
Find a way to access the user's current coordinates and show the location on the map.
Change the way our Admin page represents the models.
__str__()
method of the Place
model to include only organization
and address
fields in the title.__str__()
method to the Resource
model and display the place
and facility_type
fields in the title.__str__()
method to the Feedback
model and display just the resource
field.Find a way to sort all entries in alphabetical order (probably by adding a Meta
class to each model).
Similar to Google maps in style but simpler.
A user click on an icon opens a sidebar.
Sidebar displays the Resources and Place information including photo, address, phone, comments, etc.
Add a progress indicator to the Map element, to notify users that the map is loading (in case there are any delays). We can use react-loading or any similar package.
Add an admin panel to the project. Create /admin
route. Set up temporary login and password for development.
See the official docs: https://docs.djangoproject.com/en/2.0/ref/contrib/admin/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.