Welcome to UtilityX — a hybrid fintech + Web3 marketplace for telecom utilities.
We’re building a dual-rail financial system (NGN + USDT) with escrow at its core. Your contributions help make this vision real 🚀
We follow these principles:
- Simplicity first (MVP mindset)
- Security is critical (especially escrow & wallet logic)
- User experience matters (fintech-level UX)
- Modular architecture (easy to scale Web2 → Web3)
Frontend (React Native)
Backend (Node.js + Express)
Smart Contracts (Web3 escrow)
Click Fork and clone your version:
git clone https://github.com/your-username/utilityx.git
cd utilityxcd backend
npm installcd frontend
pnpm installCreate a .env file:
PORT=5000
MONGO_URI=your_database_url
JWT_SECRET=your_secret
PAYSTACK_SECRET=your_key
REDIS_URL=your_redis_urlnpm run devpnpm expo startWe welcome:
- 🐛 Bug fixes
- ✨ New features
- 🎨 UI improvements
- ⚡ Performance optimization
- 🔐 Security improvements
- ⛓️ Smart contract development
- Create a new branch:
git checkout -b feature/your-feature-name-
Make your changes
-
Commit clearly:
git commit -m "feat: add escrow release logic"- Push your branch:
git push origin feature/your-feature-name- Open a Pull Request 🚀
- Use TypeScript where applicable
- Keep functions small and readable
- Use meaningful variable names
- Avoid unnecessary complexity
- camelCase → variables/functions
- PascalCase → components
- kebab-case → file names
When contributing to:
- Never directly modify balances
- Always use transaction/ledger logic
- Validate all inputs
- Prevent re-entrancy
- Handle edge cases (refunds, disputes)
- Test thoroughly before submission
Before submitting:
- Test your feature locally
- Ensure no breaking changes
- Validate API responses
Your PR must include:
- Clear title
- Description of changes
- Screenshots (if UI related)
- Test steps
- ❌ Don’t push directly to
main - ❌ Don’t break existing flows
- ❌ Don’t hardcode secrets
- ❌ Don’t bypass escrow logic
- Marketplace filtering system
- Escrow engine improvements
- Wallet performance
- UI/UX enhancements
- Web3 wallet integration
- Smart contract optimization
UtilityX uses a hybrid model:
Web2 → NGN → Backend Escrow
Web3 → USDT → Smart Contract Escrow
All contributions must respect this structure.
Be respectful, collaborative, and open-minded. We’re building something ambitious together.
By contributing, you agree that your contributions will be licensed under the MIT License.
UtilityX is more than an app.
It’s building a new financial layer for utilities in Africa.
Let’s build it right. 💪