{"id":45658882,"url":"https://github.com/codeforboston/harm-reduction","last_synced_at":"2026-02-24T08:57:55.661Z","repository":{"id":67264250,"uuid":"261619542","full_name":"codeforboston/harm-reduction","owner":"codeforboston","description":null,"archived":false,"fork":false,"pushed_at":"2024-11-19T01:27:56.000Z","size":709,"stargazers_count":6,"open_issues_count":1,"forks_count":6,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-10-08T18:47:11.217Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codeforboston.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"custom":"https://www.codeforboston.org/donate/"}},"created_at":"2020-05-06T01:10:47.000Z","updated_at":"2023-07-15T08:56:42.000Z","dependencies_parsed_at":"2025-04-18T19:49:28.208Z","dependency_job_id":"36d9b768-4fef-4548-99b2-a55b5931a3ce","html_url":"https://github.com/codeforboston/harm-reduction","commit_stats":{"total_commits":126,"total_committers":9,"mean_commits":14.0,"dds":0.7222222222222222,"last_synced_commit":"6a53543edfa611ff11ae963d58878f6dd258fdd0"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/codeforboston/harm-reduction","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fharm-reduction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fharm-reduction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fharm-reduction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fharm-reduction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codeforboston","download_url":"https://codeload.github.com/codeforboston/harm-reduction/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codeforboston%2Fharm-reduction/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29777484,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T04:54:30.205Z","status":"ssl_error","status_checked_at":"2026-02-24T04:53:58.628Z","response_time":75,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-24T08:57:54.634Z","updated_at":"2026-02-24T08:57:55.649Z","avatar_url":"https://github.com/codeforboston.png","language":"JavaScript","funding_links":["https://www.codeforboston.org/donate/"],"categories":[],"sub_categories":[],"readme":"# Harm Reduction\n\n[![Build Status](https://travis-ci.org/codeforboston/harm-reduction.svg?branch=main)](https://travis-ci.org/codeforboston/harm-reduction)\n\n[Demo App](https://cfb-harm-reduction.web.app/). Create your own account or use this demo account: Username `test@test.com`, Password `password1`\n\n## About the Project\n\nWe are developing a tool for the communities of Chelsea, Revere, Saugus, and Winthrop to improve multi-sector and multi-jurisdictional coordination for outreach, response, and recovery to overdoses. We will do this by improving the efficiency of existing systems, speeding up access to critical data, and aiding in cross-jurisdictional communication, in order to help these four communities save lives.\n\n## About our Partner\n\nOur partner in the project is the City of Revere Substance Use Disorder Initiatives (SUDI) office. They are working with three other communities – Chelsea, Saugus and Winthrop – on fulfilling a newly-provided grant to scale up their existing overdose response outreach programs. The project that we create will ultimately take into account the workflows of all four communities and would be shared amongst them to meet all of their needs.\n\nThe SUDI office offers support and resources as well as ongoing care in these communities via direct outreach with individuals who have experienced a nonfatal overdose.\n\n## Contact Us\n\n[cfb-harmreduction@codeforboston.org](mailto:cfb-harmreduction@codeforboston.org)\n\n## Important Links\n\n[Welcome Document](https://docs.google.com/document/d/1_yO1GpPvAFnRMpydOWtpd19yDq7Tr0t0ZJdet0WwJpY/edit?usp=sharing)\n\n[Trello Team Invitation](https://trello.com/invite/harmreduction5/a5e5db4b0884d3571a19fbc34a01bd85) - This holds all of our trello boards and will allow you access to the boards below\n\n[Trello Sprint Board](https://trello.com/b/E93Cmx9n/harm-reduction) - This tracks work items\n\n[Trello Roadmap Board](https://trello.com/b/V3pZZWe1/harm-reduction-roadmap) - This holds our long-term planning info\n\n[Google Meet Room](http://www.codeforboston.org/rooms/harmreduction)\n\n[Shared Google Drive Folder](https://drive.google.com/drive/folders/14Q1e3VCWJSqldykqSxwEAwAdSq6dMnl3?usp=sharing)\n\n## Getting Started\n\n1. Join us on [Slack](http://slack.codeforboston.org) at #harm-reduction\n2. Join our [Trello team](https://trello.com/invite/harmreduction5/4a6466181478029467025ae1cd685b1f)\n3. Request access to our Google Drive Folder (instructions [here](https://docs.google.com/document/d/1_yO1GpPvAFnRMpydOWtpd19yDq7Tr0t0ZJdet0WwJpY/edit#heading=h.sve3pgxt3iph))\n4. Jump into our Google Meet Room and hang out with us!\n\n### Prerequisites\n\n#### Node\n\nIf you don't have nodejs installed, [install it](https://nodejs.org/en/download/). If you don't know, do `node --version` in your terminal/command prompt. If you don't get a number, you don't have it.\n\n#### Git and Github\n\nIf you're new to github check out [Github Guide, Hello World](https://guides.github.com/activities/hello-world/) to make an account and get started with Github and [How to: fork a repo](https://help.github.com/articles/fork-a-repo/) to learn how to fork a repo.\n\n### Setup\n\n1. Fork the repository: On GitHub, navigate to the [repository](https://github.com/codeforboston/harm-reduction). In the top-right corner of the page, click Fork.\n2. On GitHub, navigate to your fork of the harm-reduction repository. In the Clone with HTTPs section, click to copy the clone URL for the repository.\n3. Clone your fork: In your terminal type `git clone`, paste the URL you copied and press enter. In your terminal/command prompt cd (change directory) into the new folder. Inside the directory:\n\n```\ngit clone \\\nhttps://github.com/YOUR-USERNAME/harm-reduction.git\ncd harm-reduction\n```\n\n4. Add the harm-reduction repository as a remote to your fork and fetch its branch information:\n\n```\ngit remote add upstream \\\nhttps://github.com/codeforboston/harm-reduction.git\ngit fetch upstream\n```\n\n5. Install dependencies\n\n```\nnpm install\n```\n\n6. (Optional) Enable pre-push Git hooks. This will lint and test your code when you run `git push`. It is useful to catch errors early, before code review. If you doin't feel comfortable fixing broken tests, you should skip this step. In your `.bashrc` or `.bash_profile`, add this line:\n\n```\nexport RUN_HARM_REDUCTION_GIT_HOOKS=1\n```\n\n### Running the App\n\n- In your terminal/command prompt run `npm start` to start the app. It will open automatically in a browser window.\n\n- To stop the local server press ctrl + c in your terminal\n\n### Contributing\n\nTo contribute a feature:\n\n1. Claim a card in the Todo column on Trello\n2. Create a feature branch in your fork. Here we call it MY-FEATURE, but you should name your branch after the feature you're implementing, like participants-table\n\n```\ngit checkout main\ngit checkout -b MY-FEATURE\ngit push --set-upstream origin MY-FEATURE\n```\n\n3. Make your changes in your feature branch\n4. Upload your changes to your fork\n\n```\ngit push origin MY-FEATURE\n```\n\n5. [Open a pull request](https://github.com/codeforboston/harm-reduction/compare) to merge your feature branch into codeforboston's main branch. Link to the Trello card in your PR description.\n6. Respond to comments in the pull request conversation\n7. Once all checks pass and someone approves, merge the pull request!\n\n### Updating\n\nTo learn more about keeping your fork up to date view this [article](https://help.github.com/articles/syncing-a-fork/). When there is an update, in your terminal inside your local repo:\n\n```\ngit checkout main\ngit pull upstream main\n```\n\nThis will update your fork's main branch to match upstream. Then, to update your feature branch, run:\n\n```\ngit checkout MY-FEATURE\ngit merge main\n```\n\nIf there is a merge conflict that cannot be resolved automatically, the output from the `git pull` command will read: \"Automatic merge has failed; fix conflicts and then commit the result.\" For more information, read this [article](https://help.github.com/articles/resolving-a-merge-conflict-using-the-command-line/).\n\n**REMEMBER:** After pulling in updates and resolving any merge conflicts, run the following in terminal, which will install any new dependencies:\n\n```\nnpm install\n```\n\n## Testing\n\nWe use Jest for DOM and unit tests. Run `npm test` to get started. Tests run automatically when a pull request is opened.\n\n## CI/CD Setup\n\nWe use [Travis](https://travis-ci.org/github/codeforboston/harm-reduction) for automated testing and deployment.\n\nTests run on all branches and for pull requests. On main, after tests pass, we deploy the [site](https://cfb-harm-reduction.web.app/) using Firebase.\n\nThe main Firebase project, where the demo is hosted, is [cfb-harm-reduction](https://console.firebase.google.com/project/cfb-harm-reduction). [cfb-harm-reduction-dev](https://console.firebase.google.com/project/cfb-harm-reduction) is used for development. Both use the Spark plan, which enforces free limits on usage.\n\nThe deployment is configured with environment variables set in [Travis settings](https://travis-ci.org/github/codeforboston/harm-reduction/settings):\n\n- `FIREBASE_PROJECT`: The name of the firebase project to deploy to.\n- `FIREBASE_TOKEN`: The token used to authenticate with Firebase, generated by `firebase login:ci`. The user that generates the token must have permission to deploy to the firebase project.\n\n## Tech Stack\n\n- [Reactjs](https://facebook.github.io/react/docs/react-api.html)\n- [Bootstrap](https://react-bootstrap.github.io/)\n- [Firebase](https://firebase.google.com/docs/guides) Authentication, Firestore, and Hosting\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeforboston%2Fharm-reduction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodeforboston%2Fharm-reduction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeforboston%2Fharm-reduction/lists"}