GithubHelp home page GithubHelp logo

betterangels / better-angels Goto Github PK

View Code? Open in Web Editor NEW
54.0 22.0 12.0 7.43 MB

The Better Angels are a group of anarchists committed to feminist, anti-racist, anti-capitalist struggle who use direct action software development as a technique of liberatory resistance.

Home Page: https://betterangels.github.io/

anarchism antifa organizing

better-angels's Introduction

Better Angels

Shared assets for various Better Angels projects live here. :)

Got something for us? Send a pull request! We love contributions.

better-angels's People

Contributors

fabacab avatar pnppl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

better-angels's Issues

People should be able to approve requests to be on a different user's team

If User A adds User B to User A's response team, User B is not prompted or consulted in any way about whether they want to be on User A's team. This should be changed so that User B can optionally require team assignments to be approved by themselves.

Without this feature, it is possible for any user to send any other user alerts including custom messages, which will lead to abuse of the system on larger-scale installations.

BUG: Only one Team Member is described as "pending" when all should be

I ran into this bug using Safari v. 9.0, and was able to replicate it using Firefox v. 41.0.1.

I was logged into the account "rebecca". On the page titled "Choose your team members" I typed the name "fox" and hit enter. In the "Remove a team member" section, "fox (pending)" appeared. This was the behavior I expected.

When I added another team member ("frog") and hit enter, "frog (pending)" appeared in the
"Remove a team member" section below "fox". I expected this, but I also expected all other pending team members to continue to be described as "pending." However, "fox (pending)" also changed to simply "fox". "Frog" was now the only invited team member designated as "pending."

I tried this several more times and, in each case, only the most recently invited team member retained the "pending" description. None of the listed team members in the attached screenshot has accepted an invitation to join my team.

screen shot 2015-10-13 at 11 25 32 pm

Feature request: Allow users to set a pronoun preference

Definitely not MVP, but consider allowing users to set a pronoun preference in their profile, such that e-mail subjects like "rebecca wants you to join their crisis response team" could replace "their" with the user's preferred pronoun.

Provide GUI feedback while location info is gathered after activating an alert

There's some uncomfortable lag time between activating an alert and being redirected to the chat room that currently has no UI feedback. We should display a "sending an alert to your team" message with a progress spinner or something while we're waiting on the redirect info so users don't feel like "nothing happened" for the few seconds it takes to do this.

Call the app "Buoy"

Package this instance of a Better Angels-type app under the name "Buoy".

If there is any place in the app where it makes sense to use a tagline or short description, use the tagline: "Tell your friends where you are and what you need."

Consider notifying user when they accept a Join My Team invitation that is no longer active

I wanted to see what would happen if I invited another user to join My Team, but then rescinded that invitation before the invited user had responded to it. These are the steps I took:

On two different browsers, I logged in as rebecca (Firefox) and fox (Safari) respectively. Rebecca invited fox to join her team. I received an invitation e-mail, and pasted the URL into fox's browser. This took me to the "Confirm Team Membership" page where a pending invitation from rebecca was visible.

I then switched back to rebecca's browser, where fox was listed as a pending team member. I unchecked fox and hit Save Changes, removing fox "(pending)" from my team.

Finally, I returned to fox's browser, where the invitation was still visible (because I had not reloaded the page), accepted the invitation, and hit Save Changes. The page reloaded to the default "you have not been invited to join any teams" screen.

This may be confusing to users who either a) happen to have not reloaded their Team Membership page and, therefore, are still seeing invitations that have been revoked or, more likely, b) who follow a link in an e-mail referring to an invitation that has since been revoked, and are taken to a Team Membership page displaying no invitations.

If a user attempts to respond to an invitation that is no longer active, consider notifying them that "This invitation is no longer active"?

Feature request: Alert user when data entered in phone number field is not usable

I found that I was able to enter any data at all into the "Emergency SMS" field. For example, I typed "VERIZON 555.555.1234" and this was accepted. Although the field can accept any format of phone number, might be valuable to alert users when they've entered a string that will not result in them being able to receive SMS notifications.

Allow users to toggle Team Members between "real" and "fake"

Feature request: Implement a "real/fake" toggle for existing members of a user's Team. This allows the user more control over who receives alerts from them, and lets them update their alert preferences based on who they feel comfortable contacting without having to notify a given team member that their status has changed.

(Possibly worth discussing: Does it make sense to let the toggle only go one way -- i.e. from Real to Fake, but not from Fake to Real. Or is this babysitting the user too much?)

Re-label "Emergency txt (SMS)" field

Consider changing this field labeled "Emergency txt (SMS)" to "Phone Number" with descriptive text explaining this allows you to receive emergency alerts via text message (SMS).

The purpose of a field simply labeled "Emergency txt (SMS)" may be unclear to new users who are just setting up their profiles and unfamiliar with the workings of the tool. Whereas a field labeled "Phone number" makes it clear they are expected to enter their phone number.

If possible, I would also put the "Phone Company" dropdown directly underneath the "Phone Number" field rather than in the Account Management section.

"Safety Information" modal should automatically disappear when a responder enters shared chat

The shared chat implementation currently uses a tlk.io embedded chat, which means we cannot detect events that occur inside the chat from the app shell (because that would be XSS). I've asked the developers of Tlkio to see if they implemented or are willing to implement window.postMessage() for cross-origin event handling.

This issue is blocked until they either implement this feature or we implement our own chat solution. (IIRC, @vangogh72 mentioned some level of interest in possibly doing that?)

Let admins customize map view by adding resources as markers to map

