OREL Vending MVP
← Back to Home
🌙
Task Management
Track progress across all development phases for OREL Vending MVP
Total Tasks
0
Across all phases
Completed
0
Tasks finished
In Progress
0
Currently working
Overall Progress
0%
Project completion
All Tasks
Pending
In Progress
Completed
High Priority
Phase 1: Database & Backend API (Weeks 1-2)
0%
#1.1
MySQL Database Setup
Install MySQL 8.0, create database, configure user permissions, and test connection
Pending
High Priority
#1.2
Create Database Schema
Design and implement all tables: users, machines, products, inventory, transactions, restock_logs, machine_errors, support_tickets
Pending
High Priority
#1.3
Laravel Installation & Setup
Install Laravel 10.x, configure .env, set up folder structure, install Composer dependencies
Pending
High Priority
#1.4
Create Eloquent Models
Build models for User, Machine, Product, Inventory, Transaction, RestockLog, MachineError, SupportTicket with relationships
Pending
Medium
#1.5
Authentication System
Implement JWT-based authentication with login, logout, register endpoints. Role-based access control (admin, merchant)
Pending
High Priority
#1.6
Machine API Endpoints
Create REST APIs: GET /machines, POST /machines, PUT /machines/:id, DELETE /machines/:id, POST /machines/:id/heartbeat
Pending
High Priority
#1.7
Product API Endpoints
Create CRUD APIs for products: GET /products, POST /products, PUT /products/:id, DELETE /products/:id
Pending
High Priority
#1.8
Transaction API Endpoints
Build transaction APIs: GET /transactions, POST /transactions, PUT /transactions/:id/status, GET /transactions/stats
Pending
High Priority
#1.9
Inventory API Endpoints
Create inventory management APIs: GET /inventory, POST /inventory/restock, GET /inventory/alerts, PUT /inventory/:id/adjust
Pending
Medium
#1.10
Merchant API Endpoints
Build merchant management APIs (admin only): GET /merchants, POST /merchants, PUT /merchants/:id
Pending
Medium
#1.11
Seed Sample Data
Create database seeders with sample data: 2 admins, 3 merchants, 10 machines, 30 products, inventory records
Pending
Medium
#1.12
API Testing with Postman
Test all endpoints with Postman, create collection, verify authentication, CRUD operations, and error handling
Pending
Medium
Phase 2: Admin Dashboard (Weeks 3-4)
0%
#2.1
Setup Tailwind CSS
Install and configure Tailwind CSS with npm, create input.css, setup build process
Pending
High Priority
#2.2
Admin Login Page
Create login page with email/password fields, form validation, API integration, remember me, error handling
Pending
High Priority
#2.3
Admin Dashboard Layout
Build sidebar navigation, header with user menu, main content area, responsive design with Tailwind
Pending
High Priority
#2.4
Dashboard Overview Page
Create stats cards (revenue, transactions, machines), revenue chart with Chart.js, recent transactions table, low stock alerts
Pending
High Priority
#2.5
Machine List Page
Display all machines in table/grid, filters (status, merchant), search, pagination, status indicators (online/offline/error)
Pending
High Priority
#2.6
Machine Detail Page
Show machine info, current inventory levels with visual indicators, transaction history, error logs, edit/delete actions
Pending
Medium
#2.7
Add/Edit Machine Page
Form for machine details (serial, name, location, merchant), validation, assign to merchant dropdown, save to API
Pending
Medium
#2.8
Product List Page
Display all products with images, name, price, category, active status. Add, edit, delete, activate/deactivate actions
Pending
High Priority
#2.9
Add/Edit Product Page
Form with name, description, price, category, image upload, validation, save to API
Pending
Medium
#2.10
Inventory Management Page
View inventory across all machines, filter by machine, product, low stock alerts, bulk actions, manual stock adjustment
Pending
Medium
#2.11
Restock Page
Form to log restock activity: select machine, products, quantities, notes, submit to API, view restock history
Pending
Medium
#2.12
Merchant List Page
Display all merchants, machines count, revenue, status (active/suspended), search, add/edit/delete actions
Pending
High Priority
#2.13
Merchant Detail Page
View merchant profile, machines owned, revenue stats, transaction history, support tickets, edit profile
Pending
Medium
#2.14
Add/Edit Merchant Page
Form with name, email, phone, address, password (for new), validation, save to API
Pending
Medium
#2.15
Transaction List Page
Table with all transactions, filters (date, machine, status), search, pagination, export to CSV button
Pending
High Priority
#2.16
Analytics/Reports Page
Revenue charts (daily, weekly, monthly), top products, top machines, sales by merchant, date range selector
Pending
Medium
Phase 3: Merchant Portal (Weeks 5-6)
0%
#3.1
Merchant Login Page
Login page similar to admin but with merchant branding, authentication, redirect to merchant dashboard
Pending
High Priority
#3.2
Merchant Dashboard Layout
Top navigation, main content area, simpler than admin, responsive design with Tailwind
Pending
High Priority
#3.3
Merchant Dashboard Page
My revenue stats, today's sales, machines count, low stock alerts, revenue trend chart for last 30 days
Pending
High Priority
#3.4
My Machines Page
List my machines only, status, location, inventory summary, click to view details
Pending
High Priority
#3.5
My Machine Detail Page
Machine info, current inventory with visual bars, today's transactions, revenue for this machine
Pending
Medium
#3.6
My Inventory Page
View stock levels for all my machines, filter by machine/product, low stock indicators, request restock button
Pending
Medium
#3.7
My Transactions Page
List my transactions only, filters (date, machine, status), search, export to CSV
Pending
Medium
#3.8
Support Tickets Page
List my support tickets, status (open, in progress, resolved), create new ticket button
Pending
Medium
#3.9
Create Support Ticket Page
Form with subject, message, priority, select machine (optional), submit to API
Pending
Medium
#3.10
Profile Settings Page
Edit merchant profile (name, email, phone, address), change password, view subscription plan (if applicable)
Pending
Medium
Phase 4: Machine Interface (Weeks 7-8)
0%
#4.1
Machine Interface Setup
Setup Tailwind for machine interface, configure for touchscreen (large fonts, touch targets), kiosk mode CSS
Pending
High Priority
#4.2
Home/Welcome Screen
Full-screen welcome with OREL branding, "Tap to Start" button, current time/date, machine location name
Pending
High Priority
#4.3
Product Catalog Screen
Grid layout (4-6 columns), product cards with image, name, price, "Out of Stock" badge, touch to select
Pending
High Priority
#4.4
Quantity Selector Modal
Popup when product selected, show quantity selector (1-5), running total, "Add to Cart" button
Pending
High Priority
#4.5
Cart/Checkout Screen
Show selected items with quantities, total amount, "Add More" button, "Proceed to Payment" button
Pending
High Priority
#4.6
Payment QR Screen
Generate QR code for payment, display amount, "Scan with OREL Tap App", 2-minute timer, cancel button
Pending
High Priority
#4.7
Payment Status Checking
Poll backend API every 2s to check payment status, show loading spinner, handle success/failure
Pending
High Priority
#4.8
Dispensing Screen
Show "Dispensing your items..." message, call hardware API to dispense, show slot numbers, progress animation
Pending
High Priority
#4.9
Receipt Screen
Digital receipt with items, prices, total, transaction ID, date/time, "Thank You" message, auto-return to home in 10s
Pending
Medium
#4.10
Error Screens
Create error screens: Machine Offline, Item Stuck, Payment Timeout, Out of Stock, with support contact info
Pending
Medium
#4.11
Python Hardware Control Scripts
Write Python scripts for: dispenser motor control (GPIO), thermal printer (ESC/POS), sensor inputs, test on Raspberry Pi
Pending
High Priority
#4.12
Flask Hardware API
Create Flask API running on Pi: POST /dispense, POST /print-receipt, GET /status, integrate with Python scripts
Pending
High Priority
#4.13
Machine Interface - Backend Integration
Connect machine UI to backend APIs: fetch products, create transactions, check payment status, update inventory
Pending
Medium
#4.14
Kiosk Mode Setup on Raspberry Pi
Configure Chromium in kiosk mode, auto-start on boot, disable screensaver, touchscreen calibration
Pending
Medium
Phase 5: Integration & Testing (Weeks 9-10)
0%
#5.1
OREL Tap Payment API Integration
Integrate with OREL Tap payment system: generate QR codes, check payment status, handle webhooks
Pending
High Priority
#5.2
End-to-End Transaction Testing
Test complete flow: select product → payment → dispense → receipt, verify inventory updates, transaction logs
Pending
High Priority
#5.3
Admin Portal Testing
Test all admin features: machine CRUD, merchant CRUD, product CRUD, inventory management, reports, role permissions
Pending
High Priority
#5.4
Merchant Portal Testing
Test merchant features: view machines, inventory, transactions, support tickets, profile, verify data isolation
Pending
High Priority
#5.5
Machine Hardware Testing
Test dispenser motors, thermal printer, touchscreen input, network connectivity, error handling on actual hardware
Pending
Medium
#5.6
Security Testing
Test authentication, authorization, SQL injection prevention, XSS prevention, CSRF tokens, password hashing
Pending
Medium
#5.7
Performance Testing
Test with multiple concurrent users, stress test APIs, optimize database queries, verify page load times
Pending
Medium
#5.8
Bug Fixes & Refinements
Fix all critical and high-priority bugs found during testing, UI/UX refinements, error message improvements
Pending
Medium
#5.9
Documentation
Write API documentation, database schema docs, deployment guide, user manuals for admin and merchant portals
Pending
Medium
#5.10
Production Deployment
Setup production server (Apache, PHP, MySQL), deploy backend, admin, merchant portals, configure SSL, backups
Pending
High Priority
#5.11
Raspberry Pi Deployment Setup
Create deployment image for Raspberry Pi, automated configuration script, test on multiple Pi units
Pending
High Priority
#5.12
User Acceptance Testing (UAT)
Conduct UAT with stakeholders, collect feedback, demonstrate all features, create punch list for final fixes
Pending
Medium