Technical Overview
Introduction
Purpose of the Document
This document provides an overview of the technical stack used in the development and deployment of the Magnify Cash application. It serves as a reference for developers, product managers, and stakeholders to understand the core technologies, architecture, and infrastructure used in the system.
Intended Audience
This documentation is intended for:
Developers onboarding the project.
Product managers and technical leads.
DevOps engineers managing infrastructure and deployments.
Technology Stack Overview
Frontend
Framework: React (built with Vite).
Programming Language: TypeScript.
State Management & Data Fetching: TanStack React Query.
UI Library: Radix UI components with TailwindCSS.
Routing: React Router.
Blockchain & Wallet Integration: Wagmi (for Ethereum-based interactions).
Form Management: React Hook Form.
Charts & Data Visualization: Recharts.
Motion & Animations: Framer Motion.
Identity Verification: WorldCoin (IDKit & MiniKit).
Backend
Language & Framework: Node.js with TypeScript.
API Architecture: RESTful APIs.
Authentication: JWT-based authentication.
Database: NoSQL database for user and loan data.
Smart Contracts
Blockchain Platform: WorldChain.
Smart Contract Language: Solidity.
Development Framework: Remix and Hardhat.
Interaction: Backend communicates with contracts using ethers.js.
Infrastructure
Hosting: Cloudflare Pages and Workers.
Environments: Staging and Production.
Storage: IPFS for decentralized data storage (if applicable).
System Architecture
High-Level Overview
Magnify Cash follows a modular frontend-backend-smart contract architecture:
User Interaction: Users interact with a React-based frontend.
API Requests: The frontend communicates with the backend via REST APIs.
Smart Contract Calls: The backend interacts with smart contracts for loan issuance and repayment.
Frontend-Backend-Smart Contract Interaction
Users initiate a transaction on the frontend.
The frontend sends a request to the backend for processing.
The backend verifies the user and interacts with the WorldChain smart contract.
The blockchain executes the contract logic and returns the transaction result.
The result is displayed on the frontend for the user.
Key Third-Party Integrations
WorldCoin App: Used for identity verification.
Payment Providers & Wallets: Crypto-based payment processing.
External APIs: Used for market data and transaction monitoring.
Development & Deployment
Version Control & Branching Strategy
Repositories are structured as follows:
Frontend Repository:
Magnify-Cash/magnify-cash-worldcoin-app-V2
Backend Repository:
Magnify-Cash/magnify-worldcoin-backend
Smart Contracts Repository:
Magnify-Cash/magnify-worldcoin-contracts
Branching Strategy:
Feature branches:
feature/MAG-XXX_<short-description>
Bug fixes:
bugfix/MAG-XXX_<short-description>
CI/CD Pipeline
Frontend:
Automated testing via Lovable.ai.
Deployments trigger automatic updates on Cloudflare Pages.
Backend:
Manual deployments to Cloudflare Workers.
Smart Contracts:
Deployment managed via Remix and Hardhat.
Environments
Development: Local testing environment.
Staging: Pre-production testing.
Production:
World Mini App: Hosted on the World App platform.
Frontend: Hosted on Cloudflare Pages.
Backend: Runs on Cloudflare Workers.
Smart Contracts: Deployed on WorldChain.
Security Considerations
Authentication & Access Control
Uses JWT tokens for API authentication.
WorldCoin IDKit for identity-backed access control.
Data Security & Privacy
Encrypted Transactions: All API communications use HTTPS & encryption.
Smart Contract Security: Contracts are audited before deployment.
Fraud Prevention: AI-driven monitoring for identity fraud detection.
Conclusion
Magnify Cash leverages cutting-edge blockchain, identity verification, and security mechanisms to offer users a seamless lending experience. With modular architecture, secure authentication, and automated deployment pipelines, Magnify Cash ensures efficiency, security, and scalability.
For more details, visit: Magnify Cash GitHub.
Last updated