Sign the Justice for Breonna Taylor petition! Text “FLOYD” To 55156! Email the Baltimore Police Department!
With the several injustices in our world today from racism to sexism to classism, social activism is important more than ever now. However, with so many links, emails, and numbers, it can be difficult keeping track of all of it and making sure everything related to your views gets noticed and signed.
With this problem in mind, our team created ChangeHub—an all-in-one platform to sign petitions, email representatives, and text important bots!
What it does
ChangeHub has two main points of view: users and admin.
Users are able to:
- Sign up with personal information
- Allow ChangeHub to sign, text, and email on behalf of them
- Subscribe to and view topics and sign related petitions
- Users mark off petitions to sign and service signs them all at once
- Submit petitions, emails for representatives, and texting representatives through an easy form
- View all previous petitions
Admins are able to:
- View a portal for admins to approve petitions
How we built it
For our frontend, we designed with Figma for our wireframes and mockups and React.js to create a responsive web application along with components from the Material-UI. Our backend is developed with Python and Flask for three main aspects:
- Signing Petitions: With web automation using Selenium and a ChromeDriver, we are able to mimic signing petitions on the behalf of our users. Additionally, we were able to gather all of the petitions through scraping petition sites with beautifulsoup with websites like Color of Change, a nonprofit civil rights advocacy organization in the United States
- Texting Representatives: We utilized the Twilio API to send SMS messages
- Emailing Representatives: Through the SendGrid API, we send emails to people with templates grabbed from cardd sites like the Black Lives Matter site
With important user and petition information, we stored everything into Google Firebase.
Challenges we ran into
Unfortunately, one of the biggest petition platforms does not allow programs like ChromeDrivers to mimic signing petitions.
Accomplishments that we're proud of
Although this is our first hackathon together and the first virtual event, we were still able to come up with an idea and bring it to life!