{"id":23310433,"url":"https://github.com/mikbolshakov/salary-payment","last_synced_at":"2025-07-28T17:08:11.231Z","repository":{"id":175781204,"uuid":"650316370","full_name":"mikbolshakov/Salary-Payment","owner":"mikbolshakov","description":"Fullstack web3 project that streamlines employee payroll management using blockchain technology. Key functionalities include managing employees, assigning salaries/bonuses, and mass payouts with ERC20 tokens.","archived":false,"fork":false,"pushed_at":"2025-06-29T18:01:44.000Z","size":1044,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-29T19:19:05.236Z","etag":null,"topics":["blockchain","erc20","fullstack","smart-contracts","web3"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mikbolshakov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-06-06T20:11:12.000Z","updated_at":"2025-06-29T18:01:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"437bd51f-c94c-4c28-b2ff-d5f3ae36f3c2","html_url":"https://github.com/mikbolshakov/Salary-Payment","commit_stats":null,"previous_names":["mikbolshakov/wagepayments","mikbolshakov/salary-payment"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mikbolshakov/Salary-Payment","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikbolshakov%2FSalary-Payment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikbolshakov%2FSalary-Payment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikbolshakov%2FSalary-Payment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikbolshakov%2FSalary-Payment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mikbolshakov","download_url":"https://codeload.github.com/mikbolshakov/Salary-Payment/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mikbolshakov%2FSalary-Payment/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267552097,"owners_count":24106000,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-28T02:00:09.689Z","response_time":68,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","erc20","fullstack","smart-contracts","web3"],"created_at":"2024-12-20T13:18:07.285Z","updated_at":"2025-07-28T17:08:10.876Z","avatar_url":"https://github.com/mikbolshakov.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Salary Payment App\n\nThe 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.\n\n---\n\n## Project Architecture\n\n### Blockchain Layer\n\n- **Tools and Frameworks:**\n  - [Hardhat v5](https://hardhat.org/): For smart contract development, testing, and deployment.\n  - [Ethers v6](https://docs.ethers.org/v6/): For testing and interacting with the EVM blockchains.\n  - [OpenZeppelin v5](https://www.openzeppelin.com/): For security and standardization\n- **Smart Contracts:**\n  - Written in **Solidity 0.8.28**.\n  - Add/remove employees. Assign salaries, bonuses, and penalties.\n  - 100% test coverage ensures reliability.\n- **ERC20 Token Support:**\n  - Used ERC20 token as the currency for salary payments.\n  - Pay salaries to all employees in one transaction.\n\n### Backend Layer\n\n- **Technology Stack:**\n  - [Node.js](https://nodejs.org/en) and [TypeScript](https://www.typescriptlang.org/): For building a reliable and scalable backend.\n  - [PostgreSQL](https://www.postgresql.org/): For storing employee details and transaction history.\n- **Functionality:**\n  - Acts as an indexer for the blockchain, syncing on-chain data with off-chain storage.\n  - Stores additional data (e.g., full names of employees, records of salary payment transactions).\n  - Provides RESTful APIs for interacting with employee and transaction data.\n\n### Frontend Layer\n\n- **Technology Stack:**\n  - [React](https://react.dev/) and [TypeScript](https://www.typescriptlang.org/): For building a user-friendly and responsive interface.\n  - [MetaMask](https://metamask.io/): For blockchain interactions.\n- **Features:**\n  - Display a table of employees with search functionality by wallet address and full name.\n  - Easy-to-use forms for adding, updating, and removing employees.\n  - Comprehensive dashboard displaying:\n    - Employee details.\n    - Transaction history.\n    - Token balances.\n\n---\n\nThis 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.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikbolshakov%2Fsalary-payment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmikbolshakov%2Fsalary-payment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmikbolshakov%2Fsalary-payment/lists"}