This mini project simulates a simple coffee shop game where users can create, update, and manage in-game menu.
The frontend is built with WordPress hosting. The backend leverages AWS API Gateway, Lambda (Python), and DynamoDB.
| Pumoxi Game Coffeeshop Simulation | |
| This is a simulation game where you can create, update, resume, or delete a coffee shop and manage its menu. | |
|
Menu |
|
|
Logging |
|
How to use it
This mini game comes with 2 features:
- Simulate you own a coffee shop
- Simulate you can maintain the menu of this coffee shop
Game Controls
On top left is a drop down menu, allowing you to simulate a coffee shop business:
| Action | Description | HTTP Method | Backend |
|---|---|---|---|
| New Shop | Initialize a new shop | POST | Create a new entry in the coffee shop DynamoDB. |
| Existing Shop | Resume the last session based on shop ID. | GET | Retrieve the shop details from the DynamoDB. |
| Delete Shop | Deletes the shop based on shop ID. | DELETE | Delete the shop details from the DynamoDB. |
| Update Shop | Update the shop info based on the shop ID. | PUT | Update the ship details in the DynamoDB. |
Menu Management
On top right is a drop down menu, allowing you to simulate the menu management of the coffee shop:
| Action | Description | HTTP Method | Backend |
|---|---|---|---|
| Add new item to menu | Add new food name and price to the menu. | POST | Create a new entry in the menu DynamoDB. |
| Update existing menu | Update food name and price on the menu based on food ID. | PUT | Update existing entry in the menu DynamoDB. |
| Delete item from menu | Delete food entry from the menu. | DELETE | Delete food entry from the menu DynamoDB. |
Logs and Output
All API responses and simulation logs are shown at the bottom of the interface. This helps track what’s happening under the hood.
Architecture Diagram

Using AWS API Gateway + Lambda + DynamoDB as a Backend
I treated AWS as a “headless backend”:
- API Gateway exposes REST endpoints.
- Lambda runs isolated Python logic per request.
- DynamoDB persists game state and menu data.
- Python class keep business logic clean and manageable.
This pattern is scalable, cost-effective (server less billing), and decouples frontend logic from backend infrastructure.
State Management Without Sessions
- Instead of relying on WordPress sessions or cookies, I pushed all persistent data to DynamoDB.
- The game state is fetched on each resume or update. This ensures stateless client behavior. It works well with Lambda.
Next Steps
I will include additional features to enhance the Coffee Shop simulation:
- Ordering
- Table
- Cashier
Any feedback or suggestions, please let me know.



Leave a Reply