Project Overview
“Gaming Coffee” is a desktop application built using JavaFX 19+ and Java 17, designed as a management system tailored for gaming cafés. It integrates order processing, session tracking, menu management, and sales analytics into a clean GUI desktop experience. The app uses SQLite 3.x as an embedded local database. It showcases a polished frontend linked to a simple backend via JDBC, supporting real‑time usage and local data persistence
GitHub
.
Tech Stack & Architecture
LayerTechnologies & Tools
UI / FrontendJavaFX 19+, FXML Scenes via Scene Builder, CSS styling
Core LogicJava 17 with JDBC-based data access layer
DatabaseSQLite 3.x embedded (single-file .db)
Design ToolsFXML Scene Builder, SQLite Browser
Build & RunMaven wrapper (mvnw javafx:run), .bat & .sh launchers
GitHub
It follows a simplified MVC pattern: controllers manage interactions between FXML-based views and service classes, which handle business logic and data persistence using JDBC.
Key Features
(Based on the README feature list)
Secure User Login: Role‑based authentication (Admin vs Employee), session handling, and password encryption/validation.
Menu Management: CRUD operations for food & beverage items—with categorization and price control.
Order Processing: Create, monitor, and finalize customer orders; automatically calculate totals and taxes; ability to generate printable receipts.
Gaming Session Management:
Track PC or console usage time per customer
Automatic session rate calculation
Management of gaming stations and real‑time usage
Admin Dashboard:
Full user (staff) CRUD
Sales reports & basic analytics
Access to system configurations and manual database browsing/repair
GitHub
Best Practices & Engineering Highlights
UI Separation (MVC), Modular Design: FXML + controller classes promote clean separation between UI design and business logic.
Structured Error Handling: Uses try‑with‑resources for database connections, with user-friendly error dialogs in JavaFX.
Input Validation: UI fields validated via JavaFX controls or custom utility classes before processing orders or login.
Transactions & Resource Cleanup: JDBC schema creation and cleanup handled responsibly to avoid data corruption.
Source Control & Documentation: Every launch option included (.bat, .sh), and step-by-step usage guides present in README for Linux/macOS/Windows
GitHub
.
Why It’s Portfolio-Ready
Full-stack desktop application – demonstrates both frontend (JavaFX UI) and backend connectivity logic.
Clear domain modeling – includes users, menu items, orders, sessions, and reports.
Cross-platform desktop deployment – runs from IDEs, mvnw command, or double-click.
Production-grade UX features – order receipts, live session tracking, usage time billing.
UI/UX polish with CSS styling and Scene Builder FXML layout.