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

Program Input Nilai Mahasiswa Menggunakan Fungsi

PROGRAM INPUT NILAI MAHASISWA MENGGUNAKAN FUNGSI Nama : Maulana Reza Badrudin Nim : 312110510 Matkul : Bahas Pemograman DESKRIPSI Deklarasi dicti

Maulana Reza Badrudin 1 Jan 05, 2022
Helps to arrange nodes

Relax brush for nodes, helps to arrange nodes easier.

336 Dec 15, 2022
Edorado93 - Unraveling a Rockstar! -- Too much? Fine, Unraveling a humble programmer then?

Hi, I'm Sachin Malhotra ( ⛄ 💻 🎃 🍺 ) Let me set the records straight. Roger Federer is the GOAT and I will not hear otherwise! Now that we have that

Sachin Malhotra 7 Dec 25, 2022
A series of basic programs written in Python

Primeros programas en Python Una serie de programas básicos escritos en Python

Madirex 1 Feb 15, 2022
A python script providing an idea of how a MindSphere application, e.g., a dashboard, can be displayed around the clock without the need of manual re-authentication on enforced session expiration

A python script providing an idea of how a MindSphere application, e.g., a dashboard, can be displayed around the clock without the need of manual re-authentication on enforced session expiration

MindSphere 3 Jun 03, 2022
Flask html response minifier

Flask-HTMLmin Minify flask text/html mime type responses. Just add MINIFY_HTML = True to your deployment config to minify HTML and text responses of y

Hamid Feizabadi 85 Dec 07, 2022
Simple calculator with random number button and dark gray theme created with PyQt6

Calculator Application Simple calculator with random number button and dark gray theme created with : PyQt6 Python 3.9.7 you can download the dark gra

Flamingo 2 Mar 07, 2022
Datamol is a python library to work with molecules.

Datamol is a python library to work with molecules. It's a layer built on top of RDKit and aims to be as light as possible.

datamol 276 Dec 19, 2022
Identify unused production dependencies and avoid a bloated virtual environment.

creosote Identify unused production dependencies and avoid a bloated virtual environment. Quickstart # Install creosote in separate virtual environmen

Fredrik Averpil 7 Dec 29, 2022
Kubernetes-native workflow automation platform for complex, mission-critical data and ML processes at scale. It has been battle-tested at Lyft, Spotify, Freenome, and others and is truly open-source.

Flyte Flyte is a workflow automation platform for complex, mission-critical data, and ML processes at scale Home Page · Quick Start · Documentation ·

Flyte 3k Jan 01, 2023
Быстрый локальный старт

Быстрый локальный старт

Anton Ogorodnikov 1 Sep 28, 2021
Data and analysis relating to the 5.8M Melbourne quake of 2021

quake2021 Data and analysis relating to the 5.8M Melbourne quake of 2021 Monash University Woodside Living Lab Building The building is located here T

Colin Caprani 6 May 16, 2022
A short course on Julia and open-source software development

Advanced Scientific Computing: producing better code This course is taught as a 6-session "nanocourse" at Washington University in St. Louis. See the

Tim Holy 230 Jan 07, 2023
Scientific Programming: A Crash Course

Scientific Programming: A Crash Course Welcome to the Scientific Programming course. My name is Jon Carr and I am a postdoc in Davide Crepaldi's lab.

Jon Carr 1 Feb 17, 2022
Just messing around with AI for fun coding 😂

Python-AI Projects 🤖 World Clock ⏰ ⚙︎ Steps to run world-clock.py file Download and open the file in your Python IDE. Run the file a type the name of

Danish Saleem 0 Feb 10, 2022
API development made easy: a smart Python 3 API framework

appkernel - API development made easy What is Appkernel? A super-easy to use API framework, enabling API creation from zero to production within minut

156 Sep 28, 2022
LibreMind is a free meditation app made in under 24 hours. It has various meditation, breathwork, and visualization exercises.

libreMind Meditation exercises What is it? LibreMind is a free meditation app made in under 24 hours. It has various meditation, breathwork, and visua

1 May 24, 2022
Osu statistics right on your desktop, made with pyqt

Osu!Stat Osu statistics right on your desktop, made with Qt5 Credits Would like to thank these creators for their projects and contributions. ppy, osu

Aditya Gupta 21 Jul 13, 2022
Manage Procfile-based applications

Foreman Manage Procfile-based applications Installation $ gem install foreman Ruby users should take care not to install foreman in their project's G

David Dollar 5.8k Jan 03, 2023
C++ Environment InitiatorVisual Studio Code C / C++ Environment Initiator

Visual Studio Code C / C++ Environment Initiator Latest Version : v 1.0.1(2021/11/08) .exe link here About : Visual Studio Code에서 C/C++환경을 MinGW GCC/G

Junho Yoon 2 Dec 19, 2021