Casey lives in the problem room.
Coaching sits next to the editor so you are not pulled into another chat surface.
Coding interview workspace
Editor, runs, Casey, and progress in one layout. Base Case 120, Blind 75, and NeetCode 150 on the same loop.

Surfaces
Roadmap, IDE, practice, communities, and profile reuse the same chrome. You learn the product once.
Modules and next steps stay visible. You always know what to open next.

Run code, read failures, ask for a nudge. No separate tools to stitch together.

Search and filters stay light. Every row opens the same problem room.
Rosters and assignments point at real problems, not links out to somewhere else.
Profile summarizes depth: modules, categories, streaks, recent work.
Principles
Fewer surfaces, clearer loops. Casey, tracks, cohorts, and the IDE reinforce the same habit, not four different apps.
Coaching sits next to the editor so you are not pulled into another chat surface.
Base Case 120, Blind 75, and NeetCode 150 share one progress loop. Change lists without changing tools.
Roadmap and profile stay aligned: streaks, modules, and categories without vanity charts.
Assignments and rosters reference the same curriculum and IDE as solo practice.
Curriculum
Base Case 120 is the anchor. External lists sit beside it. Opening a problem always lands in the same room.
Base Case 120
Structured modules around problem-solving habits. The roadmap and profile both point here.
External lists
Canonical lists sit beside Base Case 120. Switch lists without losing context.
Practice
Editor, tests, Casey, and review load together. The list is never where work dead-ends.