Command Palette

Search for a command to run...

Blog
Next

A-MACI: My First Web3 Application

A-MACI Dashboard is my first Web3 app, focused on secure cryptographic keypair management with IndexedDB, message signing, and an interactive UX.

What is A-MACI?

A-MACI Dashboard is a Web3 solution for secure cryptographic keypair management, combining strong cryptographic workflow design with a user-friendly interface.

Core Functionalities

  • Keypair Management: secure generation, storage, and controlled distribution of key material.
  • A-MACI Integration: supports anonymous message-authentication workflows with cryptographic integrity.
  • User Experience: interactive UI with animation and responsive behavior.

Functional Features

Keypair Generation & Management

  • Generation: secure cryptographic keypair generation.
  • Distribution: first three key parts stored in IndexedDB; remaining parts handled through secure server-side storage.
  • Status: keypairs tracked as active, discarded, or imported.

Keypair Operations

  • Export: export keypairs in JSON format.
  • Import: import previously exported keypairs.
  • Discard: securely discard keypairs and update status.

Message Signing

Users can sign messages using active private keys for secure cryptographic operations.

Key Splitting & IndexedDB Storage

  • Splitting: private key split into five parts.
  • IndexedDB: first three parts stored locally for offline accessibility and resilience.

Security Design

  • IndexedDB transactions for reliable local storage behavior.
  • A-MACI protocol alignment for cryptographic integrity.
  • Browser-centric authentication approach where user information remains in the user’s own browser context.

Interactive UI/UX

  • Matrix-rain style thematic animation.
  • Framer Motion-driven transitions.
  • Dark-theme first visual direction for Web3-focused product feel.

Technical Implementation

  • Frontend: React.js, Framer Motion, IndexedDB
  • Backend/Protocol: A-MACI protocol and custom keypair utilities
  • File management: JSON export/import backup and restoration module

How the Tool Works

  1. Keypair Generation: generate a keypair, split into five parts, store three locally in IndexedDB.
  2. Managing Keypairs: view, export, discard, or sign messages with active keypairs.
  3. Signing Messages: sign with selected keypairs.
  4. Key Security Visibility: inspect key distribution and local availability.

Why This Project Matters to Me

A-MACI was my first full Web3 application and shaped my approach to secure product design, cryptographic workflows, and user-focused developer tooling.