XHacks 2021 Startup Track Winner: Be Heard. Educate, Enact, Empower. No voice left behind. (backend)

Overview

Be Heard: X Hacks 2021 Submission

Educate, Enact, Empower. No voice left behind. logo

Inspiration

To say 2020 was an eventful year would be an understatement. More than ever, social activism is at the forefront of global headlines and both social impact investing and activism are rising at astronomical rates. Because of all of this, we have created Be Heard. Harnessing natural language processing and data powered by global news syndicates, Be Heard is an information services platform that guarantees that every piece of news is easily digestible and ensures that no one’s voice goes unheard.

What it does

Introducing Be Heard. A one-stop destination for issues around the world, Be Heard is the ultimate tool to educate, emphasize, and enact on critical current events.

Focused on empowerment, our app offers two pathways for users to use our platform. ###Educate On the Educate screen, we use the Contextual Web Search API which harnesses webscraped data from the world’s largest news providers to generate a curated news feed based on a user’s interests, including a reading calendar, spotlight section, and recent headlines section. beHeard

  • First, we have a reading calendar which is intended to hold different articles, podcasts, books, and more for each day of the month.
  • Next, we have the spotlighted section, with posts created by other users that align with your interests. This is what makes our app truly special. It’s not just a news app, it’s a platform for people to have their voices heard.
  • Lastly, we have a collection of news related to the users interests as well as recent headlines. ###Enact On the enact pathway, users have a plethora of ways to use their newfound knowledge to make a difference in the world. Here are our list of features:
  • Create Spotlight: Users can pay to create and post their own articles to spread awareness on a topic they are passionate about. enact2
  • Email Representatives: Users can email their local representatives about a specific issue with a single click.
  • Sign Petitions: Users can easily find and fill out petitions by filtering by topic.
  • Generate Linktree: Users can choose various forms of resources to add to a customized Linktree. A Linktree is a common tool used by social activists to gather information all in one place. Our application makes it easy for people to participate in this.
  • Generate Infographic: Users can either input their own information or bring in outside sources and let our NLP text summarization model summarize it and then produce a shareable infographic.

How we built it

Our team decided to use React Native Expo for the frontend and Flask for our backend servers, with one hosted on AWS and MongoDB Atlas as our database.

stacked

Frontend

Our frontend was built as a React Native mobile app using Expo, capable of running on both iOS and Android mobile devices. By sending HTTP requests to our REST API on our backend, we can retrieve news articles relevant to the user.

Design Flow

figma

Backend

For handling user authorization and database management, we decided to use a Flask server which we hosted on AWS, using Amazon’s Elastic Beanstalk This server is connected to a MongoDB Atlas cluster, also hosted on the cloud, where we store user credentials and user-generated content. We also implemented JSON web tokens to authenticate users.

For hosting our ML model, we used another Flask server, this time hosted through DigitalOcean’s Droplets.

Finances

After conducting market research on possible competitors, we have concluded that Be Heard sits tight at the intersection of the Information Services Space and the Social Media Networking market, giving Be Heard a total Share of Obtainable Market of over 1 million dollars, and provides users with an unparalleled focus on activism and breadth of news. stonks

Taking our costs of operation (Cloud as a Service, Database, API integration) as well as our projected costs with a targeted Monthly Average Users of 25,000, we estimate profitability by Year 3 of operation.

cash_money

Challenges we ran into

A few hours before the deadline, our server stopped displaying information for the last two sections of our Educate page. Although this was disappointing, we can still tell you that the user could view the entire collection by clicking at the bottom. They could also see an article preview as well as a link to the complete article when they click on the image.

Accomplishments that we're proud of

Serving a NLP model through Digital Ocean Configuring our flask server and CI/CD pipeline on AWS Building a multi-layered app navigation flow Bringing a high-fidelity mockup to life

What we learned

  • React Native
  • MongoDB
  • Flask
  • AWS
  • Digital Ocean
  • Ubuntu OS

What's next for Be Heard

The Be Heard team is looking forward to completing the implementation of the features on the Enact page. These features include the petition platform, Linktree generator, and a more advanced infographic creator.

We also hope to monetize our app by having sponsored posts for the spotlight section and selling anonymized and aggregated data of what news/topics that users feel are important to them to news providers.

Most importantly, we can’t wait to see the impact this app can have on the world of social activism!

Deployment

Our deployment is at this link (must open with the Expo Go mobile app): http://exp://gc-fxb.anonymous.be-heard-frontend.exp.direct:80 expo qr code

Owner
Be Heard: XHacks 2021 Startup Track Winner
A Non profit app built on top of Frappe framework & ERPNext

Non Profit A Non profit app built on top of Frappe framework & ERPNext. People who change the world need the tools to do it! The Non Profit Modules of

Frappe 16 Nov 17, 2022
My solutions for the 2021's Advent of Code

