From 094488ca6782fe49ac34eac3640882d628eeffcf Mon Sep 17 00:00:00 2001 From: Brooke Kuhlmann Date: Wed, 18 Sep 2019 20:19:14 -0600 Subject: [PATCH 1/3] Added Tocer gem MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Will allow us to maintain a Table of Contents, with low effort, for the project README. 🎉 [Documentation](https://github.com/bkuhlmann/tocer) --- Gemfile | 2 ++ Gemfile.lock | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/Gemfile b/Gemfile index cef641a6..bca8ee9c 100644 --- a/Gemfile +++ b/Gemfile @@ -73,5 +73,7 @@ group :development do gem 'spring' gem 'spring-commands-rspec' gem 'spring-watcher-listen', '~> 2.0' + gem 'tocer', '~> 9.1' gem 'web-console', '~> 3.0' end + diff --git a/Gemfile.lock b/Gemfile.lock index 13470b45..33342e73 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -248,6 +248,7 @@ GEM ffi (~> 1.0) rdoc (4.3.0) redis (3.3.5) + refinements (6.3.1) responders (3.0.0) actionpack (>= 5.0) railties (>= 5.0) @@ -287,6 +288,9 @@ GEM ruby-progressbar (1.10.0) ruby_dep (1.5.0) ruby_http_client (3.3.0) + runcom (5.0.2) + refinements (~> 6.0) + xdg (~> 3.0) safe_yaml (1.0.5) sass (3.7.3) sass-listen (~> 4.0.0) @@ -344,6 +348,10 @@ GEM thread_safe (0.3.6) tilt (2.0.9) timecop (0.9.1) + tocer (9.1.1) + refinements (~> 6.0) + runcom (~> 5.0) + thor (~> 0.20) turbolinks (5.2.0) turbolinks-source (~> 5.2) turbolinks-source (5.2.0) @@ -367,6 +375,7 @@ GEM websocket-extensions (>= 0.1.0) websocket-extensions (0.1.3) will_paginate (3.1.6) + xdg (3.0.2) xpath (3.2.0) nokogiri (~> 1.8) @@ -429,6 +438,7 @@ DEPENDENCIES sprockets textacular (~> 5.0) timecop + tocer (~> 9.1) turbolinks (~> 5.x) uglifier web-console (~> 3.0) From 865b00eef416b43a54764f83174048a481a5920c Mon Sep 17 00:00:00 2001 From: Brooke Kuhlmann Date: Wed, 18 Sep 2019 20:24:29 -0600 Subject: [PATCH 2/3] Added Tocer Rake support Provides a convenient Rake task for auto-updating the README Table of Contents. Here's how to find it: rake -T | grep toc ...and here's how to use it: rake toc The development environment guard was put in place in order to not accidentally attemp to load this Rake task in a non-development environemnt so as not to cause issues with *test* or *production* environments (as the gem wouldn't be loaded for those environments either). --- README.md | 8 ++++++++ Rakefile | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/README.md b/README.md index ef1438c1..e8291fb0 100644 --- a/README.md +++ b/README.md @@ -182,6 +182,14 @@ The data is refeshed occassionally, but activities/accompaniments are likely to We are using Skylight for performance monitoring. [![View performance data on Skylight](https://badges.skylight.io/status/jaU6phtJKOvV.svg)](https://oss.skylight.io/app/applications/jaU6phtJKOvV) +## Maintenance + +When making changes to the README of this project, make sure to run the following: + + rake toc + +This will ensure the Table of Contents for this project is properly updated. + ## Contributing 1. Add a comment on your chosen Github issue to let other contributors know that you have 'claimed' it. 2. Fork the repo and download a clone of the forked repo: https://guides.github.com/activities/forking/ diff --git a/Rakefile b/Rakefile index f7a26dda..85cefd7a 100644 --- a/Rakefile +++ b/Rakefile @@ -4,3 +4,11 @@ require File.expand_path('config/application', __dir__) Rails.application.load_tasks + +if Rails.env.development? + begin + require "tocer/rake/setup" + rescue LoadError => error + puts error.message + end +end From 25dcd3212438ec2bf9c224d59b4803a44ce210fa Mon Sep 17 00:00:00 2001 From: Brooke Kuhlmann Date: Wed, 18 Sep 2019 20:33:45 -0600 Subject: [PATCH 3/3] Added README Table of Contents MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every project needs a good README. Even better, every good README needs a Table of Contents. 🎉 This will allow newcomers to the project to get up-to-speed with quick navigation. This was generated, automatically, by running: rake toc --- README.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/README.md b/README.md index e8291fb0..dc9b09d5 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,39 @@ # New Sanctuary Coalition + + +## Table of Contents + + - [What are we building?](#what-are-we-building) + - [Getting setup](#getting-setup) + - [System Dependencies](#system-dependencies) + - [Environment Variables](#environment-variables) + - [Using Docker to Run the Application (optional)](#using-docker-to-run-the-application-optional) + - [Ruby Dependencies](#ruby-dependencies) + - [Database installation](#database-installation) + - [1. Mac OS](#1-mac-os) + - [2. All non-Mac OS](#2-all-non-mac-os) + - [Database setup](#database-setup) + - [Running the test suite](#running-the-test-suite) + - [Running the App Locally](#running-the-app-locally) + - [User Roles](#user-roles) + - [Regional Admin (has access to all communities within their regions)](#regional-admin-has-access-to-all-communities-within-their-regions) + - [Community Admin Role (has access to everything scoped to their Community)](#community-admin-role-has-access-to-everything-scoped-to-their-community) + - [Community Volunteer Role (has limited access to their community)](#community-volunteer-role-has-limited-access-to-their-community) + - [Community Accompaniment Leader Role (only applicable to Primary communities)](#community-accompaniment-leader-role-only-applicable-to-primary-communities) + - [Remote Clinic Lawyer Role](#remote-clinic-lawyer-role) + - [How are we building it?](#how-are-we-building-it) + - [Test Coverage!](#test-coverage) + - [Staging App](#staging-app) + - [Performance Monitoring](#performance-monitoring) + - [Maintenance](#maintenance) + - [Contributing](#contributing) + - [Code of Conduct](#code-of-conduct) + - [Questions?](#questions) + - [Contributors](#contributors) + + + ## What are we building? The New Sanctuary Coalition is a network of congregations, organizations, and individuals standing publicly in solidarity with families and communities resisting detention and deportation. This internal database software facilitates NSC's core programs and allows them to operate at increasing scale.