Gaia: a chrome extension that curates environmental news of a company

Overview

Contributors Forks Stargazers Issues MIT License


Logo

Gaia - Gaia: Your Environment News Curator
Call for Code 2021

Gaia: a chrome extension that curates environmental news of a company
Explore the docs »

View Demo on YouTube · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Infrastructure
  5. Roadmap
  6. Contributing
  7. License
  8. About The Team

About The Project

Logo

Gaia is a chrome extension which curates environment news of a brand. After installing the extension, you can highlight a word containing the company name or a brand name and then you get news affiliated with it.

They can keep you updated on the environmental impact of a certain brand. Gaia helps you become a wiser consumer because you can keep tabs on these brands' impact. Gaia supports consumers, specifically internet users, to be more aware of these companies’ environmental issues.

Built With

Data Source

Getting Started

To use the production version of Gaia, install Gaia Chrome Extension to use it directly on your Chrome browser.

Get this extension for free: pending, awaiting review

To get a local copy up and running follow these simple steps.

Prerequisites

  • Python 3.7
  • Have Docker installed on your machine. Guide on installing Docker: Ubuntu, Mac or Windows
  • (Recommended for running scripts) Have pip installed on your machine. More details.

Installation

  1. Clone the repo
         git clone https://github.com/JawaBaliIBM/Gaia.git
  2. Create a Python virtual environment, and activate it
        virtualenv env
        source env/bin/activate
  3. Install the required Python packages defined in requirements.txt
         pip install -r requrements.txt
  4. To run the API, prepare the server directory with Docker Compose
         docker-compose up -d
  5. Run the server
         python manage.py runserver

Run Gaia Web Extension on Your Local

  1. After cloning the repository, open chrome browser.
  2. At the top right, click More and then More tools and then Extensions.
  3. Make sure your Developer turned on.

Developer Mode.

  1. Click Load Unpacked Button

Developer Mode.

  1. Choose web-extension on cloned repository.
  2. You have web extension run locally on your browser.

Standalone Scripts

Several standalone scripts are available for news scraping and model training purposes.

  1. guardian_scrapping_script.py - A script to scrape The Guardian news as a JSON file. The JSON format follows the data returned by The Guardian News API.
  2. file_uploader.py - A helper script to upload file objects to IBM Cloud Object Storage.
  3. nlp/train_sentiment.py - A script to train a custom sentiment model in IBM Cloud NLU. More guide on IBM Cloud NLU Custom Sentiment Model.

To run the scripts with Python, you can follow the steps below:

  1. Create a Python virtual environment, and activate it
        virtualenv env
        source env/bin/activate
  2. Install the required Python packages defined in requirements.txt
         pip install -r requirements.txt
  3. Run the necessary scripts
         python <file_name>.py

Infrastructure

Infrastructure

Gaia Chrome Extension communicates with Gaia API to retrieve news related to a brand.

Gaia API uses IBM Cloud Function to curate news from The Guardian Open Platform daily, saves them in a form of JSON file saved in IBM Object Storage, and posts a request to analyze the named-entities and sentiment about the article.

Gaia API uses a pre-trained entity model and a custom sentiment model on top of IBM Cloud NLU. The custom sentiment model is trained on approximately 250 data points, using news extracted from The Guardian Open Platform. The brand and article information is saved in IBM Cloudant.

Roadmap

See the open issues for a list of proposed features (and known issues).

roadmap

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

Distributed under the Apache 2.0 License. See LICENSE for more information.

About The Team

JavaBali Team

Fellita Candini - canfelli25 - [email protected]

May Iffah - mayiffah - [email protected]

Nur Intan Alatas - Nurintaaan - [email protected]

Valentina Artari - valentinakania - [email protected]

Project Link: Gaia

A python script to simplify recompiling, signing and installing reverse engineered android apps.

urszi.py A python script to simplify the Uninstall Recompile Sign Zipalign Install cycle when reverse engineering Android applications. It checks if d

Ahmed Harmouche 4 Jun 24, 2022
Tenda D151 & D301 - Unauthenticated configuration download

Exploit Title: Tenda D151 & D301 - Unauthenticated configuration download (login included)

