The Northwest Project 2017

The Northwest Project is working to move 500+ families in Northwest Springfield Missouri out of poverty over the course of 5 years. This is a collaboration between Community Foundation of the Ozarks, Drury University, Missouri State University, and the Drew Lewis Foundation.

Purpose

Help project partners manage information related to the project.

Front-End Technologies

The front-end of this web-based application uses Bootstrap and CoffeeScript.

  • Bootstrap 3.3
  • Coffee Script 2.4
  • Coffee Rails 4.2

Back-End Technologies

Pages are server-side rendered using a Ruby on Rails backend with a PostgreSQL database.

  • Ruby 2.5
  • Rails 5.2
  • Sidekiq 5.2 (Ruby Background Processing)
  • Redis 4.0 (Ruby Caching)
  • PostgreSQL 10.3

 

Build Instructions

    You can download this entire project and run locally in four Docker containers (website, sidekiq, redis, postgres) by following these steps:
  1. Install Docker
  2. Fork the Project Source Code to your personal GitHub account
  3. Clone your personal GitHub fork to your local computer
  4. Follow Instructions in Project README file to launch local containers and populate database with sample data.
  5. Browse to website (http://localhost:3000/)

Contribution Instructions

Follow these steps if you are interested in contributing!

  1. Make sure you can build the project locally. Refer to the Build Instructions listed above.
  2. Join channel #northwestproject in Hack 4 Good Slack and introduce yourself and let us know you are interested in helping out!
  3. Review the Open Issues on GitHub and comment on an issue you are interested in helping with.

We may be able to publish new issues that are relevant to your skill level and interest in the project if you share those details when you introduce yourself in Slack.

Making Code Changes in Git

  1. Fork the GitHub Repo to your personal GitHub account
  2. Clone your personal fork of the repo to your local computer

    git clone git@github.com:YOUR-USERNAME-HERE/nwp.git

  3. Start a new Git Branch for the issue you are interested in working on (e.g. branch named “issue-3” if you are working on Issue #3).

    git checkout -b issue-3

  4. Make code changes relevant to the GitHub issue you are working on. Avoid making unrelated changes, such as reformatting a file.
  5. View Git Status to determine which files have changed.

    git status

  6. View Git Diff of each file that has changed and make sure you are happy with your changes before you submit them.

    git diff db/schema.rb
    git diff db/seeds.rb

  7. Run Git Add to stage each file that contains changes you would like to submit to the project maintainer.

    git add db/schema.rb
    git add db/seeds.rb

  8. Run Git Commit to save all of your staged files. Your commit message should include a brief (5-10 word) description of the change.

    git commit -m “Initial work related to Issue 3 (Database Seeding)”

  9. Run Git Push to upload your changes to GitHub

    git push

  10. Browse to your personal fork of the project on GitHub (e.g. https://github.com/YOUR-USERNAME/nwp/)

Summary: You made code changes related to an open issue, reviewed and saved your changes locally, and you uploaded your changes back to your personal copy of the project on GitHub. Now you are ready to share those changes with the project maintainers! 

Submitting a Pull Request in GitHub

By submitting a “Pull Request” on GitHub, you are requesting that the project maintainers “Pull” your code changes into the project.

  1. Browse to your personal fork of the project on GitHub (e.g. https://github.com/YOUR-USERNAME/nwp/)
  2. Change from the “master” branch to your issue branch (e.g. “issue-3”)
  3. Click the green “Pull Request” button
  4. Type a brief title and description of your Pull Request. Be sure your description includes a link back to the original issue you are working on (e.g. https://github.com/shannonmcmurtrey/nwp/issues/3) so that GitHub shows your Pull Request in the Issue Discussion.
  5. If you need to share more detail or a status update, post a comment in the Issue Discussion (e.g. https://github.com/shannonmcmurtrey/nwp/issues/3)
  6. Click the “Create Pull Request” button

Congratulations! You’ve submitted your changes to the project maintainers! If the maintainers cannot accept your changes as-is, they will reply to your pull request with feedback and/or change requests.

 

Dr. Shannon McMurtrey

Team Lead

Shannon is collaborating with Hack Night volunteers and Drury University students on this project.

Annual Hackathon

Our annual competition gives designers and developers an opportunity to build a simple solution for a specific well-defined community project over the course of a weekend.

Learn More

Quarterly Hack Nights

Our quarterly events give team leaders an opportunity to coordinate efforts with designers and developers on existing community projects.

Contribute to a community project with minimal time commitment, even if you are new to Hack Night.

Learn More

Ready to Code?

Get in touch, or RSVP for the next Hack Night!