DEV Community

Cover image for Building MyZubster: An Open-Source Skill Exchange Platform with Monero Payments
Daniel Ioni
Daniel Ioni

Posted on

Building MyZubster: An Open-Source Skill Exchange Platform with Monero Payments

๐Ÿงฉ Building MyZubster: An Open-Source Skill Exchange Platform with Monero Payments

๐Ÿ“– Introduction

In a world where continuous learning is essential, MyZubster is born as an open-source platform that connects people to exchange skills and services. From programming to plumbing, tutoring to tech support, MyZubster creates a community where everyone can teach what they know and learn what they desire.

GitHub: DanielIoni-creator/MyZubsterAPP


๐ŸŽฏ What Makes MyZubster Special?

๐Ÿ” Privacy & Monero Payments

Unlike other platforms, MyZubster integrates Monero (XMR) for private and secure payments:

  • ๐Ÿ”’ No transaction tracking
  • ๐Ÿ’ฐ Automatic 2% fee to support development
  • ๐Ÿ›ก๏ธ Escrow system: funds locked until work is completed

๐ŸŒ SaaS & Self-Hosted Architecture

MyZubster can be used as:

  • SaaS (Software as a Service) with automatic updates
  • Self-Hosted for full control over your data

๐Ÿ› ๏ธ Tech Stack

Layer Technology
Mobile Kotlin, Android SDK, Retrofit, Material Design
Backend Node.js, Express, MongoDB, JWT
Payments Monero RPC, Escrow, 2% Fee Service
Web Dashboard React, TypeScript
Admin Panel React, Material-UI
API Gateway Node.js, Express

โœจ Key Features

๐Ÿ“… Booking System

  • Interactive calendar with time slots
  • Status tracking: pending, confirmed, in_progress, completed, cancelled
  • Automatic conflict detection

๐Ÿ“ Quotes & Estimates

  • Professionals can send quotes
  • Clients accept or reject
  • Automatic booking status update

๐Ÿ“‹ Complete Work History

  • Track all completed jobs
  • Infinite scroll for loading more history
  • Filter by category and status

๐Ÿ’ณ Monero Payment Integration

  • 2% platform fee automatically applied
  • Escrow protection for both parties
  • Privacy-first transactions

๐Ÿ“ฑ Android App Features

๐Ÿ” Authentication

  • Login/Register with email/password
  • JWT token storage in SharedPreferences
  • Session management with countdown timer

๐Ÿ’ฐ Payment System

  • QR Code generation for Monero addresses
  • Real-time payment status tracking
  • Fund release by client after work completion

๐Ÿ“Š Booking History

  • View all past and current bookings
  • Status color coding
  • Pull-to-refresh

๐Ÿ’ฐ Platform Fee

MyZubster applies a 2% platform fee on all transactions to support:

  • ๐Ÿ–ฅ๏ธ Infrastructure costs (servers, databases, monitoring)
  • ๐Ÿ‘จโ€๐Ÿ’ป Development and maintenance
  • ๐Ÿ›ก๏ธ Security and escrow services

Fee Wallet: Maintained by Daniel Ioni (DanielIoni-creator)


๐Ÿš€ Getting Started

Prerequisites

  • Android Studio (latest)
  • Node.js 16+
  • MongoDB
  • Monero wallet RPC (for testing payments)

Clone the Repository


bash
git clone https://github.com/DanielIoni-creator/MyZubsterAPP.git
cd MyZubsterAPP
Backend Setup
bash

cd backend
npm install
cp .env.example .env
# Edit .env with your MongoDB URI, Monero RPC URL, and API keys.
npm start
# The backend will run on http://localhost:5000

Android App
bash

# Open the project in Android Studio
# Sync Gradle and build the APK
# Install the APK on your device (or use an emulator)

Web Dashboard (Optional)
bash

cd web-dashboard
npm install
npm start
# Runs on http://localhost:3000

Admin Panel (Optional)
bash

cd admin-panel
npm install
npm start
# Runs on http://localhost:3001

๐Ÿงช Testing
bash

# Backend tests
cd backend
npm test

# Android tests
./gradlew test

# All tests with GitHub Actions (automated on every push)

๐Ÿ›ก๏ธ Security & Privacy

    Backend uses environment variables for sensitive data; never commit .env files

    All communication between client and server is encrypted via HTTPS

    Push notifications support Firebase FCM

    Admin Panel uses role-based access control (Admin/Moderator)

    Monero payments are non-custodial โ€” private keys never leave the user's device

    Escrow uses Monero multisig for secure fund locking

๐Ÿ“„ License

This project is licensed under either the MIT License or the GNU General Public License v3.0, at your option.

SPDX-License-Identifier: MIT OR GPL-3.0-or-later
๐Ÿค How to Contribute

We welcome contributors of all experience levels!

    Fork the repository

    Create a feature branch

    Make your changes and test them

    Submit a Pull Request with a clear description of your work

Check our Contributing Guide to get started!
๐Ÿ“Š Project Status
Component   Status
Backend API โœ… Complete
Android App โœ… Complete
Web Dashboard   โœ… Complete
Admin Panel โœ… Complete
Monero Integration  โœ… Complete
Authentication  โœ… Complete
Testing โœ… Complete
๐Ÿ”œ Next Steps

    Real Monero payment integration (currently in simulation)

    Push notifications with Firebase

    User profile management

    Multi-language support

    iOS app (Swift)

๐Ÿ™ Acknowledgments

    Monero for privacy-first digital cash

    All open-source libraries and contributors who make this project possible

    The community for feedback and support

๐Ÿš€ Ready to Join the Community?

Explore the code, report issues, or start contributing today!

https://img.shields.io/github/stars/DanielIoni-creator/MyZubsterAPP.svg?style=social
https://img.shields.io/github/forks/DanielIoni-creator/MyZubsterAPP.svg?style=social
https://img.shields.io/github/issues/DanielIoni-creator/MyZubsterAPP.svg
https://img.shields.io/github/issues-pr/DanielIoni-creator/MyZubsterAPP.svg

Made with โค๏ธ by Daniel Ioni and the MyZubster community

๐Ÿ”— Links:

    GitHub Repository

    Report Issue

    Contributing Guide

Enter fullscreen mode Exit fullscreen mode

Top comments (0)