A 1-hour hands-on workshop to build your first decentralized app with Arkiv.
- A simple micro-app that uses Arkiv (decentralized database)
- Read and write data to Arkiv
- Verify your data on the blockchain explorer
- Experience the "walkaway test" - data persists independently
-
Install dependencies:
npm install
-
Set environment variables: Create
.env.local:ARKIV_PRIVATE_KEY=0x... # your testnet wallet private key, funded on Braga via the faucet # SPACE_ID=ns # optional secondary grouping inside the project namespace
The project namespace itself (
PROJECT_ATTRIBUTE) is defined inlib/config.ts, not in env. It is the canonical multi-tenant pattern on shared Braga. -
Run development server:
npm run dev
-
Visit:
- Tutorial:
http://localhost:3000/01-quick-start - Hello World Demo:
http://localhost:3000/hello-world - Learn:
http://localhost:3000/learn - Dictionary:
http://localhost:3000/dict - Security:
http://localhost:3000/security
- Tutorial:
serverless-dapp101/
├── app/
│ ├── page.tsx # Landing page
│ ├── layout.tsx # Layout with progress provider and navigation
│ ├── [step]/ # Individual step pages
│ ├── hello-world/ # Hello world demo app
│ ├── learn/ # Visual learning aids and tutorials
│ ├── dict/ # Web3 concepts dictionary
│ ├── security/ # Web3 security guide
│ ├── visuals/ # Visual aids page
│ └── api/ # API routes
├── components/ # Reusable UI components
│ ├── HomeLink.tsx # Navigation components
│ ├── LearnLink.tsx
│ ├── DictLink.tsx
│ ├── SecurityLink.tsx
│ ├── TryLink.tsx
│ ├── GitHubLink.tsx
│ └── ... # Tutorial UI components
├── content/ # Step content and config
├── lib/ # Arkiv client utilities
└── README.md # This file
Learn (/learn): Visual learning aids and step-by-step tutorials explaining Arkiv concepts, data flows, and architecture patterns.
Dict (/dict): Web3 concepts dictionary with explanations at multiple levels (ELI5, Builder, Engineer, Developer) covering data sovereignty, decentralized databases, walkaway tests, and trustless design principles.
Security (/security): Comprehensive guide to Web3 software supply chain security, including threat vectors, mitigation strategies, and questions for developers and AI agents.
Deploy to Vercel:
- Connect your GitHub repository
- Set environment variables:
ARKIV_PRIVATE_KEY=0x...(the wallet that signs server-side writes; fund it on the Braga faucet)SPACE_ID=ns(optional; defaults to'ns')
- Deploy
PROJECT_ATTRIBUTE lives in source (lib/config.ts) so does not need a Vercel env var.
✅ Tutorial app complete ✅ Hello world app complete ✅ All engineering guidelines followed ✅ Ready for deployment