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
This Python library searches through a static directory and appends artist, title, track number, album title, duration, and genre to a .json object

This Python library searches through a static directory (needs to match your environment) and appends artist, title, track number, album title, duration, and genre to a .json object. This .json objec

Edan Ybarra 1 Jun 20, 2022
Utility/Raiding selfbot made by Shell and Roover.

Utility/Raiding selfbot made by Shell and Roover. We are open to suggestions and ideas.

Shell 2 Dec 08, 2021
Desenvolvendo as habilidades básicas de programação visando a construção de aplicativos por meio de bibliotecas apropriadas à Ciência de Dados.

Algoritmos e Introdução à Computação Ementa: Conceitos básicos sobre algoritmos e métodos para sua construção. Tipos de dados e variáveis. Estruturas

Dyanna Cruz 1 Jan 06, 2022
Howell County, Missouri, COVID-19 data and (unofficial) estimates

COVID-19 in Howell County, Missouri This repository contains the daily data files used to generate my COVID-19 dashboard for Howell County, Missouri,

Jonathan Thornton 0 Jun 18, 2022
Trashselected - Plugin for fman.io to move files that has been selected in fman to trash

TrashSelected Plugin for fman.io to move files that has been selected in fman to

1 Feb 04, 2022
Pytorch implementation of "Peer Loss Functions: Learning from Noisy Labels without Knowing Noise Rates"

Peer Loss functions This repository is the (Multi-Class & Deep Learning) Pytorch implementation of "Peer Loss Functions: Learning from Noisy Labels wi

Kushal Shingote 1 Feb 08, 2022
Материалы для курса VK Углубленный Python, весна 2022

VK Углубленный Python, весна 2022 Материалы для курса VK Углубленный Python, весна 2022 Лекции и материалы (слайды, домашки, код с занятий) Введение,

10 Nov 02, 2022
This is a simple python script for checking A/L Examination results of srilankan students

AL-Result-Checker This is a simple python script for checking A/L Examination results of srilankan students INSTALLATION [Termux] [Linux] : apt-get up

Razor Kenway 8 Oct 24, 2022
Build your own Etherscan with web3.py

Build your own Etherscan with web3.py Video Tutorial: Run it pip3 install -r requirements.txt export FLASK_APP=app export FLASK_ENV=development flask

35 Jan 02, 2023
sfgp is a package that aggregates individual scripts and notebooks, primarily written for the basic analysis tasks of genetics and pharmacogenomics data.

sfgp is a package that aggregates individual scripts and notebooks, primarily written for the basic analysis tasks of genetics and pharmacogenomics data.

Vishal Sarsani 1 Mar 31, 2022
Shows a pixel art of any Pokémon in your terminal!

pokemon-icat This script is inspired by this project, but since the output heavily depends on the font of your terminal, i decided to make a script th

ph04 52 Dec 22, 2022
Data Poisoning based on Adversarial Attacks using Non-Robust Features

Data Poisoning based on Adversarial Attacks using Non-Robust Features Usage python main.py [-h] [--gpu | -g GPU] [--eps |-e EPSILON] [--pert | -p PER

Jonathan E. 1 Nov 02, 2021
Structured, dependable legos for starknet development.

Structured, dependable legos for starknet development.

Alucard 127 Nov 23, 2022
Old versions of Deadcord that are problematic or used as reference.

⚠️ Unmaintained and broken. We have decided to release the old version of Deadcord before our v1.0 rewrite. (which will be equiped with much more feat

Galaxzy 1 Feb 10, 2022
An Advent calendar of small programming puzzles for a variety of skill sets and skill levels.

Advent of Code 2021 The Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be sol

Evan Cope 0 Feb 13, 2022
A simple countdown timer in eazy code to show timer with python

Countdown_Timer The simple CLI countdown timer in eazy code to show timer How Work First you fill the input by int-- (Enter the time in Seconds:) for

Yasin Rezvani 3 Nov 15, 2022
MIT version of the PyMca XRF Toolkit

PyMca This is the MIT version of the PyMca XRF Toolkit. Please read the LICENSE file for details. Installation Ready-to-use packages are available for

V. Armando Solé 43 Nov 23, 2022
TickerRain is an open-source web app that stores and analysis Reddit posts in a transparent and semi-interactive manner.

TickerRain is an open-source web app that stores and analysis Reddit posts in a transparent and semi-interactive manner

GonVas 180 Oct 08, 2022
MoBioTools A simple yet versatile toolkit to automatically setup quantum mechanics/molecular mechanics

A simple yet versatile toolkit to setup quantum mechanical/molecular mechanical (QM/MM) calculations from molecular dynamics trajectories.

MoBioChem 17 Nov 27, 2022
vFuzzer is a tool developed for fuzzing buffer overflows, For now, It can be used for fuzzing plain vanilla stack based buffer overflows

vFuzzer vFuzzer is a tool developed for fuzzing buffer overflows, For now, It can be used for fuzzing plain vanilla stack based buffer overflows, The

Vedant Bhalgama 5 Nov 12, 2022