The duplicate final frame burns an entire slot
Frame 8 is a pixel-for-pixel repeat of Frame 7. In an eight-frame carousel, every slot is expensive real estate, and ending on a duplicate signals a lack of content depth rather than emphasis. The fix is straightforward: replace it with a distinct closing beat. Options include a profile/achievements screen that shows the user’s gallery, a sharing dialog that demonstrates social export, or even a wider shot of an animation timeline to substantiate the ‘animations’ promise in the headline. If no eighth asset exists, the team should simply remove the duplicate and let the set end on Frame 7 rather than deflate the narrative arc.
The dark coding UI fights the friendly wrapper
Frames 3 and 4 expose the actual code editor: a black canvas, numbered axes, and small color swatches. The abrupt shift from sunny illustrations to a dark, dense grid creates a tonal clash that risks confirming the very fear—‘coding is hard’—that the playful wrapping tries to dispel. The fix is not to hide the editor, but to preview it differently: zoom in on a single, colorful pixel shape against a clean background, crop out the intimidating axis numerals, or show a split-screen where code sits next to its playful output. The current framing shows too much administrative chrome (axes, swatches, close buttons) and not enough creative payoff.
Legibility of in-app text is inconsistent
In Frame 2, the ‘Level 6’ buttons are readable because the blue pills and black text are large relative to the screen crop. In Frame 5, however, usernames like ‘ferret29’ and timestamps like ‘2 days ago’ are rendered at a scale that becomes fuzzy inside the angled phone. The ‘magicharm’ label in the tab bar is particularly illegible, looking like a compression artifact. The fix is to either increase the relative size of the phone mockup when showing text-heavy UI, or to choose preview states that rely on iconography and bold pixel art rather than small social metadata.
Gradients and pixel art share an awkward dimensional mismatch
Frames 4 and 6 use smooth, modern gradients as backgrounds, while the pixel props are strictly flat-colored with 1-bit black outlines and zero dithering. The two systems do not obey the same light logic: the ghost is flat, the background is atmospheric. This creates a visual disconnect that undermines the retro authenticity of the sprites. The fix would be to replace the smooth gradients with flat color blocks, horizontal bands, or even halftone dithering that matches the 8-bit rendering of the characters. Cohesion matters more than trendy gradient fills when the brand promise is explicitly pixel-based.
Color pacing plateaus in the learning beat
The sequence moves from yellow (Frame 1) to orange (Frame 2) and then stays in the orange family for Frame 3. Because Frame 3 is where the actual educational value proposition appears, the emotional temperature stalls right when the narrative should deepen. Shifting Frame 3 to a distinct hue—perhaps a mint green or a soft coral—would maintain forward momentum and give each functional mode its own color signature: yellow for introduction, orange for gamification, a new hue for curriculum, pink for social, and teal for creation.