When a user activates an alert they are able to see their current location on a Google Map. It would benefit many classes of emergencies for the user to see markers on the map of helpful information (maybe depending on the type of alert?) such as the locations of nearby shelters, food pantries, hospitals, planned parenthood clinics, etc.

The admin of a site shouod be able to create a map of resources independent of Buoy (Google My Maps, for instance) that can then be overlaid on top of the map in alert (and responder) view.

alerter not redirected to chat room if geolocation fails

Handle the case where no geolocation info is available from alerter. Should still redirect to chat room, send alerts to guardians, keep trying to show current position on map.

Current behavior is failure to redirct to chat room even tho alert notice is sent.

BUG: Safari does not display Available Team Member drop-down

Using Safari v. 9.0, on the Choose Your Team Members page, the only way I've been able to add/invite another user to join my team is by typing their full username into the "Add a team member" field. No drop-down appears when I click in the field, nor when I start typing in it.

Should be able to read resources like hotline numbers without activating alert

Informatuon about hotline numbers and other resources should be accessible to a user without having to activate an alert to read them.

They should also be customizable by the site admin.

Move the resources from a static HTML document to a WYSIWYG textarea option in the admin UI settings screen and include a new subpage under "My Team" to view those resources.

Privacy concerns re: Add Team Members drop-down listing all users on the system?

Not MVP but something we might want to think about for the future:

Is displaying a drop-down list of all users on the system an issue for user privacy and/or spam? Should we require a user to know something about the people they are inviting to join their Team e.g. require an e-mail address, a phone number, or at least know the full username of the person they are searching for?

Not sure how to deal with this elegantly, but not sure that we should display a complete list of all users of (a given instance of) the app to anybody who installs it. Any thoughts?

BUG: User can add non-existent members to their team

On the "Choose Your Team Members" page, when I type the name of a non-existent user into the "Add a team member" field and submit, a "blank" team member appears in my list of team members, along with a designation of "pending" and either "real" or "fake". (See attached screenshot.)

Instead, I would expect to receive an error message or some other indication that the user I have tried to add does not exist on the system.

screen shot 2015-10-13 at 11 37 17 pm

Add loveisrespect.org to hotline list

If it's not already on the list of hotline numbers etc. add the following line (contact info for the teen dating violence support website loveisrespect.org):

"Love is Respect - To speak to a supportive peer advocate call: 1.866.331.9474, text: loveis to 22522, or chat 24/7 at loveisrespect.org"

Feature Request: Provide set-up guidance to new users

As a new user of Buoy, I found being immediately dropped into the Wordpress profile screen a bit confusing -- particularly because the Admin Color Scheme and Show Toolbar options at the very top are not typical options I am used to seeing when installing a new app. (Is there any way to remove these and start the profile at the Name section?)

The first time a new user logs into Buoy, consider displaying the following text either in a pop-up or at the top of the profile page:

"Welcome to Buoy. The Buoy tool connects people in crisis with the people they trust. In order to be available to respond to others in times of need, you must tell Buoy how you can be reached in an emergency. By default, all users receive crisis alerts by e-mail. To also receive crisis alerts by SMS, please supply your phone number in the field below. To create your personal emergency response team, click the My Team button in the left sidebar."

Detect lack of 2nd factor authentication and suggest it be added

When installing Buoy, an admin should be guided to implementing security best practices, especially because they may not be technicaly savvy themselves. The NNEDV App Safety Center recommends the use of 2FA mechanisms to protect online accounts for DV victims and survivors, so we should detect the presence or absence of such additional account security means and warn the admin user if they are missing.

Map Carriers to Email Extension

Provide email to text support for the following carriers:

AT&T: [email protected]
T-Mobile: [email protected]
Verizon: [email protected]
Sprint: [email protected] or [email protected]
Virgin Mobile: [email protected]
Tracfone: [email protected]
Metro PCS: [email protected]
Boost Mobile: [email protected]
Cricket: [email protected]
Nextel: [email protected]
Alltel: [email protected]
Ptel: [email protected]
Suncom: [email protected]
Qwest: [email protected]
U.S. Cellular: [email protected]

Google API Key

The responder screen mockup uses a google API key linked to my personal google account. We should create a google account for the app and get a new key specific for the Buoy/Better-Angels app.

Feature request: Allow users to invite Team Members by e-mail address

Consider allowing users to send invites by entering the e-mail address of the person they want to add, in addition to their username. A simple way for users to search and see if a specific person they want to add is on the system, without having to know that person's full username.

BUG: Activate Alert does not send e-mail notifications to My Team

I set up the user account rebecca with a team of two real members: fox and frog. Fox's profile includes SMS contact info, frog's profile does not.

I then went to the Activate Alert screen and sent an alert with a customized message. I expected to receive both an email and, in the case of fox, an SMS with a URL for the alert. The fox account received an SMS alert with a URL. However, neither fox nor frog received an e-mail alert -- meaning that frog did not receive any alert at all.

I tried this again with the default (life-preserver) button, and several more times with both buttons. I also logged out of the rebecca account, logged back in, and tried sending an alert. Each time, I got the same results: SMS message to fox, no other notifications.

I also checked to see if my e-mail settings were working, by removing and re-adding both fox and frog to my team. For both accounts, I received e-mail notifications that "rebecca wants you to join her crisis response team." So, those accounts are able to receive notifications from the app, but they are not receiving crisis notifications by e-mail.

current incidents should be selectable from WP toolbar

When a user is involved in an active alert as either alerter or responder, the WordPress toolbar should contain a button or menu that contains buttons for each current incident available to (responded to by or activated by) the user.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.