Elijah Oliver Larsson Back to portfolio

Independent product / 2026

RepQuest

A fitness app where real training powers an RPG

I designed and built a fitness app where workouts, activity, nutrition, and recovery shape companion growth and battles.

RepQuest Today screen showing daily fitness actions and companion progress
RepQuest Training screen showing an active strength workout
RepQuest battle screen showing Aurexion facing Prism Mote
Nymbloom in its luminous final form
  • Product design
  • Fitness UX
  • HealthKit
  • Game systems
  • Flutter
  • iOS
Status
Live on TestFlight
Role
Product design, UI, game systems, and Flutter development

Why I built RepQuest

Fitness data is useful while you log it, but it often ends in a chart or streak. I built RepQuest to give that progress another use: developing a companion and supporting a separate RPG.

Keeping fitness useful

Starting a workout, checking activity, logging a meal, or reviewing recovery has to stay quick. Those actions live in the main navigation; the companion and battle systems respond without taking over the fitness flow.

The fitness app comes first

RepQuest combines workouts, movement, meals, recovery, and insights in one app. Each tool remains useful even if you ignore the RPG.

The game reacts to the fitness app, not the other way around. People log and review health information through familiar tools first; RepQuest then translates it into XP, mastery stats, and battle readiness.

Training
Strength and cardio logs
Activity
HealthKit movement and energy
Nutrition
Meals, calories, and macros
Recovery
Sleep, readiness, and trends

Your companion grows with your training

Fitness activity earns XP and develops Power, Agility, Recovery, and Focus. Levels unlock new forms; balanced mastery unlocks the Divine form.

Dreadveil in its starter form

Dreadveil

The companion you begin training with.

Starter form
Dreadveil Warden evolution

Dreadveil Warden

The first evolution earned through accumulated XP.

Unlocks at level 16
Dreadveil Crown evolution

Dreadveil Crown

The final level-based evolution.

Unlocks at level 36
Dreadveil in its final divine form

Divine form

A separate final state earned through balanced mastery.

Power, Agility, Recovery, Focus

Progress is not based on one metric. Power, Agility, Recovery, and Focus represent different parts of fitness and health, so developing every path matters.

4
Fitness pillars
4
Mastery stats
4
Progression forms
6
Campaign bosses

How fitness powers the RPG

XP and mastery stats carry into a turn-based campaign. I designed battles to give fitness progress a playable outcome beyond another chart, streak, or badge.

Groveguard companion Emberbill companion Nymbloom companion

Fitness drives character progression. Battles turn XP, stats, team composition, and abilities into playable decisions.

RepQuest app icon

Where RepQuest is now

RepQuest is the most complete product I have built so far. I designed the fitness experience, progression, and battle systems, then developed the iOS app in Flutter.

Built with
Flutter, Riverpod, Drift, HealthKit, StoreKit, Codemagic
Current status
Live on TestFlight
Next focus
User testing, progression balance, visual consistency