Full-stack reference app for sending, persisting, and tracking Algorand TestNet transactions. The project combines a Vite + React client and an Express + MongoDB backend that handles Algorand network interactions with algosdk.
- Frontend (
client/) – React 19 UI with Tailwind CSS, dark/light themes, toast notifications, and a polling transaction list. The form validates mnemonics and addresses in-browser via the Algorand SDK loaded from CDN. - Backend (
server/) – TypeScript Express API under/api/algorandfor sending transactions, listing history, and refreshing on-chain status. Uses MongoDB for persistence and rechecks confirmations withalgosdk.Algodv2. - Shared Model – Transactions are stored in microAlgos and exposed to the client using the shared
Transactionshape so UI components can format amounts in ALGO.
- Install dependencies
cd client && npm install cd ../server && npm install
- Configure environment – Copy
server/.env.exampletoserver/.envand provideMONGODB_URI,ALGOD_SERVER, and related Algorand node details. For the frontend, setVITE_BACKEND_URL(e.g.http://localhost:5001/api/algorand). - Run the backend
cd server npm run dev - Run the frontend
The UI launches on
cd ../client npm run devhttp://localhost:3000(configured viavite.config.ts).
- Submit Algorand TestNet transactions securely through the backend; mnemonics are not persisted.
- Auto-refresh transaction history with confirmed/pending status, explorer links, and toast notifications.
- Generate fresh test accounts via
server/src/generate.jswhen you need disposable TestNet wallets.
- Frontend specifics:
client/README.md - Backend specifics:
server/README.md
