Decentralized message-in-a-bottle application built on Base blockchain with IPFS storage.
Forever Message is a Next.js 14 application that combines blockchain technology, IPFS storage, and modern web3 tools to create an immersive experience where users can cast messages into a shared digital ocean.
- Interactive Ocean Canvas: 2D bottle visualization with Konva
- Web3 Authentication: Sign-in with Ethereum (SIWE) via Reown AppKit
- Decentralized Storage: Messages stored on IPFS (Storacha)
- Blockchain Immutability: Bottles minted as NFTs on Base Sepolia
- Real-time Updates: Queue-based async processing with live notifications
- Professional Animations: anime.js timeline orchestration
- Glass-morphism UI: Modern ocean-themed design system
- Next.js 14 (App Router)
- React 18 + TypeScript
- Konva (2D canvas)
- Reown AppKit + wagmi + viem
- Supabase (PostgreSQL + Real-time)
- Storacha (IPFS)
- Tailwind CSS + anime.js
# Install dependencies
yarn install
# Copy environment variables
cp .env.example .env.local
# Run development server
yarn devFor complete documentation including architecture, data flows, tech stack details, and development guides, see:
yarn test # Unit tests (Jest)
yarn test:e2e # E2E tests (Cypress)
yarn ci # Full CI pipelineSee TESTING.md for details.
Deployed on Netlify with automatic deployments from main branch.
Environment variables are configured in the Netlify dashboard. See the Getting Started Guide for required variables.
See LICENSE