Peelin' Good Bakery is a staff-facing bakery management desktop app built with Java, JavaFX, and HTTP. It talks to the Workshop 7 Spring Boot API for products, customers, orders, employees, bakeries, rewards, analytics, and messaging. There is no local MySQL or JDBC in this project.
Staff-only: there is no customer login in this app. Customer records are maintained by staff against the shared API.
- JDK 23
- JavaFX 17.0.6
java.net.http+ Jackson for REST calls- Maven
- JDK 23
- Workshop 7 backend running (default
http://localhost:8080) with database migrated and seeded - IntelliJ IDEA (recommended) or any Java IDE
Clone the repo and open the Workshop5 Maven module.
Create .env.local in the project root (Workshop5/ — same directory as pom.xml):
API_URL=http://localhost:8080Use a different host or port if your API listens elsewhere (no trailing slash required).
- IDE: run
com.sait.workshop05.MainApplication - Maven:
mvn clean javafx:run
On startup, the app checks that the API responds (GET /api/v1/tags). Ensure the backend is up first.
Use accounts from your Workshop 7 seed data (see Workshop 7 docs). Examples (adjust if your seed differs):
| Role | Username | Password |
|---|---|---|
| Admin | admin |
Admin123! |
| Employee | employee2 |
Emp123! |
Log in with the username (or email if your login screen accepts it) and password validated by the API.
- Admin: full CRUD, analytics, locations, employees, orders, messaging.
- Employee: products, customers, orders, messaging; no employee/locations/analytics admin areas as configured in the UI.
Create .env.local in the project root with API_URL=... as above.
- Confirm Workshop 7 is running and reachable at
API_URL. - Check firewall and port (
8080by default). - Use the same credentials as in the API database (BCrypt hashes are on the server only).
Ensure the project uses JDK 23 and that JavaFX run configuration matches module-info exports.
Older MySQL scripts and JDBC DAOs were removed. Schema and data live in Workshop 7 (Flyway migrations and seed SQL).