I've always found one part of learning a new technology annoying.
You find a roadmap, tutorial, or course, but then the actual learning environment is usually up to you.
You create folders manually, decide what topics to separate, create files, write notes, and eventually the structure becomes inconsistent or gets abandoned.
So I built TRAK to solve that specific problem.
The idea is simple:
trak list
Pick something you want to learn:
trak init lang/go
TRAK fetches a learning blueprint and creates the corresponding workspace locally.
For example, instead of starting with an empty directory, you get a structured workspace organized around the concepts you're trying to learn.
The part I'm more interested in is making this community-driven.
The learning blueprints live in a remote registry, and developers can contribute their own tracks for languages, tools, databases, operating systems, etc.
There's also a web interface for browsing the available tracks and working with blueprints.
Current version: v1.1.0
Some things currently included:
- Local-first CLI
- Remote registry
- Community-contributed blueprints
- 19+ official tracks / 350+ modules
- Cross-platform binaries
- Blueprint validation
- Filesystem safety checks
- Blueprint Studio
- Windows / Linux / macOS support
I'm mainly posting this because I want honest feedback.
Would you actually use something like this when learning a new language or tool?
And if not, what would make this workflow useful to you?