CurrentZK is an AI-underwritten on-chain credit marketplace for borrowers and lenders on Sui.
CurrentZK makes lending feel simple, transparent, and fair. Borrowers can apply by sharing their financial information and quickly receive clear loan terms. Investors can choose risk levels they’re comfortable with and earn yield from real repayment activity. Every step is visible, so both sides know where money is going and how decisions are made. The goal is to unlock credit access without opaque processes, while giving lenders confidence through structured risk controls and on-chain transparency.
CurrentZK is built as a monorepo with three core layers: a Next.js frontend (apps/web), a Bun + Hono TypeScript backend (apps/server), and Sui Move smart contracts (contracts). The frontend handles borrower, investor, and admin flows with wallet connectivity via @suiet/wallet-kit and Sui SDK. The backend exposes REST APIs for submission, document upload, underwriting, pool discovery, and loan actions. Data is stored in Postgres using Drizzle ORM; document files are stored via S3-compatible storage (MinIO locally); async processing runs through BullMQ workers with Redis.
For underwriting, we use LLM-powered extraction and risk assessment (configured through OpenAI/OpenRouter), then combine it with deterministic scoring logic (collateral quality, LTV, probability score, risk tier, APR bands). On-chain, Move modules manage pool creation, investor whitelisting, tranche supply (junior/senior), loan funding/start, withdrawals, and repayments. A notable hacky/pragmatic piece: if S3 upload fails, the backend falls back to local filesystem storage so the pipeline remains testable end-to-end in dev. We also split loan logic into a separate loan_models module to stay within Sui verifier constraints while preserving behavior.

