v1.0.0 Stable
System Architecture β
DataRume is built for speed and security. It combines real-time syncing for instant collaboration with blockchain technology for rock-solid reliability. This makes the application as fast as a spreadsheet, but as secure as a bank.
ποΈ The 4-Layer Stack β
The DataRume architecture is designed to decouple user experience from blockchain latency.
1. Instant Data Sync (InstantDB) β
We use InstantDB as our primary persistence and synchronization engine. This allows for:
- Instant UI Updates: Changes to product catalogs or metadata are reflected across all users in milliseconds.
- Offline Resilience: Actions are buffered locally and synced when the connection is stable.
- Flexible Schema: Our graph-based data model allows us to link Users, DataRooms, Files, and PaymentTransactions with rich relational logic.
2. Blockchain Security (EVM) β
While everyday data is synced quickly, the official ownership records are kept on the blockchain.
- RumeNet (Private L2): A fast, private network for internal tracking. It has no fees for users and records actions instantly.
- Optimism (Public L2): A public network for open proof of ownership and public verification.
- Smart Contracts: Secure digital rules that handle safe asset creation, transfers, and inventory updates.
3. Tracking & History (Blockscout) β
To provide real-time visibility into on-chain holdings without straining the RPC nodes, we utilize a custom indexer integration:
- Blockscout API: We pull historical data and ownership info directly from the blockchain explorer.
- Background Syncing: The app shows a "Syncing" status while it confirms your latest actions on the blockchain.
4. User Interface (Next.js 15) β
The frontend is built with Next.js using the App Router and Turbopack.
- Tailwind CSS 4: Modern, high-performance styling.
- Wagmi & RainbowKit: Production-grade wallet connection and transaction management.
- Structured Logging: All critical events are logged with context for SOC2 compliance and easier debugging.
π Data Flow Diagram β
- Creation: You define a project in the UI -> It gets recorded on the blockchain.
- Cataloging: You add different types of items to your project.
- Minting: You create new digital items -> The system detects the new items and updates your dashboard.
- Transfer: You send assets to someone else -> The transaction is confirmed on-chain -> EveryoneΓ’β¬β’s balances are updated.