Ayoub 3 Jul 14, 2022
This is a small Panel applet for the Budgie Desktop to display the battery charge of a connected Bluetooth device.

BudgieBluetoothBattery This is a small Panel applet for the Budgie Desktop to display the battery charge of a connected Bluetooth device. It uses the

Konstantin Köhring 7 Dec 05, 2022
Tensorboard plugin 3d with python

tensorboard-plugin-3d Overview In this example, we render a run selector dropdown component. When the user selects a run, it shows a preview of all sc

KitwareMedical 26 Nov 14, 2022
Dump Data from FTDI Serial Port to Binary File on MacOS

Dump Data from FTDI Serial Port to Binary File on MacOS

pandy song 1 Nov 24, 2021
A minimalist production ready plugin system

pluggy - A minimalist production ready plugin system This is the core framework used by the pytest, tox, and devpi projects. Please read the docs to l

pytest-dev 876 Jan 05, 2023
GibMacOS - Py2/py3 script that can download macOS components direct from Apple

Py2/py3 script that can download macOS components direct from Apple Can also now build Internet Recovery USB installers from Windows using dd and 7zip

CorpNewt 4.8k Jan 02, 2023
This is a simple leaderboard for 30 days of Google Cloud program for students of ASIET

30daysleaderboard #Hacktoberfest - Please don't make changes in readme file. Only improvement in the project will be accepted. Update - Now if you run

5 Oct 29, 2021
This tool helps you to reverse any regex and gives you the opposite/allowed Letters,numerics and symbols.

Regex-Reverser This tool helps you to reverse any regex and gives you the opposite/allowed Letters,numerics and symbols. Screenshots Usage/Examples py

x19 0 Jun 02, 2022
A simple armature retargeting tool for Blender

Simple-Retarget-Tool-Blender A simple armature retargeting tool for Blender Update V2: Set Rest Pose to easily apply rest pose. Preset Import/Export.

Fahad Hasan Pathik 74 Jan 04, 2023
A python package that adds "docs" command to disnake

About This extension's purpose is of adding a "docs" command, its purpose is to help documenting in chat. How To Load It from disnake.ext import comma

7 Jan 03, 2023
:art: Diagram as Code for prototyping cloud system architectures

Diagrams Diagram as Code. Diagrams lets you draw the cloud system architecture in Python code. It was born for prototyping a new system architecture d

MinJae Kwon 27.5k Jan 04, 2023
Simple GUI menu for micropython using a rotary encoder and basic display.

Micropython encoder based menu This is a simple menu system written in micropython. It uses a switch, a rotary encoder and an OLED display.

80 Jan 07, 2023
Rufus port to linux, writed on Python3

Rufus-for-Linux Rufus port to linux, writed on Python3 Программа будет иметь тот же интерфейс что и оригинал, и тот же функционал. Программа создается

10 May 12, 2022
Store Simulation

Almacenes Para clonar el Repositorio: Vaya a la terminal de Linux o Mac, o a la cmd en Windows y ejecute:

Johan Posada 1 Nov 12, 2021
gwcheck is a tool to check .gnu.warning.* sections in ELF object files and display their content.

gwcheck Description gwcheck is a tool to check .gnu.warning.* sections in ELF object files and display their content. For an introduction to .gnu.warn

Frederic Cambus 11 Oct 28, 2022
Simple cash register system made with guizero

Eje-Casher なにこれ guizeroで作った簡易レジシステムです。実際にコミケで使う予定です。 これを誰かがそのまま使うかどうかというよりは、guiz

Akira Ouchi 4 Nov 07, 2022
Xbox-Flood is for flood anything

Intruduction Installation Usage Installing Python 3 Wiki Getting Started Creating a Key Intruduction Xbox-Flood is for flooding messages (invitations

kayake 4 Feb 18, 2022
Herramienta para pentesting web.

iTell 🕴 ¡Tool con herramientas para pentesting web! Metodos ❣ DDoS Attacks Recon Active Recon (Vulns) Extras (Bypass CF, FTP && SSH Bruter) Respons

1 Jul 28, 2022
Security-related flags and options for C compilers

Getting the maximum of your C compiler, for security

135 Nov 11, 2022