All notable changes to CipherTrust are documented here. Format follows Keep a Changelog.
main.py— FastAPI application with lifespan management, CORS, and router registrationapp/core/config.py— Pydantic-settings configuration with.envsupportapp/core/database.py— Async SQLAlchemy engine, session factory, andBaseapp/core/redis.py— Async Redis client with init/close lifecycleapp/core/security.py— JWT creation/verification, bcrypt password hashing,get_current_userdependencyapp/core/middleware.py— Request ID injection, structured logging,X-Response-Timeheaderapp/core/exceptions.py— Global handlers forIntegrityError,OperationalError,ValueError, unhandled exceptionsapp/models/user.py— SQLAlchemy models:User,Organization,ConsentRecord,ZKProof,ComplianceCertificateapp/schemas/schemas.py— Pydantic v2 request/response schemas for all entitiesapp/api/routes/auth.py—/register,/login,/me,/me/org/{id}app/api/routes/orgs.py—/,/{id},/{id}/register-onchainapp/api/routes/consent.py—/recordsCRUD,/anchor, revokeapp/api/routes/proofs.py—/generate,/submit/{proof_id}, list, getapp/api/routes/compliance.py—/summary,/issue-certificate,/certificates,/verify/{txn_id}app/api/routes/analytics.py—/score,/risk-flags,/trend,/dashboardapp/api/routes/health.py—/healthliveness endpointapp/blockchain/algorand_client.py— Algorand node + indexer client, note-field anchoring, contract calls for all 4 contractsapp/services/zk_service.py— ZK proof orchestration: mock Groth16 proof generation, snarkjs subprocess integration, off-chain verificationapp/services/analytics_service.py— 5-dimension compliance score engine, risk flag detection, 30-day activity trendsalembic/— Async Alembic migration setup with initial schema migrationseed.py— Demo data seeder: org, 2 users, 5 consent recordstests/test_api.py— Async pytest suite covering auth, org, consent, proof, and full end-to-end flow
contracts/identity.py— Organisation DID registration with Box storagecontracts/consent_registry.py— Immutable consent hash log, idempotent loggingcontracts/proof_verifier.py— ZK proof hash + off-chain verification result storage ⭐contracts/compliance_cert.py— Certificate issuance and revocation trackingcontracts/deploy_all.py— TestNet deployment helper script
zk-circuits/circuits/consent_compliance.circom— Groth16 circuit proving N active consents with Merkle inclusion proofszk-circuits/scripts/setup.js— Powers of Tau download, circuit compilation, trusted setupzk-circuits/scripts/generate_proof.js— Witness generation, proof generation, local verificationzk-circuits/example_input.json— Example circuit input with 3 active consents
src/app/page.tsx— Landing page with hero, features, demo flowsrc/app/login/page.tsx— Login page with demo credential hintssrc/app/register/page.tsx— 2-step registration: account + organisationsrc/app/dashboard/page.tsx— Org overview: score ring, stats, quick actions, latest certificatesrc/app/dashboard/consent/page.tsx— Consent management with inline form, anchor action, revoke with confirm modalsrc/app/dashboard/proofs/page.tsx— ZK proof generation, submission pipeline, public inputs viewersrc/app/dashboard/certificates/page.tsx— Certificate issuance and listsrc/app/dashboard/analytics/page.tsx— Score gauge, risk flags, recharts bar + line trend chartssrc/app/regulator/page.tsx— All-orgs compliance overview for regulatorssrc/app/regulator/verify/page.tsx— Verify by org ID or Algorand transaction IDsrc/app/global-error.tsx— Next.js global error boundarysrc/app/not-found.tsx— 404 pagesrc/components/ui/Sidebar.tsx— Navigation sidebar with Pera Wallet connectionsrc/components/ui/Cards.tsx—StatCard,StatusBadge,EmptyState,HashDisplay,SectionHeadersrc/components/ui/Toast.tsx— Context-based toast notification systemsrc/components/ui/Skeleton.tsx— Loading skeleton componentssrc/components/ui/ConfirmModal.tsx— Reusable confirmation dialogsrc/lib/api.ts— Axios client with JWT interceptor, all API namespacessrc/lib/store.ts— Zustand global store: auth, active org, walletsrc/lib/useOrg.ts—useOrg,useOrgList,useCompliancedata hookssrc/lib/usePeraWallet.ts— Pera Wallet connect/disconnect/reconnect hook
docker-compose.yml— PostgreSQL 15, Redis 7, FastAPI backend, Next.js frontendsetup.sh— One-command first-time setup scriptciphertrust.code-workspace— VS Code multi-root workspace with launch configs and tasksapi.http— REST Client test file for all endpoints.env.example— All required environment variables documented.gitignore— Python, Node, ZK, secrets, IDEREADME.md— Full project documentationcontracts/README.md— Contract deployment guideCHANGELOG.md— This file