Logo Lanfrica

edson152/Carl-Service-Marketplace

Domain:

digital infrastructure

Record type:

software
Creator:
eds
Host:
A platform connecting customers with formal businesses and informal service providers across South Africa and Zimbabwe. Users can book services and choose whether to visit a provider or request a provider to come to them # ⚑ Carl Service Marketplace > A location-based service booking platform for **Zimbabwe πŸ‡ΏπŸ‡Ό** and **South Africa πŸ‡ΏπŸ‡¦** > Connect customers with trusted electricians, plumbers, mechanics, and more. --- ## πŸ“‹ Table of Contents 1. Prerequisites 2. Project Structure 3. Local Development Setup 4. Admin Credentials 5. How the Platform Works 6. Running the Application 7. API Overview 8. Deployment Guide 9. Troubleshooting --- ## βœ… Prerequisites Before you begin, ensure you have the following installed: | Tool | Version | Download | |---|---|---| | **Node.js** | v18+ (LTS recommended) | nodejs.org | | **npm** | v9+ (comes with Node.js) | β€” | | **Git** | Any recent version | git-scm.com | Check your versions: ```bash node --version # should show v18.x.x or higher npm --version # should show 9.x.x or higher ``` --- ## πŸ“ Project Structure ``` carl-service-marketplace/ β”œβ”€β”€ backend/ # Express.js API server β”‚ β”œβ”€β”€ db/ β”‚ β”‚ └── database.js # SQLite setup, schema, seed data β”‚ β”œβ”€β”€ middleware/ β”‚ β”‚ └── auth.js # JWT authentication middleware β”‚ β”œβ”€β”€ routes/ β”‚ β”‚ β”œβ”€β”€ auth.js # Register, login, profile β”‚ β”‚ β”œβ”€β”€ providers.js # Provider registration, listing, dashboard β”‚ β”‚ β”œβ”€β”€ bookings.js # Booking creation, status, reviews β”‚ β”‚ └── admin.js # Admin control panel API β”‚ β”œβ”€β”€ uploads/ # Uploaded provider documents (auto-created) β”‚ β”œβ”€β”€ .env # Environment variables β”‚ β”œβ”€β”€ server.js # Main Express server β”‚ β”œβ”€β”€ package.json β”‚ └── carlservices.db # SQLite database (auto-created on first run) β”‚ β”œβ”€β”€ frontend/ # React.js application β”‚ β”œβ”€β”€ public/ β”‚ β”‚ └── index.html β”‚ β”œβ”€β”€ src/ β”‚ β”‚ β”œβ”€β”€ api/ β”‚ β”‚ β”‚ └── axios.js # Axios instance with auth interceptor β”‚ β”‚ β”œβ”€β”€ components/ β”‚ β”‚ β”‚ β”œβ”€β”€ Navbar.js β”‚ β”‚ β”‚ β”œβ”€β”€ Footer.js β”‚ β”‚ β”‚ β”œβ”€β”€ ProviderCard.js β”‚ β”‚ β”‚ …