Global Payroll Infrastructure on Stellar Network
Cross-border USDC payroll β’ SEP compliance β’ Local fiat cash-out β’ Real-time monitoring
| π― Item | π Link / Status |
|---|---|
| π Smart Contract | CCRD5GASTD5IQQPX2ELACIYQRTHQDPWMPFG7AWNWVRP5F6CRT2L3SEAJ |
| π Live Demo | π§ Deploying to Vercel β’ Local: https://lumenshake.vercel.app/ |
| π 35 Wallet Addresses | View Below β’ All Verifiable on Stellar Explorer |
| π Metrics API | GET /api/metrics/dashboard (auth required) |
| π Monitoring | Prometheus: http://localhost:9090 β’ Grafana: http://localhost:3001 |
| π CI/CD Pipeline | Workflow β’ Setup Guide |
| πΌοΈ Demo Screenshots | UI Gallery + Twitter Post |
| π Feedback Form | Google Form |
| π Feedback Data | Google Sheet β’ Excel Export |
LumenShake includes a production-oriented GitHub Actions pipeline.
- Workflow file:
.github/workflows/CI.yaml - CI triggers: Pull requests to
main, pushes tomain, and manual dispatch - Backend CI: dependency install, migration run, and API smoke checks
- Web CI: lint + production build checks
- Contracts CI: Rust
cargo teston both smart contracts - CD: on
mainpush, backend Docker image is published to GHCR
Setup & branch protection checklist: CI_CD_SETUP.md
| Landing Page | Overview |
|---|---|
![]() |
![]() |
| Payroll | Team |
![]() |
![]() |
| Ledger | CashOut |
![]() |
![]() |
The feedback/onboarding form collects:
β Name β’ β Email β’ β Wallet Address β’ β Product Rating β’ β Feedback Comments
| π Form | π Responses |
|---|---|
| Google Form | Google Sheet |
| - | Excel Export (XLSX) |
Network: Stellar Testnet β’ Total: 35 Wallets (30 Employers + 5 Employees)
Verification: All addresses verifiable at https://stellar.expert/explorer/testnet/account/{ADDRESS}
π Click to expand wallet list (35 addresses)
| # | Role | Wallet Address | Explorer |
|---|---|---|---|
| 1 | employer | GBTQ4UVEBMKDJVCFLLQPXUZHTZEGR2IELEBQXQPEBG22LIGI2FFACZKB |
View |
| 2 | employer | GCOXOXNV676RBJ7NKYQPHCRORI22U7X5H7G5VBXSYWEKIJHV5YDEFDL6 |
View |
| 3 | employer | GD3QSMMHZ4VPBILHEPHQSCLTXKNWKGPOFL7H5ER7BBGVURRDLIP7CTOU |
View |
| 4 | employer | GBMJ2P6XWZ57IQWJ72MA5UJZYX2LDIHE2YBLDLSXHH3ODVYZ7QKXP2SK |
View |
| 5 | employer | GDEUNZR7AD7KMO34HJD73ERZMWRAG7V2JDHWRYQAFW36K6G3E5PXUJWN |
View |
| 6 | employer | GAZUMDA7LNFMJXJUDATYREAIJEPZLVM3IPBTVXEYIR7XFFOE23MMEJF3 |
View |
| 7 | employer | GC6YIXJQDB5RZSXHKZL5VWJL2V5GJX2QXN5BRWOYSV4M24XJMTYDXPJX |
View |
| 8 | employer | GAODUR2PU4PPJKOXZEK6XGSCBPD5TXQEFNRP25CGEFBM62GES4NBEGKY |
View |
| 9 | employer | GC24ZIPUE6CYNCRKBR3VAMKVC3XX6W2PXQCPQ6JST4PC3MCH2LSC7R6I |
View |
| 10 | employer | GBJWCRCUKMP4KYZDRIUODFSL7P5CUBPAEBIRALPENVDS6GTNWDMAHAZD |
View |
| 11 | employer | GADXI6S5IPWHTOZMKSHCOBHONPFMND33Z5FGEY3MD2EVED2YJFJ5VAGV |
View |
| 12 | employer | GBOXLDJ4SIOY3EVZT2WBD6VRMNS35YYJWBISO3W4HNKRES7PY3QBFCQ7 |
View |
| 13 | employer | GCGSFT6NFDRL24QY6EINMLMCL6YQHPZZBMNBSIEV2EYVFGILJBOXNJDZ |
View |
| 14 | employer | GAIM73XH27DFGS43JWA5EXNDKGREK5TY6ZW7GXXPPMYTBPVAY6AKR6PO |
View |
| 15 | employer | GC36DZX6MG5OL4W4L27GMEDVBVTNNJ2DKRAII3X7V4UPMHNAMC46O7LX |
View |
| 16 | employer | GC4Q66VBLDDYMPMJ6NIZEBL5XTVVQBAEBXR5CQWM2S6GF4ALZUXDV5GO |
View |
| 17 | employer | GD3A2WCYSF5FZFOAZNRZF5H52CTGA5ZNIJFHRRARFSX7NGU4YY6BACT6 |
View |
| 18 | employer | GAYYAZM2FZ3Q5B46MOURR4LCA5OZDGPNNOK66ETFTFDGJCHFXGLPH72R |
View |
| 19 | employer | GD25SZREHBPNVDEDE6DFSUQINKU7HGZ2LW3SSVZ6NPDWYO7MGHJB2ULS |
View |
| 20 | employer | GCOFIURNH3HD72LVY4UAZGXLF6C7EXHMEKZBT6SD3TEKNJ24ZWDJVCWW |
View |
| 21 | employer | GB3LWDPR7IETLZJNADBWLJSWNLFYTU3HK6WBPONT72JWUIIHA7BMZMQI |
View |
| 22 | employer | GDI6N5ZX7GACMUZKNB5LDYR2P3CUHJJC6C6FNBPN3ZE5VKH5XKKFY6RC |
View |
| 23 | employer | GDAQGMSA4HNBDWUBKC6PCEOMVYNWZZ5ZXUQEX5M2QN3HYOPWJF53RIYR |
View |
| 24 | employer | GA4MTCRYEXY4UXFKRGTUJPQGAL5UX7K5Z2OKLEF3AKD7DJDCWCGDJ5XR |
View |
| 25 | employer | GBBVDLDLMZOSRMSUVOK5JSJO7FRPQGSPLQWUPNGEQFNZNF4DVAN5WHBW |
View |
| 26 | employer | GBGB3HUQGAFWXC25BMAA5EJHX5ARIY7VS2PPQGS2XHWBKAGPGSLMOCJJ |
View |
| 27 | employer | GCV6S2HYDW2DW7OOOTBOXRUAARGSUD62QCXQRW634DIFVDUBJIPEYEDD |
View |
| 28 | employer | GAPB6DRCXCDJFZKDQOHMX7CPAG66LMFX2U3GHEFHFPYFD3U6RKWS7L7S |
View |
| 29 | employer | GDCJI6YTJR3TUCU6I7AMTHDHEIJFD6JQCME3OP4LIJ5AAC5UJVIZHLEK |
View |
| 30 | employer | GB3LVW6R75AJL2L2UNAPL7ADJPPHLYEG3Y6ST43IA6BQOBS65C4DZYNG |
View |
| 31 | employee | GA2AR2NFVEMRCFKUPJ6IA3M4TIZP5FRPRVTNZRR2CWI62LGZZEXO4FBI |
View |
| 32 | employee | GCA6VETGBQQOQPUEBCYXEFDKBTUBE4XSJH2ZIR3XX3I46AOIIOLR3UQA |
View |
| 33 | employee | GD2FWUBHI4ITSDSP6737PRPA2YZVC6SX6H2NOS5VQX6675EBHJGC2ZDB |
View |
| 34 | employee | GCV6ZYSNUV2L4QT3D7HDKWWDCTK5NPU3K7EXZ5GGKSQ4HEYQDTJN2ULE |
View |
| 35 | employee | GBXK4HYAUJRB3PRVG4R2J5VWJMKJDFOV7M3KYLEDOQVWHS7YUZSRU4NT |
View |
Feedback-Driven Roadmap (Based on user onboarding & product feedback themes)
| # | Improvement Area | Baseline Commit | Status |
|---|---|---|---|
| 1 | Wallet Onboarding UX - Improve success rate & error clarity | c68d1c7 | π In Progress |
| 2 | Payroll Observability - Strengthen transaction sync guarantees | b8dc1a5 | π In Progress |
| 3 | Payroll Tab UX - Enhance API integration resilience | 4d82465 | π In Progress |
| 4 | Documentation Quality - Expand onboarding clarity | 23f1369 | β Complete |
| 5 | Feedback Loop - Continuous improvements | c74ccc3 | π Ongoing |
LumenShake implements cross-border payment rails as the required advanced feature, combining:
- SEP-24 interactive deposit/withdrawal transaction lifecycle
- SEP-31 send/receive cross-border transfer workflow
- Webhook event delivery for lifecycle updates and integrations
- KYC-aware processing through SEP-12 customer data and validation paths
- Authenticated wallet user starts a SEP-24 deposit/withdrawal or SEP-31 send flow.
- Transaction is persisted with status transitions for polling and reconciliation.
- Compliance/KYC rules are enforced via customer and payroll gate logic.
- Webhook delivery records are created for downstream event consumers.
- Monitoring and metrics capture operational health of payment processing.
- It goes beyond basic payroll transfer execution and adds interoperable cross-border rails.
- It introduces anchor-style transaction orchestration and lifecycle tracking.
- It integrates with compliance and observability components instead of being an isolated demo endpoint.
The platform uses a dedicated indexing migration to support high-volume payroll, KYC, webhook, and cross-border transaction queries.
- B-tree indexes for standard equality/range lookups
- Composite indexes for common multi-column query patterns
- Partial indexes for high-selectivity operational queries
- BRIN indexes for time-ordered large tables
- GIN indexes for array containment queries (
event_types) - Covering indexes (
INCLUDE) for analytics/report queries
| Artifact | Purpose |
|---|---|
| backend/migrations/006_comprehensive_indexing.sql | Core indexing migration with operational and analytics indexes |
| docs/TASK12_INDEXING_COMPLETE.md | Index design rationale and performance analysis |
Security is implemented as layered controls across auth, API, data, and operations.
| Area | Control | Status | Evidence |
|---|---|---|---|
| Authentication | SEP-10 challenge/signature verification | β | backend/src/services/sep10.js |
| Replay protection | Nonce tracking (sep10_nonces) |
β | backend/src/services/sep10.js |
| Session security | JWT signing + expiration | β | backend/src/services/sep10.js |
| Security headers | Helmet CSP/HSTS/frameguard + custom headers | β | backend/src/middleware/security.js |
| Abuse protection | Multi-profile rate limiting (strict/standard/health) | β | backend/src/middleware/rateLimiter.js |
| Input validation | express-validator rules for key endpoints |
β | backend/src/middleware/validation.js |
| Input sanitization | Request sanitization for body/query/params | β | backend/src/middleware/validation.js |
| SQL injection defense | Parameterized SQL queries | β | backend/src/services + backend/src/routes |
| Data protection at rest | AES-256-CBC PIN encryption | β | backend/src/services/moneygram.js |
| Idempotency safety | Idempotency key cache + replay response | β | backend/src/middleware/idempotency.js |
| Auditability | API action logging in audit_logs |
β | backend/src/middleware/audit.js |
| KYC enforcement | KYC gate middleware for payroll operations | β | backend/src/middleware/kycGate.js, backend/src/routes/payroll.js |
LumenShake is a full-stack blockchain payroll platform built on Stellar Network, enabling employers to pay workers globally using USDC stablecoins with seamless cash-out to local fiat via MoneyGram.
| Component | Technology | Purpose |
|---|---|---|
| π¨ Frontend | Next.js 16 | Landing page + 5-tab dashboard |
| βοΈ Backend | Express.js + Node.js | APIs, workers, metrics, compliance |
| π Smart Contracts | Rust + Soroban | On-chain payroll execution |
| π Monitoring | Prometheus + Grafana | Real-time metrics & alerting |
| πΎ Database | PostgreSQL 14+ | 19 tables, 39 indexes |
| Feature | Status | Description |
|---|---|---|
| π Professional Landing Page | β | Beautiful marketing site with wallet integration |
| π 5-Tab Dashboard | β | Overview, PayRoll, Team, Ledger, CashOut |
| π Smart Contract Payroll | β | Soroban-based automated USDC distributions |
| π MoneyGram Cash-Out | β | Convert USDC to local fiat in 200+ countries |
| π SEP-10 Authentication | β | Industry-standard Stellar wallet auth |
| π€ KYC/AML Compliance | β | Built-in SEP-12 customer verification |
| πΈ Cross-Border Payments | β | SEP-31 international remittances |
| π Transaction Ledger | β | Complete on-chain audit trail |
| π Auto-Sync | β | Smart contract β Database synchronization |
| π Real-time Monitoring | β | Prometheus/Grafana dashboards |
| π‘οΈ Security First | β | Rate limiting, validation, encryption, audit logs |
LumenShake/
βββ π backend/ # Express APIs, workers, metrics, compliance
β βββ π src/
β β βββ π routes/ # API endpoints (auth, payroll, moneygram, etc.)
β β βββ π services/ # Business logic (SEP-10, SEP-12, SEP-24, SEP-31)
β β βββ π middleware/ # Security, validation, audit, rate limiting
β β βββ π database/ # Database connection & migrations
β β βββ π index.js # Main server entry point
β β βββ π worker.js # Background worker for recurring tasks
β βββ π migrations/ # 8 SQL migrations (schema, compliance, indexing)
β βββ π scripts/ # User onboarding, account funding, sync scripts
β βββ π logs/ # Application & error logs
β
βββ π web/ # Next.js frontend application
β βββ π components/ # Dashboard, tabs, wallet connection, toast
β βββ π hooks/ # Custom React hooks (useDashboardData)
β βββ π utils/ # Contract, explorer, wallet utilities
β βββ π types/ # TypeScript type definitions
β
βββ π contracts/ # Soroban smart contracts (Rust)
β βββ π payroll_contract/ # Main payroll contract
β βββ π test_usdc/ # USDC token contract for testing
β
βββ π monitoring/ # Prometheus + Grafana monitoring stack
β βββ π prometheus.yml # Prometheus configuration
β βββ π grafana-dashboard.json # Pre-configured Grafana dashboard
β βββ π setup.sh # One-click monitoring setup
β
βββ π docs/ # 60+ documentation files
β βββ π TECHNICAL_DOCUMENTATION.md
β βββ π USER_GUIDE.md
β βββ π API_REFERENCE.md
β βββ ... (57 more files)
β
βββ π scripts/ # Deployment & automation scripts
βββ π deploy.sh
βββ π deploy-testnet.sh
βββ π demo-verify.sh
| Requirement | Version | Link |
|---|---|---|
| Node.js | 20+ | nodejs.org |
| npm | 10+ | npmjs.com |
| PostgreSQL | 14+ | postgresql.org |
| Freighter Wallet | Latest | freighter.app |
| Rust + Soroban CLI | Latest | soroban.stellar.org |
# 1. Clone repository
git clone https://github.com/janvi100104/Lumenshake.git
cd Lumenshake
# 2. Install backend dependencies
cd backend && npm install
# 3. Install frontend dependencies
cd ../web && npm install
# 4. Configure environment variables
cp backend/.env.example backend/.env
cp web/.env.example web/.env.local# Navigate to backend
cd backend
# Run database migrations
npm run migrate
# Optional: Seed test data
node scripts/onboard-users.js
node scripts/fund-accounts.js
# Terminal 1: Start backend server
npm run dev
# β API: http://localhost:4000
# Terminal 2: Start frontend
cd ../web
npm run dev
# β Web: http://localhost:3000| Service | URL | Status |
|---|---|---|
| π¨ Web Application | http://localhost:3000 | β Running |
| βοΈ Backend API | http://localhost:4000 | β Running |
| π Health Check | http://localhost:4000/health | β Running |
| π Metrics | http://localhost:4000/metrics | β Running |
| π Prometheus | http://localhost:9090 | π§ Optional |
| π Grafana | http://localhost:3001 | π§ Optional (admin/admin) |
| π Alertmanager | http://localhost:9093 | π§ Optional |
Handles recurring payroll processing and automated tasks:
cd backend
npm run workerFull Prometheus + Grafana monitoring with pre-configured dashboards:
cd monitoring
./setup.sh
# Access monitoring:
# β’ Prometheus: http://localhost:9090
# β’ Grafana: http://localhost:3001 (admin/admin)
# β’ Alertmanager: http://localhost:9093| Documentation | Link | Description |
|---|---|---|
| π Project Guide | PROJECT_GUIDE.md | Complete project overview |
| π API Reference | API_REFERENCE.md | All API endpoints |
| π Technical Docs | TECHNICAL_DOCUMENTATION.md | Architecture & implementation |
| π₯ User Guide | USER_GUIDE.md | Step-by-step instructions |
| π§ͺ Testing Guide | TESTING_GUIDE.md | Test procedures |
| π§ Operations Runbook | OPERATIONS_RUNBOOK.md | Production operations |
| π Deployment Guide | DEPLOYMENT_GUIDE.md | Deploy to Vercel/Heroku |
| π CI/CD Setup | CI_CD_SETUP.md | Workflow, checks, GHCR publish setup |
| π Security Audit | TASK10_SECURITY_AUDIT_COMPLETE.md | 40/40 checks passed |
| π Monitoring | TASK11_MONITORING_COMPLETE.md | Prometheus/Grafana setup |
| π Data Indexing | TASK12_INDEXING_COMPLETE.md | 39 indexes, 40-66x faster |
| π SEP-24/31 Guide | SEP24_SEP31_GUIDE.md | Cross-border payments |
| π° MoneyGram Guide | MONEYGRAM_GUIDE.md | Cash-out integration |
| Document | Link | Purpose |
|---|---|---|
| π€ Contributing Guide | CONTRIBUTING.md | How to contribute |
| π Code of Conduct | CODE_OF_CONDUCT.md | Community guidelines |
| π Security Policy | SECURITY.md | Report vulnerabilities |
| π¬ Support | SUPPORT.md | Get help |
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Write tests
- Commit using conventional commits
- Push to the branch
- Open a Pull Request
- β ESLint configured for code quality
- β Prettier for consistent formatting
- β Conventional commits for clear history
- β Targeted integration test scripts and load-test utilities
| Operation | Before Indexing | After Indexing | Improvement |
|---|---|---|---|
| User lookup | 50ms | 1ms | π 50x faster |
| Transaction history | 200ms | 5ms | π 40x faster |
| Status polling | 500ms | 10ms | π 50x faster |
| Date range queries | 1000ms | 15ms | π 66x faster |
| SEP | Standard | Status | Description |
|---|---|---|---|
| SEP-10 | Web Authentication | β Complete | Stellar wallet-based auth |
| SEP-12 | KYC/AML | β Complete | Customer information exchange |
| SEP-24 | Interactive Payments | β Complete | Deposits & withdrawals |
| SEP-31 | Cross-Border | β Complete | International remittances |
| Security Feature | Status | Implementation |
|---|---|---|
| SEP-10 Authentication | β | Challenge + signature verification with JWT issuance |
| Rate Limiting | β | Strict: 100/15m, Standard: 200/15m, Health: 500/min |
| Input Validation | β | express-validator + request sanitization middleware |
| SQL Injection Prevention | β | Parameterized queries across services/routes |
| CORS Protection | β | Origin restricted via FRONTEND_URL configuration |
| Security Headers | β | Helmet CSP/HSTS + custom anti-cache headers |
| Data Encryption | β | AES-256-CBC for sensitive PIN storage |
| Audit Logging | β | API request audit entries persisted to audit_logs |
| Idempotency Keys | β | Duplicate request replay protection middleware |
| KYC Gate | β | Operation-based KYC enforcement on payroll routes |
This project is licensed under the MIT License - see the LICENSE file for details.
| Organization | Contribution | Link |
|---|---|---|
| π Stellar Development Foundation | Stellar network & SDKs | stellar.org |
| π° MoneyGram | Cash-out integration | moneygram.com |
| π Freighter Wallet | Wallet integration | freighter.app |
| π Soroban | Smart contract platform | soroban.stellar.org |
| Channel | Link |
|---|---|
| π GitHub Repository | github.com/janvi100104/LumenShake |
| π Issue Tracker | github.com/janvi100104/LumenShake/issues |
| π¬ Discussions | github.com/janvi100104/LumenShake/discussions |
| π§ Email | janvisinghal10@gmail.com |
| π¬ Stellar Discord | discord.gg/stellardev |
| π Feedback Form | Google Form |
Built with β€οΈ on Stellar Network
Documentation β’ Support β’ Feedback






