The Emerald City Resource Guide (ECRG, http://www.emeraldcityresourceguide.org/) is a directory of social service organizations located in Seattle. The first hard copy of the guide was published by local non-profit, Real Change, in April, 2018, in the hopes of providing an easy reference guide for individuals who may not have access to a computer. v1 of the online version of the guide was released in January, 2019, with the intention of providing the means for updating the guide on a more frequent basis and a creating a dynamic UI for those with access to the internet.
Follow these steps to set up a local development environment:
- Install docker and docker-compose
- Install dependencies and set up the DB with
make setup
- Launch the server with
make start
and visit http://localhost:8080/
Use make db-connect
to open a psql shell inside the Docker DB container and make db-restore
to restore from a backup.
Local testing is conducted using mocha and chai. Run the tests using make test
The test file within this repo is intended to cover the server methods that transform the user inputs in the search form into a SQL query and then retrieves the corresponding records from the database.
ECRG is hosted on Fly.io (dashboard link). Steps to to access the production database:
- Install flyctl
- Run
flyctl auth login
- Run
fly postgres connect -a emerald-city-resource-guide-db
To get a dump of the DB, run ./db/fly_db_dump.sh
.
Here's how to onboard a new developer:
- Add their Github account as a collaborator to the repository: https://github.com/Real-Change/emerald-city-resource-guide/settings/access
- Invite them to join the fly.io team: https://fly.io/dashboard/emerald-city-resource-guide/team
- Add them as an owner to the Firebase account: https://console.firebase.google.com/u/1/project/emerald-city-resource-guide/settings/iam
- Embedded Google Maps and location filtering
- Node.js
- Express web application framework
- Embedded JavaScript Templates (EJS)
- Postgres database
Erin Eckerman - https://www.linkedin.com/in/erineckerman/
This project is licensed under the MIT License - see the LICENSE.md for details.
Gratitude to both Katie Comboy and Camilla Walter at Real Change for their partnership throughout the design and testing process. Thanks to Vinicio Sanchez, Jessica Lovell, and Zahra Mohamed for their input in designing the data model and wireframes. Extra big thanks to Bogdan Gheorghe for his countless code reviews and assistance in debugging.