Design a real project to learn a skill by building something — the fastest way to actually get good, instead of endless tutorials. Use when asked I'm stuck in tutorial hell, what project should I build to learn, learn by doing, or a project to practice X. Produces a project scoped to your level that forces the skills you want to learn, a breakdown into buildable milestones, the specific skills each milestone teaches, where to get help without copying, and a stretch to grow into — because you learn a skill by using it on something real, not by watching more tutorials.
Start a fresh conversation. Replace the highlighted placeholders.
Use learn-from-a-project to design a finishable project for learning [skill] at my [level], based on my interests and available time; include buildable milestones, skills learned, help guidance, and a stretch goal.
Required inputs
[skill]
[level]
User-approved starter prompt based on a pinned source version; check current skill requirements before running. Task evidence ↗
SKILL.md
name: learn-from-a-projectdescription: "Design a real project to learn a skill by building something — the fastest way to actually get good, instead of endless tutorials. Use when asked I'm stuck in tutorial hell, what project should I build to learn, learn by doing, or a project to practice X. Produces a project scoped to your level that forces the skills you want to learn, a breakdown into buildable milestones, the specific skills each milestone teaches, where to get help without copying, and a stretch to grow into — because you learn a skill by using it on something real, not by watching more tutorials."
Learn From a Project
Tutorial hell is real: you watch endlessly, feel like you're learning, and can't build anything yourself. Skills stick when you use them on a real project — one that forces you to figure things out, hit problems, and solve them. This designs that project: scoped to your level, structured to teach the exact skills you want, with milestones and just enough support that you build (and learn) instead of copy.
What This Skill Produces
A project scoped to your level — ambitious enough to force learning, small enough to finish (finishing matters)
The skills it forces — how this specific project makes you learn the things you're trying to learn
Milestone breakdown — the project split into buildable chunks, each a small win
What each milestone teaches — so the learning is intentional, not incidental
Help without copying — how to get unstuck (docs, examples, asking) without just copying a solution (which teaches nothing)
A stretch goal — an extension to grow into once the core works
Required Inputs
Ask for these if not provided:
The skill — what you want to learn by building
Your level — so the project is challenging but finishable
Your interests — a project you'll care about (motivation matters for finishing)
Time — how much you can put in
What you've tried — tutorials done, to avoid repeating
Framework: Build Something Real, Learn By Doing
Pick a project that forces the skills. Choose something whose completion requires the target skills — so learning them isn't optional.
Scope for finishing. Ambitious enough to stretch, small enough to actually complete — an unfinished project teaches less and demotivates.
Make it something you care about. Interest drives the persistence to push through the hard parts.
Break into milestones. Buildable chunks, each a win and each teaching specific skills — so there's momentum and intentional learning.
Get help the right way. Struggle a bit first (that's the learning), then use docs/examples/questions — but understand and rebuild, don't copy-paste a solution.
Leave a stretch. An extension to attempt once it works, to grow further.
Output Format
Learn [skill] by building: [the project] · your level [x]
Why this project: [how it forces the target skills].
Milestones
[chunk] → teaches [skill]. 2. [chunk] → teaches [skill]. 3. […]
When stuck: [struggle first → docs/examples/ask → understand & rebuild, don't copy].
Stretch goal: [an extension once the core works].
Finishable in: ~[time for your hours].
Quality Checks
The project genuinely forces the target skills
Scoped to be challenging but finishable at the person's level
Chosen to be something the person cares about
Broken into milestones that each teach specific skills
Guides getting unstuck without copy-pasting solutions
Includes a stretch goal
Anti-Patterns
Recommending more tutorials for someone in tutorial hell.
A project too big to finish or too trivial to teach.
A boring project the person won't push through.
"Just copy this example" — which teaches nothing.
No milestones — one overwhelming blob.
Example Trigger Phrases
"I'm stuck in tutorial hell for coding — what should I build?"
"Give me a project to actually learn web development."
"I want to learn by doing, not watching. Design a project."
"What should I build to practice my design skills?"
"A real project to learn Python, scoped to a beginner."
learn-from-a-project by mohitagw15856 · The Skill Leaderboard