A simple on-chain expense tracker that allows users to record their expenses and view only their own total expense.
This project is fully build by me (MOHD SHARIQ).
- Users can add expenses with amount and note
- Each user has a private expense ledger
- Users can view only their own total expense
- Expense data of other users is not accessible
- Emits an event on every expense addition
- Written in Solidity
- Uses
struct,mapping, andmsg.sender - Expense data is stored per user
- Mapping is private to prevent direct access
ExpenseAdded(address user, uint256 amount, string note)- Emitted whenever a user adds an expense
- Tests written using Foundry
- Covers:
- Single expense addition
- Multiple expenses for one user
- Multi-user data isolation
- Event emission
Run tests using:
forge test -vvvv