Advent of Code 2021 My solutions for Advent of Code 2021. This year I am practicing Python 🐍 and also trying to develop my own language, Chocolate 🍫

Jakob Erzar 2 Dec 15, 2021
Fluxos de captura e subida de dados no datalake da Prefeitura do Rio de Janeiro.

Pipelines Este repositório contém fluxos de captura e subida de dados no datalake da Prefeitura do Rio de Janeiro. O repositório é gerido pelo Escritó

Prefeitura do Rio de Janeiro 19 Dec 15, 2022
Attempt at a Windows version of the plotman Chia Plot Manager system

windows plotman: an attempt to get plotman to work on windows THIS IS A BETA. Not ready for production use just yet. Almost, but not quite there yet.

59 May 11, 2022
Sacred is a tool to help you configure, organize, log and reproduce experiments developed at IDSIA.

Sacred Every experiment is sacred Every experiment is great If an experiment is wasted God gets quite irate Sacred is a tool to help you configure, or

IDSIA 4k Jan 02, 2023
Gitlab py scripts

Gitlab py scripts The code can be used to gather the list of GitHub groups/projects and the permissions of the users in those groups/projects. group/p

Roghuchi 1 Aug 29, 2022
Generate PNG filles from NFO files.

Installation git clone https://github.com/pcroland/nfopng cd nfopng pip install -r requirements.txt Usage ❯ ./nfopng.py usage: nfopng.py [-h] [-v] [-i

4 Jun 26, 2022
PyGo custom language, New but similar language programming

New but similar language programming. Now we are capable to program in a very similar language to Python but at the same time get the efficiency of Go.

Fernando Perez 4 Nov 19, 2022
💘 Write any Python with 9 Characters: e,x,c,h,r,(,+,1,)

💘 PyFuck exchr(+1) PyFuck is a strange playful code. It uses only nine different characters to write Python3 code. Inspired by aemkei/jsfuck Example

Satoki 10 Dec 25, 2022
EasyBuild is a software build and installation framework that allows you to manage (scientific) software on High Performance Computing (HPC) systems in an efficient way.

EasyBuild is a software build and installation framework that allows you to manage (scientific) software on High Performance Computing (HPC) systems in an efficient way.

EasyBuild community 87 Dec 27, 2022
A python script that will automate the boring task of login to the captive portal again and again

A python script that will automate the boring task of login to the captive portal again and again

Rakib Hasan 2 Feb 09, 2022
PatZilla is a modular patent information research platform and data integration toolkit with a modern user interface and access to multiple data sources.

PatZilla is a modular patent information research platform and data integration toolkit with a modern user interface and access to multiple data sources.

IP Tools 68 Dec 14, 2022
Un Assistente Vocale scritto in Python e altamente personalizzabile

Un Assistente Vocale scritto in Python e altamente personalizzabile

Marco 2 May 06, 2022
Tugas kelompok Struktur Data

Binary-Tree Tugas kelompok Struktur Data Silahkan jika ingin mengubah tipe data pada operasi binary tree *Boleh juga semua program kelompok bisa disat

Usmar manalu 2 Nov 28, 2022
Download and process GOES-16 and GOES-17 data from NOAA's archive on AWS using Python.

Download and display GOES-East and GOES-West data GOES-East and GOES-West satellite data are made available on Amazon Web Services through NOAA's Big

Brian Blaylock 88 Dec 16, 2022
PyToQlik is a library that allows you to integrate Qlik Desktop with Jupyter notebooks

PyToQlik is a library that allows you to integrate Qlik Desktop with Jupyter notebooks. With it you can: Open and edit a Qlik app inside a Ju

BIX Tecnologia 16 Sep 09, 2022
A program for calculating the divisor function

DivisorsFunctionCalculator A program for calculating the divisor function A script to find the "Sigma" (divisors function) of any number. To find the

1 Oct 31, 2021
Sigma coding youtube - This is a collection of all the code that can be found on my YouTube channel Sigma Coding.

Sigma Coding Tutorials & Resources YouTube • Facebook Support Sigma Coding Patreon • GitHub Sponsor • Shop Amazon Table of Contents Overview Topics Re

Alex Reed 927 Jan 08, 2023
Ningyu Jia(nj2459)/Mengyin Ma(mm5937) Call Analysis group project(Group 36)

Group and Section Group 36 Section 001 name and UNI Name UNI Ningyu Jia nj2459 Mengyin Ma mm5937 code explanation Parking.py (1) Calculate the rate of

1 Dec 04, 2021
A utility control surface for Ableton Live that makes the initialization of a Mixdown quick

Automate Mixdown initialization A script that transfers all the VSTs on your MIDI tracks to a new track so you can freeze your MIDI tracks and then co

Aarnav 0 Feb 23, 2022