MCPcopy Index your code
hub / github.com/J0SAL/Decentralized-Expense-Tracker

github.com/J0SAL/Decentralized-Expense-Tracker @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
60 symbols 183 edges 42 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

standnote

:milky_way: Tracking Expenses Securely!

License: MIT Open Source Love

Jarvis is A web application backed by the power of Decentralization! The motive of the application is to assist the user in managing and maintaining his/her transactions. A transaction can be either in the form of income or expense. This application provides visualizations in the form of graphs giving users the ability to track by visualizing his/her expenses over a period of time. The application provides the functionality to export transactions in an Excel file. The user can also add transactions through voice commands with a simple click of a button. In addition, all data that the user generates is stored on the blockchain in a decentralized manner powered by Ethereum, which prevents the risks of illegal tampering with the data.

:snowflake: Features:

  • Data Security
  • Graphical Visualization
  • Top Diversifications
  • Exporting Data to Excel
  • Voice Recognition

:snowflake: Demo

  • Website https://jarvis.on.fleek.co/ or https://your-jarvis.vercel.app/

  • Video https://youtu.be/2-cFY_AJvGU

:hammer_and_wrench: Technology Stack

  • Website TypeScript Next JS React Bootstrap Chart.js

  • Backend Solidity Ethereum Hardhat 

  • Hosting Fleek  Goerli Etherscan  Alchemy 

:snowflake: ScreenShots

  1. Overview

  2. Input form

  3. Current Balance and Transaction Overview
  4. drawing

  5. Transactions

  6. List of Transaction sorted by date

  7. Download Transaction Option
  8. Graphical Analysis of Incomes & Expenses
  9. drawing

  10. Performance

  11. Line Graph for analyzing transactions throughout the year

  12. drawing

  13. Diversification

  14. Graphical Analysis of Top Incomes and Expenses

  15. drawing

:runner: Local setup - Frontend

Before starting :checkered_flag:, you need to have Git and Node installed.

# Clone this repository
$ git clone https://github.com/J0SAL/Decentralized-Expense-Tracker.git
# Go into the repository
$ cd Decentralized-Expense-Tracker
$ cd frontend
# Install Dependencies
$ npm install
# Run Application
$ npm run dev
# The server will start at <http://localhost:3000>

:runner: Local setup - Backend

Before starting :checkered_flag:, you need to have Git and Node installed.

# Clone this repository
$ git clone https://github.com/J0SAL/Decentralized-Expense-Tracker
# Go into the repository
$ cd Decentralized-Expense-Tracker
$ cd backend
# Install dependencies
yarn
# Code Compile
yarn hardhat compile
# testing (optional)
yarn hardhat test
# Run the nodes (*terminal-1*)
yarn hardhat node
# Deploy contract to localhost (*terminal-2*)
yarn hardhat deploy --network localhost

To run this project, you must add the following environment variables to your .env file inside your backend folder.

Environment Variables

GOERLI_RPC_URL=<ALCHEMY_URL> # (https://www.alchemy.com/)

PRIVATE_KEY=<YOUR_ACCOUNT_PRIVATE_KEY> # (https://www.alchemy.com/)

ETHERSCAN_API_KEY=<YOUR_KEY> # (https://goerli.etherscan.io/)

UPDATE_FRONT_END=true # (true: dynamically update ABI and contract address frontend)

:cowboy_hat_face: Contributors

Extension points exported contracts — how you extend this code

contractAddressesInterface (Interface)
(no doc)
frontend/context/DataContext/dataState.tsx
networkConfigInfo (Interface)
(no doc)
backend/helper-hardhat-config.ts

Core symbols most depended-on inside this repo

updateUI
called by 5
frontend/context/DataContext/dataState.tsx
formatDate
called by 3
frontend/utils/formatDate.tsx
handleSuccess
called by 3
frontend/context/DataContext/dataState.tsx
handleError
called by 3
frontend/context/DataContext/dataState.tsx
handleNewNotification
called by 2
frontend/context/DataContext/dataState.tsx
handleDelete
called by 1
frontend/components/transactions/TransactionList.tsx
getSpeech
called by 1
frontend/components/overview/InputForm.tsx
createTransaction
called by 1
frontend/components/overview/InputForm.tsx

Shape

Function 58
Interface 2

Languages

TypeScript100%

Modules by API surface

frontend/context/DataContext/dataState.tsx13 symbols
frontend/components/overview/InputForm.tsx5 symbols
frontend/utils/formatDate.tsx3 symbols
frontend/pages/index.tsx3 symbols
backend/deploy/02-deploy-frontend.ts3 symbols
frontend/utils/exportPdf.tsx2 symbols
frontend/utils/exportExcel.tsx2 symbols
frontend/components/transactions/TransactionList.tsx2 symbols
frontend/components/transactions/DownloadTransactions.tsx2 symbols
frontend/components/top-performers/TopIncome.tsx2 symbols
frontend/utils/common.tsx1 symbols
frontend/pages/api/hello.ts1 symbols

For agents

$ claude mcp add Decentralized-Expense-Tracker \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact