Coffee Shop POS System
Software Developer · Aug 2025 — Sep 2025

Overview
A full point-of-sale system built specifically for weight-based coffee retail, where pricing is calculated per gram rather than per unit. The system gives owners an admin dashboard for inventory and reporting, and sellers a fast, simple interface for ringing up sales.
The Problem
Weight-based retail doesn't fit typical unit-based POS software. The shop also needed real-time visibility into sales and inventory, bilingual support for staff, and security appropriate for handling transactions and customer data.
The Solution
I built separate Admin and Seller dashboards on a shared inventory model, with weight-based pricing logic at the core of the sales flow. Inventory management, automated reporting, and real-time sales tracking give owners visibility without manual reconciliation. The interface is fully bilingual (Arabic & English) and built with Bootstrap 5 and Chart.js for a modern, responsive experience.
Architecture
PHP with PDO for parameterized database access, MySQL for inventory and transaction records, Bootstrap 5 for a responsive bilingual UI, and Chart.js for real-time sales visualizations.
Challenges & how I solved them
Weight-based pricing correctness
Pricing per gram introduces rounding and unit-conversion edge cases that unit-based POS logic doesn't have to deal with. I built the pricing engine to handle these consistently across sales, refunds, and reporting.
Security on a small-business budget
Small retail systems are still a target for basic attacks. I applied bcrypt password hashing, PDO prepared statements, and XSS/CSRF protection throughout rather than treating security as optional for a smaller system.
Key features
Admin & Seller dashboards
Role-specific interfaces tuned for owner oversight versus fast checkout.
Weight-based sales engine
Accurate per-gram pricing across sales and refunds.
Inventory management
Real-time stock tracking tied directly to sales.
Automated reporting
Sales and inventory reports generated without manual work.
Bilingual UI
Full Arabic and English support across both dashboards.
Screenshots


Future improvements
- Add barcode/scale hardware integration
- Support multi-branch inventory syncing
- Add loyalty program tracking
Let's build something reliable together
I'm currently open to Backend, Full-Stack, and PHP Developer roles. If you need someone who cares about clean architecture as much as shipping fast, let's talk.