This is essentially Wikipedia. Just run a topological sort over the dependency graph, and you have your course.
But, I'm happy to be proven otherwise. Maybe wikidata could be a better start, beginning with "recipes" for how to create things codified into their format.
So you're saying that if I throw a wikipedia filled USB at you and go "Ok, invent a CPU from scratch," You'll be able to do it?