Skip to main content

Architecture Overview

SignChain is a monorepo containing four main components, managed by Nx.

sign-chain/
├── apps/
│ ├── desktop/ Tauri 2 (Rust + React) desktop app
│ ├── api/ NestJS backend server
│ ├── web/ Verification web app (React + Vite)
│ └── docs/ This documentation (Docusaurus)
├── libs/
│ └── shared/ Shared TypeScript types and utilities
└── contracts/ Solidity smart contracts (Hardhat)

Data Flow

Architecture data flow

Communication Protocols

PathProtocolData
Desktop -> APIHTTPS POSTComposite hash, previous tx hash, encrypted payload
API -> BlockchainJSON-RPCSmart contract transaction
API -> DatabasePrisma/SQLAnchor record (tx hash, encrypted payload)
Phone -> Web AppHTTPS GETVerification URL from QR
Web App -> APIHTTPS GETVerification query by tx hash

Technology Stack

ComponentTechnologyWhy
Desktop frontendReact 19, TypeScriptComponent model, ecosystem
Desktop backendRust (Tauri 2)PDF manipulation, cryptography, security
API serverNestJS, TypeScriptStructured backend, validation, modules
DatabasePostgreSQL (Prisma)Relational data, migrations
BlockchainEthereum-compatible (Hardhat for dev)Smart contracts, public verifiability
Verification webReact, ViteLightweight, fast loading for mobile
MonorepoNx 22Task orchestration, caching, dependencies