Logo Lanfrica

SECTOR-FIVE-LAB/mpesa-coffee-kiosk

Domain:

digital infrastructure

Record type:

software
Creator:
SEC
Host:
This is an ecommerce system for ordering coffee using M-Pesa A modern coffee ordering kiosk with M-Pesa payment integration, built with React, TypeScript, and Node.js. ## πŸš€ Features - **Modern UI/UX**: Beautiful, responsive interface built with React, TypeScript, and Tailwind CSS - **M-Pesa Integration**: Seamless payment processing using Safaricom's M-Pesa API - **User Authentication**: Secure login system with JWT tokens - **Order Management**: Track and manage coffee orders - **Admin Panel**: Administrative interface for order management - **Real-time Updates**: Live order status updates - **Mobile Responsive**: Optimized for all device sizes ## πŸ—οΈ Project Structure ``` coffee-and-code/ β”œβ”€β”€ client/ # React frontend application β”‚ β”œβ”€β”€ src/ β”‚ β”‚ β”œβ”€β”€ components/ # Reusable UI components β”‚ β”‚ β”œβ”€β”€ pages/ # Application pages β”‚ β”‚ β”œβ”€β”€ data/ # Static data (coffee products) β”‚ β”‚ β”œβ”€β”€ lib/ # Utility functions and API β”‚ β”‚ └── hooks/ # Custom React hooks β”‚ └── package.json β”œβ”€β”€ Backend/ # Node.js backend server β”‚ β”œβ”€β”€ routes/ # API route handlers β”‚ β”œβ”€β”€ middleware/ # Express middleware β”‚ β”œβ”€β”€ utils/ # Utility functions β”‚ └── index.js # Main server file β”œβ”€β”€ index.js # M-Pesa STK Push API service └── package.json ``` ## πŸ› οΈ Technology Stack ### Frontend - **React 18** with TypeScript - **Vite** for fast development and building - **Tailwind CSS** for styling - **Shadcn/ui** for UI components - **React Router** for navigation - **React Query** for data fetching - **Axios** for HTTP requests ### Backend - **Node.js** with Express - **MongoDB** with Mongoose for data persistence - **JWT** for authentication - **bcrypt** for password hashing - **M-Pesa API** integration ## πŸ“‹ Prerequisites Before running this project, make sure you have: - **Node.js** (v16 or higher) - **npm** or **yarn** or **pnpm** - **MongoDB** (local installation or MongoDB Atlas) - **M-Pesa Developer Account** with sandbox cr …

Languages