Initial commit — federated self-custodial Spark/Lightning tip bot
- grammY bot: /start, /unlock, /tip, /contact, /claim, /settings, /wallet - AES-256-GCM mnemonic encryption with scrypt key derivation - In-memory unlock sessions with background sweep - Atomic claim handling (TOCTOU-safe) - PIN rate limiting (5 attempts → 15 min lockout) - Fastify API server + Telegram Mini App (setup, unlock, send, receive, history) - One-time seed reveal via Mini App or auto-deleted DM message - Federated registry client - Docker Compose deployment Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
{
|
||||
"name": "tip-ln-bot",
|
||||
"version": "1.0.0",
|
||||
"description": "Federated self-custodial Spark/Lightning Telegram tip bot",
|
||||
"main": "dist/bot/index.js",
|
||||
"scripts": {
|
||||
"build": "tsc",
|
||||
"start": "node dist/bot/index.js",
|
||||
"dev": "tsx watch src/bot/index.ts",
|
||||
"typecheck": "tsc --noEmit"
|
||||
},
|
||||
"dependencies": {
|
||||
"grammy": "^1.30.0",
|
||||
"@grammyjs/conversations": "^1.0.0",
|
||||
"@grammyjs/runner": "^2.0.3",
|
||||
"better-sqlite3": "^11.9.1",
|
||||
"bip39": "^3.1.0",
|
||||
"fastify": "^5.3.2",
|
||||
"@fastify/cors": "^10.0.2",
|
||||
"@fastify/static": "^8.1.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/better-sqlite3": "^7.6.12",
|
||||
"@types/bip39": "^3.0.4",
|
||||
"@types/node": "^22.0.0",
|
||||
"tsx": "^4.19.3",
|
||||
"typescript": "^5.8.3"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=22.0.0"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user