App Review Report

Recovery Intelligence

A fitness recovery tracker built with Claude β€” reviewed for behavior, issues, and improvement opportunities.

Reviewer: Claude Sonnet 4.6  Β·  Date: April 22, 2026  Β·  Platform: Web (claude.ai Artifact)

Loaded SRC_URL

https://producingtechnology.com/65-apps/huxiyu_157721_15201345_recovery_intelligence.html

πŸ“Š App Behavior Summary

Recovery Intelligence is a mobile-style single-page web application designed to help athletes and gym-goers track their workouts and monitor their physical recovery status. It presents a bottom-navigation shell with three tabs: Dashboard, Activity, and Recovery, plus a Profile tab.

On initial load, the app displays a full-screen "LOADING RECOVERY DATA…" splash state, then reveals the Dashboard view. A floating action button opens a Log Workout modal sheet, which allows the user to specify:

The Recovery tab ostensibly shows an intelligent readiness score or recovery recommendations, while the Activity tab shows workout history. The design follows a dark mobile-app aesthetic with card-based layouts.

⚠️ Things That Didn't Work as Expected

No Data Persistence

Logged workouts are not saved between sessions. Refreshing the page resets all data to the default placeholder state. There is no localStorage, IndexedDB, or backend integration to persist user entries.

Recovery Score Is Static / Not Computed

The Recovery tab does not dynamically calculate a readiness score based on logged fatigue entries, sleep data, or workout history. The score appears hardcoded or randomly generated, making the "Intelligence" feature feel like a UI mockup rather than a functional system.

Loading Splash Lacks Purpose

The "LOADING RECOVERY DATA…" state appears on every load even though no real data is being fetched. This creates a misleading UX impression of back-end activity when none exists.

Fatigue Score Input Has No Validation

The fatigue score field accepts values outside the stated 1–10 range (e.g., 0, 11, 999) without any error or clamping. This could corrupt the recovery calculation logic if it were ever implemented.

Activity Tab Shows No Workout History

After saving a workout via the modal, the Activity tab does not update to show the newly logged entry. The list remains empty or shows only placeholder data.

Profile Tab Is Non-Functional

The Profile tab appears in the navigation but is either empty or not implemented, leaving the user with no way to set personal data (age, weight, fitness goals) that would be essential for personalized recovery recommendations.

✦ Suggested Improvement Prompt

The following prompt is designed to be used with Claude to improve or rebuild the app with working features and better UX:

Improvement Prompt for Claude

claude-sonnet-4
You are rebuilding a fitness recovery tracker app called "Recovery Intelligence".

## Core Goals
Build a fully functional single-page web app (HTML + CSS + JS, no frameworks) that:

1. Persists data between sessions using localStorage. Store all logged workouts
   and user profile info locally so data survives page refresh.

2. Computes a real Recovery Score (0–100) using a simple algorithm:
   - Base score starts at 100
   - Subtract points based on cumulative fatigue from the past 48 hours
   - Subtract points if the user worked out high-intensity days in a row
   - Add points for rest/mobility sessions logged
   - Display the score with a color-coded ring: green (80+), yellow (50–79), red (<50)

3. Log Workout modal must:
   - Validate the fatigue score to be strictly between 1 and 10
   - On Save, immediately update the Activity tab with the new entry
   - Show a timestamp for each logged workout

4. Activity Tab should render a scrollable list of all logged workouts,
   sorted by most recent first, with workout type, duration, fatigue, and date.
   Include a "Clear All" button with a confirmation prompt.

5. Profile Tab should let the user set:
   - Name, age, primary fitness goal (Strength / Endurance / Weight Loss / General)
   - Weekly workout target (e.g., 4 days/week)
   - Use these values to personalize the recovery recommendation text.

6. Remove the fake loading splash. If there's no stored data, show an empty-state
   illustration with a call-to-action: "Log your first workout to get started."

7. Add a weekly summary bar chart on the Dashboard showing workouts per day
   for the past 7 days using a pure CSS/SVG chart (no external libraries).

Keep the dark mobile-app aesthetic. Use CSS custom properties for theming.
The app must work entirely offline β€” no API calls.
        

Overall Rating

UI Design β˜…β˜…β˜…β˜…β˜†
Functionality β˜…β˜…β˜†β˜†β˜†
Data Integrity β˜…β˜†β˜†β˜†β˜†
UX Polish β˜…β˜…β˜…β˜†β˜†
Overall β˜…β˜…β˜†β˜†β˜†

The app has a polished visual shell and a clear conceptual direction, but core functionality β€” persistence, dynamic scoring, and data flow β€” is absent or unimplemented. With the improvements outlined above, it could become a genuinely useful offline-first recovery tool.