Skip to content

Hey we're a mutual aid group in Crown Heights trying to help around town. Please reach out if you want to setup your own slack app and need a hand!

Notifications You must be signed in to change notification settings

ksullivan2/mutual-aid-app

 
 

Repository files navigation

Go to developing if you want to contribute! Most folders contain a DEVELOPING guide as well.


Overview

Functionality walkthrough (dated May 17, 2020)
Technical walkthrough (dated May 17, 2020)

This is an app for doing mutual aid related tasks! It is based on airtable, and requires certain airtable fields. If you already have an airtable, or need help setting this up, feel free to reach out!

Note: this app is severly undertested! it's used in 'production', but development is rapid. YMMV.

The app can provide the following (all optional):

  1. Twilio - Support for a phone hotline that adds to airtable
  2. Slack Bot - Support for a slack bot that can:
    1. Aid in posting info from airtable to slack
    2. Aid in marking airtable from slack
  3. Web page - Supports:
    1. A map that shows open requests
    2. A tool for looking up cross streets + neighborhood zone (not provided) for an address
  4. Reimbursment system - Separate Airtable base that is used to track reimbursements

Slack-only Setup

Setup Slack workspace and create an app (if you're contributing, this serves as a development workspace):

  1. Create a Slack workspace
  2. Create your app
  3. Click the deploy button below and follow the instructions (you can skip pipeline part)

Deploy

Get your heroku app URL for slack:

  1. When Heroku finishes you can click View to go to the URL
    • It should look like https://app.name.herokuapp.com/
  2. The URL we need would be https://app.name.herokuapp.com/slack/events. Save this for later.

Finish setting up your slack app

  1. Go your slack app page (https://api.slack.com/apps/your-app-id)
  2. Make "App Home" tab like this: https://imgur.com/VSnO7iw
  3. Go to "Interativity & Shortcuts"
    • Turn on.
    • Add your full /slack/interactivity heroku URL to "Request URL"
    • Add the following under Shortcuts:
      • (Name) Volunteer Sign Up (Callback ID) volunteer-sign-up
      • (Name) Edit Post (Callback ID) edit_post
      • (Name) Post Open Request (Location) Global (Callback ID) select_delivery_needed_request
  4. Go to "Oauth and Permissions"
    • Add bot scopes: "commands", "users:read", "users:read.email" "channels:join" "channels:read" "channels:history" "channels:write" "chat:write" "chat:write.public" "groups:history" "groups:write" "groups:read" "im:write" "mpim:write" "usergroups:write" "usergroups:read"
  5. Go to "Event Subscriptions"
    • Turn on.
    • Add your full /slack/events heroku URL to "Request URL"
    • Under "Subscribe to Bot events" add "app_home_opened" permission
    • If payments airbase enabled, add "message.channels" as well

About

Hey we're a mutual aid group in Crown Heights trying to help around town. Please reach out if you want to setup your own slack app and need a hand!

Resources

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • JavaScript 94.7%
  • Python 4.3%
  • Other 1.0%