Ujayata / CarbonFootprintAssistant

Carbon footprint

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Carbon Footprint Assistant and Tracker

Overview

Welcome to the Carbon Footprint Assistant and Tracker, a very powerful and versatile tool that is designed to help users track and manage their carbon emissions. In line with the Sustainable Development Goals, this application goes beyond simple calculations and tracking by offering personalized recommendations, secure data storage, historical insights, detailed reports, and many more!

Main Features

  • Internet Identity for secure login on the ICP
  • Calculate emissions for various activities.
  • Provide personalized recommendations to users.
  • Securely store user data.
  • Retrieve historical emissions data.
  • Generate comprehensive reports.
  • Compare user emissions with benchmark data
  • Generate User Settings

Table of Contents

  1. Getting Started
  2. Functions
  3. Data Structures

Getting Started

Prerequisites

Follow these instructions from the Azle Book to install all the required tools and set up your environment. You can skip this step if you have already installed the required tools. After you have installed the required tools, you can move on to the next step.

Installation

  1. Clone the repository:
    https://github.com/Nimakra/CarbonFootprintAssistant.git
    cd CarbonFootprintAssistant
    
  2. Install dependencies:
    npm install
    
  3. Start the local replica:
    dfx start --clean --background
    
  4. Deploy the canister locally:
    dfx deploy
    

Main Functions:

Calculate Emissions

Calculates the emissions for a specific activity and stores the record securely.

Get Total Emissions

Retrieves the total emissions for a user.

Compare Emissions

Compares user emissions with benchmark data.

Get Personalized Recommendations

Gets personalized recommendations based on the user's emission activity.

Generate Report

Generates a very comprehensive report for a user that includes the total emissions and personalized recommendations.

Get Emissions by Activity Type

Retrieves the emission records for a user based on the activity types of that user.

Data Structures:

  • EmissionRecord: A record of emissions for a specific activity.
  • UserData: Stores user information.
  • UserSettings: Holds user-specific settings.
  • EnvironmentalFactors: Records environmental factors that affect emissions.
  • ActivityType: Describes different types of activities that contribute to emissions.
  • UserActivityHistory: Maintains a history of emissions for each user.
  • BenchmarkData: Compares user emissions with benchmark data

Happy Coding!

About

Carbon footprint


Languages

Language:JavaScript 97.3%Language:Rust 2.3%Language:TypeScript 0.4%