Thank you for your interest in contributing! AidChain is open to contributions from the community.
contracts/escrow/src/lib.rsβ Implementinitialize,lock_funds,release_funds,reclaimcontracts/oracle/src/lib.rsβ Addadd_verifier,remove_verifier,get_condition_record,transfer_admin- Add comprehensive contract tests
backend/src/services/oracle.tsβ Soroban RPC integration for on-chain condition recordingbackend/src/routes/ngo.tsβPOST /programs/:id/fund(Stellar claimable balance creation)backend/src/routes/beneficiary.tsβPOST /:publicKey/claim(claim claimable balance)backend/src/routes/conditions.tsβ Fix upsert logic, add@@uniqueconstraint to schema- Auth middleware (JWT verification)
backend/prisma/schema.prismaβ AddTransaction,FieldOfficer,Donormodels- SMS notifications via Twilio
frontend/src/lib/api.tsβ JWT interceptorfrontend/src/pages/BeneficiaryPortal.tsxβ Claim button + SEP-24 off-ramp flowfrontend/src/pages/DonorTracker.tsxβ Per-beneficiary drill-down, CSV/PDF export- Freighter wallet connection (
connectFreighterinBeneficiaryPortal.tsx) - Create program modal in
NGODashboard.tsx
field-app/β Offline-first PWA for field officers (React + service worker)
- Fork the repo
cd backend && npm install && cp .env.example .envcd frontend && npm install && cp .env.example .envdocker-compose up -d postgrescd backend && npx prisma migrate devnpm run devin bothbackend/andfrontend/
- One feature per PR
- Include tests for backend routes
- For contract changes, run
cd contracts && cargo test - Reference the relevant TODO comment in your PR description
Use the GitHub issue templates when picking up a TODO:
- Feature request β for implementing a TODO item
- Bug report β for reporting issues
See docs/architecture.md for design decisions and open questions.