An open API service indexing awesome lists of open source software.

https://github.com/rohitroy-github/byteverse24-vite-project-evault

A modernized blockchain based eVault storage solution for the Indian Judiciary made using Vite.
https://github.com/rohitroy-github/byteverse24-vite-project-evault

Last synced: 3 months ago
JSON representation

A modernized blockchain based eVault storage solution for the Indian Judiciary made using Vite.

Awesome Lists containing this project

README

        

Project E-Vault (EVM Based)

Description: A modernized blockchain(EVM) based eVault storage solution for the Indian Judiciary made using ViteJS and powered by IPFS.

Theme: Law and Justice | Open Innovation

Track: Web3 - Blockchain | Web3/Ethereum Track | Web Development

Snapshots from the project :



Currently, the app can be tested on Localhost (Hardhat) & Sepolia (EVM) test network using Alchemy endpoint.

E-Vault Features :


  • Registering clients

  • Registering lawyers

  • Registering judges

  • Registering legal cases

  • Login system for clients, lawyers & judges using Aadhar UID

  • Updating case progress by allocated judges

  • Automatic / Random allocation of judges

  • Uploading case documents to IPFS & keeping case records by chosen case lawyers

  • Fetching basic case information using caseIDs by public

  • Metamask wallet integration and usage for access authorization

Tech Stack :

Frontend :


  • Vite JS

  • Tailwind CSS

  • React Toastify

  • React Charts

  • Shadcn UI

Backend :


  • Node JS

  • Hardhat Development Environment

  • Metamask Wallet

  • Ethers JS

  • Alchemy

  • Pinata IPFS

Guide for testing on local hardhat network :

Environment variables :


  • Create a new .env file inside [blockchain-hardhat] folder taking reference from .env.example file inside the same.

Backend :

Terminal 1:


  • Run (Move inside [blockchain-hardhat] folder): cd blockchain-hardhat

  • [ONLY ONCE] Run (Package installations): npm install

  • Run (Running Hardhat node locally): npx hardhat node

Terminal 2:


  • Run (Move inside [blockchain-hardhat] folder): cd blockchain-hardhat

  • [OPTIONAL] Run (Running tests): npx hardhat test

  • Run (Running deployment script for Localhost): npx hardhat run scripts/deploy_fetchCaseDetailsByAClient.js --network localhost

  • [OPTIONAL -> ONLY FOR SEPOLIA] Run (Running deployment script for Sepolia): npx hardhat run scripts/deploy_fetchCaseDetailsByAClient.js --network sepolia

Update the [backend-config.json] file inside /frontend-vite with the updated contract-address under "31337" "address" feild fetched from Terminal 2.

[OPTIONAL -> ONLY FOR SEPOLIA] Update the [backend-config.json] file inside /frontend-vite with the updated contract-address under "11155111" "address" feild fetched from Terminal 2.

Frontend :

Terminal 1:


  • Run (Move inside [frontend-vite] folder): cd frontend-vite

  • [ONLY ONCE] Run (Package installations): npm install

  • Run (Running frontend on localhost:5173): npm run dev

Libraries and dependencies :

Production Dependencies :

- [@radix-ui/react-dialog](https://www.npmjs.com/package/@radix-ui/react-dialog) (^1.0.5)
- [class-variance-authority](https://www.npmjs.com/package/class-variance-authority) (^0.7.0)
- [clsx](https://www.npmjs.com/package/clsx) (^2.1.0)
- [lucide-react](https://www.npmjs.com/package/lucide-react) (^0.364.0)
- [react](https://www.npmjs.com/package/react) (^18.2.0)
- [react-datepicker](https://www.npmjs.com/package/react-datepicker) (^4.17.0)
- [react-dom](https://www.npmjs.com/package/react-dom) (^18.2.0)
- [react-router-dom](https://www.npmjs.com/package/react-router-dom) (^6.22.0)
- [react-toastify](https://www.npmjs.com/package/react-toastify) (^10.0.5)
- [recharts](https://www.npmjs.com/package/recharts) (^2.12.3)
- [tailwind-merge](https://www.npmjs.com/package/tailwind-merge) (^2.2.2)
- [tailwindcss-animate](https://www.npmjs.com/package/tailwindcss-animate) (^1.0.7)
- [dotenv](https://www.npmjs.com/package/dotenv) (^14.2.0)

Development Dependencies :

- [@nomiclabs/hardhat-ethers](https://www.npmjs.com/package/@nomiclabs/hardhat-ethers) (^2.0.4)
- [@nomiclabs/hardhat-etherscan](https://www.npmjs.com/package/@nomiclabs/hardhat-etherscan) (^3.0.0)
- [@nomiclabs/hardhat-waffle](https://www.npmjs.com/package/@nomiclabs/hardhat-waffle) (^2.0.2)
- [chai](https://www.npmjs.com/package/chai) (^4.3.4)
- [ethereum-waffle](https://www.npmjs.com/package/ethereum-waffle) (^3.4.0)
- [ethers](https://www.npmjs.com/package/ethers) (^5.5.3)
- [hardhat](https://www.npmjs.com/package/hardhat) (^2.8.3)
- [hardhat-gas-reporter](https://www.npmjs.com/package/hardhat-gas-reporter) (^1.0.7)
- [solidity-coverage](https://www.npmjs.com/package/solidity-coverage) (^0.7.18)
- [@types/react](https://www.npmjs.com/package/@types/react) (^18.2.15)
- [@types/react-dom](https://www.npmjs.com/package/@types/react-dom) (^18.2.7)
- [@vitejs/plugin-react](https://www.npmjs.com/package/@vitejs/plugin-react) (^4.0.3)
- [autoprefixer](https://www.npmjs.com/package/autoprefixer) (^10.4.15)
- [eslint](https://www.npmjs.com/package/eslint) (^8.45.0)
- [eslint-plugin-react](https://www.npmjs.com/package/eslint-plugin-react) (^7.32.2)
- [eslint-plugin-react-hooks](https://www.npmjs.com/package/eslint-plugin-react-hooks) (^4.6.0)
- [eslint-plugin-react-refresh](https://www.npmjs.com/package/eslint-plugin-react-refresh) (^0.4.3)
- [postcss](https://www.npmjs.com/package/postcss) (^8.4.29)
- [tailwindcss](https://www.npmjs.com/package/tailwindcss) (^3.3.3)
- [vite](https://www.npmjs.com/package/vite) (^4.4.5)

Overview video:

https://www.loom.com/share/a5b5990273df4629b7dc2af6bbf9d08d?sid=3962bd00-ebff-4a92-9811-d50956a3c7e8

Pitch deck:

The project is complete but I'm open to suggestions & modifications for this project. Please don't forget to put a ⭐ if you like the project.