Skip to content

Conversation

@Bastieno
Copy link
Owner

No description provided.

Course Management System added 29 commits July 21, 2025 10:26
- Integrate with the FinancialPlatform smart contract for all core functionalities, including user management, transaction management, and approval workflows.
- Implement a robust wallet connection system with MetaMask, including account switching and page reload persistence.
- Fix a bug in the `getUser` function in the `FinancialPlatform.sol` contract to ensure it reverts for unregistered users.
- Fix a bug in the `deploy.js` script to include all required arguments for function calls.
- Add a comprehensive set of UI components using Shadcn/ui.
- Implement a context-based wallet provider for robust state management.
- Add script to sync contract addresses from deployment to frontend
- Update deploy.js to automatically configure frontend after deployment
- Update .env.local with latest contract addresses
- Add comprehensive blockchain error parsing with user-friendly messages
- Create ErrorBoundary component for graceful React error recovery
- Transform raw Web3 errors into actionable user messages
- Update all contract hooks to use improved error formatting
- Add FundUserButton component for admin funding of new users
- Integrate error boundary into root layout for app-wide protection
- Replace illegible toast messages with clear, contextual error descriptions
- Add funding reminder in user registration flow
- Improve error recovery UX with retry and navigation options

Fixes: Next.js error overlays and illegible blockchain error messages
Addresses: New user funding issue preventing transaction execution
- Replace single-page tab navigation with Next.js App Router
- Create dedicated pages for Dashboard (/), Transactions (/transactions), Approvals (/approvals), and Users (/users)
- Add shared AppLayout component with responsive navigation sidebar
- Update Dashboard component to use router.push() instead of callback navigation
- Implement role-based access control with automatic redirects
- Enable bookmarkable URLs and proper browser navigation support

This improves UX with proper routing, better navigation, and follows Next.js best practices.
- Implement comprehensive event system for all smart contract events
- Add role-based notifications and automatic UI updates via React Query
- Create EventListenerStatus component and integrate with Dashboard
- Include error handling, retry logic, and proper cleanup mechanisms
- Add complete documentation for the real-time system

Enables instant UI updates and contextual notifications for all blockchain activities.
- Transaction Details Modal
- Dashboard Chart
- Approval History View
- Transaction Search
- Add allApprovalIds array and getAllApprovals() function to contract
- Refactor frontend to use new getApprovalHistory() service method
- Update ApprovalHistory component to fetch complete approval history
- Replace pending-only approvals with full historical data retrieval
This commit significantly improves the project's documentation.

The `frontend/README.md` has been completely rewritten from the boilerplate template into a comprehensive guide. It now includes detailed sections on features, tech stack, and project structure.

The root `README.md` is updated to reflect the latest application features, including smart notifications, sound alerts, and interactive charts.
This commit introduces a new script, `scripts/deploy-prod.js`, to automate the deployment of the application to a production environment. This will streamline the release process and reduce manual errors.

In addition, this commit includes the following changes:
- Renames the project in `package.json` from "Technical_Assignment" to "financial-dashboard" for better clarity.
- Updates various npm dependencies to their latest versions.
This commit streamlines the deployment process by introducing npm scripts and automating frontend configuration.

Key changes:
- Replaced manual `npx hardhat run` commands with simpler `npm run deploy:local` and `npm run deploy:holesky` scripts.
- Automated the process of updating frontend environment variables (`.env.local`) with contract addresses upon deployment, removing a manual step.
- Updated the root and frontend README files to reflect the new, simplified workflow.
- Added detailed instructions for deploying to the Holesky testnet and for deploying the frontend to Vercel.
@Bastieno Bastieno merged commit a1f98c7 into master Jul 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants