Inspiration
We set out to make studying as exciting as playing video games. We wondered why a 50-minute Chemistry session couldn’t feel as epic as facing a raid boss. That’s why we created Focus Mage—to make academic discipline feel as rewarding as leveling up in an RPG.
What it does
Focus Mage transforms your study time into magical power. Rather than just using a timer, you pick a spell, like Fireball, to train. As you focus, your spell earns XP. When you finish, you use your mastered spells in the Battle Arena to fight bosses, earn tokens, and unlock new abilities in a smooth cycle: Study, Power Up, Win.
How we built it
We built the whole app with React.js. We created a custom game loop for turn-based combat and inventory management, and used advanced React hooks like useEffect for the timer. We also used localStorage so users’ grimoires and tokens are saved between sessions, with no need for a backend.
Challenges we ran into
Our biggest challenge was balancing the 'Math of Magic' economy. We adjusted the damage formulas so a 50-minute study session felt valuable against a boss but didn’t make the game too easy. We also had to manage the switch between Study Mode and Battle Mode with careful logic to avoid bugs.
Accomplishments that we're proud of
We’re especially proud of the 'Rarity Roll' feature. The excitement of finishing a study session and possibly getting a 'Legendary' spell adds a thrill to learning that we haven’t seen in other apps. We also love how well the 'Wizard Dog' UI theme came together with standard CSS.
What we learned
We learned a lot about React state management and how to build a persistent app without a database. We also discovered more about gamification psychology, especially how visual feedback, like seeing a boss’s health bar drop, can actually make tough tasks more enjoyable.
What's next for Focus Mage
We plan to add 'Study Raids,' a multiplayer feature where friends can sync their timers and fight big bosses together. We also want to include a 'Class Schedule' feature, so the game can suggest spell types based on the subject you need to study each day.
Built With
- chatgpt
- javascript
Log in or sign up for Devpost to join the conversation.