How keinndh/quest-log-mobile works
Quest Log is a pixel-art RPG productivity app: users manage quests, complete them for progression rewards, and use gold to buy weapons or redeem personal rewards. The PHP page router serves feature views; browser modules provide feature interactions, while a JSON controller and SQLite persistence support the application. The README also documents offline PWA use, optional cloud sync, and save-data portability. Several client modules and views were not sampled, so their internal call relationships are left unasserted.
Main entry points: index.php Page router · controller.php JSON action controller · settings.php Settings and backups · dashboard.php Kingdom dashboard
Components 19
App experience
- Page router
public/index.php - Kingdom dashboard
views/dashboard.php - Login and registration
views/login.php - Quest board
views/quests.php - Settings and backups
views/settings.php - Pixel effects and audio
public/assets/js/pixel.js
Gameplay systems
- Quest interactions
public/assets/js/quests.js - Hero progression
views/character.php - Achievements
views/achievements.php - Weapon shop
views/shop.php - Personal rewards
views/rewards.php - Daily log
views/daily_log.php - Player statistics
views/stats.php - Leaderboard
views/leaderboard.php
Application backend
- JSON action controller
app/controller.php - SQLite game data
includes/db.php
Offline and sync
- Offline asset cache
public/sw.js - Firebase sync
public/assets/js/firebase.js
Other components
- Player
Connections 23
- Player → Page router: opens pages
public/index.php - Page router → Kingdom dashboard: routes to
public/index.php - Page router → Login and registration: routes to
public/index.php - Page router → Quest board: routes to
public/index.php - Page router → Hero progression: routes to
public/index.php - Page router → Achievements: routes to
public/index.php - Page router → Weapon shop: routes to
public/index.php - Page router → Personal rewards: routes to
public/index.php - Page router → Daily log: routes to
public/index.php - Page router → Player statistics: routes to
public/index.php - Page router → Leaderboard: routes to
public/index.php - Page router → Settings and backups: routes to
public/index.php - Quest board → Quest interactions: loads script
views/quests.php - Kingdom dashboard → JSON action controller: requests data
- Quest interactions → JSON action controller: sends actions
- Login and registration → JSON action controller: authenticates
- Settings and backups → JSON action controller: updates settings
- JSON action controller → SQLite game data: uses database
app/controller.php - Player → Offline asset cache: uses offline
README.md - Offline asset cache → Firebase sync: syncs optionally
- Player → Firebase sync: backs up progress
README.md - Settings and backups → Player: exports saves
README.md - Player → Pixel effects and audio: hears effects
README.md