RealRatnadwip/PIGEON
ForkSend crypto over SMS and Telegram. PIGEON lets anyone create an Algorand wallet and send ALGO using just text messages — no app downloads, no browser extensions
Fork of HimanshuM685/PIGEON
No GitHub topics on this repo.
- C78.1%
- TypeScript17.5%
- Go3.5%
- C++0.4%
- CSS0.2%
- Makefile0.2%
- Jinja0.1%
- HTML0.1%
1 Review
PIGEON is an ambitious and genuinely useful idea: making Algorand wallet operations available through SMS and Telegram lowers the barrier for people who may not want, or be able, to install a wallet app. The repository does a good job showing that this is more than a landing page. There is a real backend in Backend/src, a Telegram command flow, SMS webhook routes, an Algorand contract under pigeon-contract, ESP32 firmware for a hardware gateway, and a frontend that explains the product. The README is also unusually practical for a hack/prototype-style repo: it lists required environment variables, supported Telegram and SMS commands, Docker deployment steps, and links to deeper docs such as DOCUMENTATION.md, Backend/POST_QUANTUM_WALLET.md, and Backend/docs/WALLET_STORAGE.md.
The most interesting technical choice is the wallet/security model. The code separates on-chain identity metadata from off-chain encrypted wallet secrets, and walletSecretsStore.ts plus crypto/mnemonic.ts show a concrete AES-256-GCM/PBKDF2 storage path instead of hand-waving secret handling. I also liked that send.ts attempts to resolve multiple recipient forms, adds a Falcon signature note, and wipes key buffers in finally. The smart contract is readable and documents the admin-gated mutations clearly, especially the Telegram linking/relinking behavior.
Where the project would benefit most is trust-building around reliability. The backend and frontend have lint/build scripts, but there is no obvious CI setup, and test coverage appears concentrated in the bundled Falcon code rather than the app’s critical flows: onboarding, password challenge state, recipient resolution, transaction creation, and Telegram/SMS command parsing. For a wallet-adjacent project, even a small suite of deterministic unit tests around those paths would make adoption much easier. I would also add a license, a short contribution guide, and enable issues so outside users have a place to report setup problems. The README currently references Pigeon-Contract while the actual folder is pigeon-contract, which can trip people on case-sensitive systems. Finally, since this fork has no stars, watchers, topics, or open issue activity yet, adding a clear demo video or screenshots plus a “known limitations / testnet status” section would help visitors quickly understand what is production-ready versus experimental.
