Skip to content

MJOBA is a Kotlin-based Android marketplace app connecting urban Kenyans with verified local service providers across Nairobi's busy hubs, featuring secure M-Pesa escrow payments that protect both customers and providers

Notifications You must be signed in to change notification settings

damiancodes/M-JOBA-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MJOBA App Documentation

Android Kotlin MVVM M-Pesa

Connecting urban Kenyans with verified local service providers

MJOBA App Screenshot

Overview

MJOBA is a marketplace app that bridges the gap between urban Kenyan customers and local service providers. Operating in busy urban centers like Gikomba, Toi Market, Nairobi CBD, and Lavington, the app provides instant access to verified service professionals including:

  • Beauticians
  • Plumbers
  • Electricians
  • Cobblers
  • And more local services

πŸ› οΈ Technical Architecture

Component Technologies
Frontend
Backend
Database
Authentication
Maps & Location
Payments
Notifications

Key Features

Book immediately or schedule services for later

Secure M-Pesa transactions with funds held until job completion

All service providers are vetted and verified

Quality assurance through customer feedback

Earnings tracking and job management

πŸ”„ App Workflow

Customer Journey

graph TD
    A[Download App] --> B[Create Account]
    B --> C[Browse Service Providers]
    C --> D[Select Provider]
    D --> E[Book Service]
    E --> F[Pay via M-Pesa]
    F --> G[Service Fulfilled]
    G --> H[Confirm Completion]
    H --> I[Rate & Review]
Loading

Provider Journey

graph TD
    A[Register as Provider] --> B[Complete Verification]
    B --> C[Set Services & Pricing]
    C --> D[Receive Booking Requests]
    D --> E[Accept/Decline Jobs]
    E --> F[Complete Service]
    F --> G[Customer Confirms]
    G --> H[Receive Payment]
    H --> I[View Dashboard Analytics]
Loading

Business Model

Revenue Stream Description
Commission 10% fee on each successful service transaction
Provider Subscriptions Optional premium tiers for increased visibility and features
Boosted Listings Paid promotion to appear at top of search results

Security Features

  • Secure Payments: M-Pesa integration with escrow functionality
  • Identity Verification: Multi-step provider verification process
  • User Authentication: Firebase Authentication with phone verification
  • Data Protection: Secure credential storage and encryption
  • Transaction Monitoring: Automated flagging of suspicious activities

πŸ“Š Market Impact

MJOBA aims to digitize Kenya's informal economy by:

  • Providing local service providers access to wider urban markets
  • Building trust through verified profiles and customer reviews
  • Creating consistent income opportunities for skilled workers
  • Offering convenient, secure service bookings for urban residents

πŸš€ Roadmap

MVP (Current Focus)

  • Core booking functionality
  • M-Pesa payment integration
  • Provider verification system
  • Rating and review system
  • Basic provider dashboards

Future Expansions

  • Service categories expansion
  • In-app messaging
  • Loyalty rewards program
  • Advanced analytics for providers
  • Subscription tiers and premium features

Implementation Details

Architecture

MJOBA follows the MVVM (Model-View-ViewModel) architecture pattern:

app/
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ repository/    # Data repositories
β”‚   β”œβ”€β”€ model/         # Data models
β”‚   └── remote/        # API services (Firebase, M-Pesa)
β”œβ”€β”€ domain/
β”‚   β”œβ”€β”€ usecase/       # Business logic
β”‚   └── model/         # Domain models
β”œβ”€β”€ presentation/
β”‚   β”œβ”€β”€ ui/            # Screens and components
β”‚   β”œβ”€β”€ viewmodel/     # ViewModels
β”‚   └── navigation/    # Navigation components
└── util/              # Utility classes

Key Dependencies

  • UI: Jetpack Compose, Material Design Components
  • Navigation: Jetpack Navigation Compose
  • Networking: Retrofit, OkHttp
  • Async: Kotlin Coroutines, Flow
  • DI: Hilt
  • Database: Firebase Firestore
  • Maps: Google Maps Compose
  • Payments: M-Pesa Daraja SDK
  • Analytics: Firebase Analytics
  • Testing: JUnit, Espresso, Mockito

Screen Showcase

Registration
Registration Screen
Home Screen
Home Screen
Location Search
Location Search
Booking Summary
Booking Summary
Provider Services
Provider Services
Provider Dashboard
Provider Dashboard

Target Audience

Customers

  • Urban residents in Nairobi
  • Time-conscious professionals
  • People seeking verified service providers

Service Providers

  • Skilled workers in various trades
  • Small business owners
  • Individual service professionals

Contact & Support

For technical support or feature requests:


MJOBA: Connecting Service Needs with Verified Providers

Β© 2025 MJOBA. All rights reserved.

About

MJOBA is a Kotlin-based Android marketplace app connecting urban Kenyans with verified local service providers across Nairobi's busy hubs, featuring secure M-Pesa escrow payments that protect both customers and providers

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages