The Salary Payment is a decentralized application (dApp) that simplifies payroll management using blockchain technology. It has seamless integration of smart contracts for secure and transparent employee salary management, a backend indexer with database storage for extended functionality, and a React user-friendly interface for user interaction.
- Tools and Frameworks:
- Hardhat v5: For smart contract development, testing, and deployment.
- Ethers v6: For testing and interacting with the EVM blockchains.
- OpenZeppelin v5: For security and standardization
- Smart Contracts:
- Written in Solidity 0.8.28.
- Add/remove employees. Assign salaries, bonuses, and penalties.
- 100% test coverage ensures reliability.
- ERC20 Token Support:
- Used ERC20 token as the currency for salary payments.
- Pay salaries to all employees in one transaction.
- Technology Stack:
- Node.js and TypeScript: For building a reliable and scalable backend.
- PostgreSQL: For storing employee details and transaction history.
- Functionality:
- Acts as an indexer for the blockchain, syncing on-chain data with off-chain storage.
- Stores additional data (e.g., full names of employees, records of salary payment transactions).
- Provides RESTful APIs for interacting with employee and transaction data.
- Technology Stack:
- React and TypeScript: For building a user-friendly and responsive interface.
- MetaMask: For blockchain interactions.
- Features:
- Display a table of employees with search functionality by wallet address and full name.
- Easy-to-use forms for adding, updating, and removing employees.
- Comprehensive dashboard displaying:
- Employee details.
- Transaction history.
- Token balances.
This project combines blockchain, backend, and frontend technologies to deliver a seamless and transparent solution for salary management, ensuring data consistency and providing an intuitive user experience.