Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/practical-tutorials/project-based-learning/llms.txt

Use this file to discover all available pages before exploring further.

The Project Based Learning catalog is a flat list of external links organized by primary programming language. Within each language section you will find a mix of standalone articles, multi-part written series, and video-based courses — all pointing to tutorials hosted on external sites. There are no paywalls or accounts required on this site; every link takes you directly to the tutorial author’s content. Your job is to find the right project, click through, and start building.

Finding the Right Tutorial

Picking the right starting point matters more than most people expect. A tutorial that is too advanced leads to frustration; one that is too easy leads to boredom. Use this process to land on something that fits.
1

Choose a language you want to learn or already know

Every section in the catalog is anchored to a primary programming language. If you are picking up Go for the first time, head to the Go section. If you know Python and want to deepen it, Python has the largest section in the list. Start where you are, not where you think you should be.
2

Browse the category that matches your goal

Most language sections are subdivided by domain — web applications, bots, data science, machine learning, games, systems programming, and miscellaneous. Read the category headings and pick the domain that maps to what you actually want to build. Interest is a better filter than prestige.
3

Pick a project that interests you

Scan the tutorial titles and stop on the first one that makes you think “I want that to exist on my machine.” Completion rates for project-based tutorials track almost perfectly with how much the learner wanted the end result. A blockchain implementation you find fascinating will teach you more than a todo app you find boring, even if the todo app is technically simpler.
4

Check the tutorial's prerequisites and estimated complexity

Open the tutorial link and skim the introduction before committing. Most authors state what you need to know upfront. As a rough rule of thumb: systems tutorials (OS, compiler, emulator) assume strong fundamentals; web and app-clone tutorials are generally approachable for beginners. See the Skill Level Guide below for more detail.

Types of Tutorials

The catalog contains three broad formats. Knowing what you are getting into before you start helps you plan your time.
A single tutorial is a standalone article or page that walks you through an entire project from start to finish in one sitting. These are ideal when you want a result quickly or are exploring a new language without a major time investment.Examples:Single tutorials typically take between 30 minutes and a few hours to complete.

Getting the Most from a Tutorial

Following a tutorial and actually learning from it are two different things. These habits separate developers who retain knowledge from those who finish a tutorial and immediately forget what they built.
Typing every line of code — even boilerplate you fully understand — builds muscle memory and forces your brain to process each token individually. When you copy-paste, your eyes scan the code without your hands confirming it. The slight friction of typing is the learning mechanism. If a tutorial provides a GitHub repo as reference, open it only when you are genuinely stuck, not as a shortcut.
When you encounter a concept or a block of code that you do not fully understand, stop. Do not proceed to the next step hoping it will become clear later — it rarely does, and confusion compounds. Open a second tab, look up the unfamiliar function or concept, and satisfy yourself that you understand why the code works, not just that it works. This habit slows you down in the short term and accelerates you significantly over a career.
The tutorial gives you a foundation; your extensions turn it into learning that sticks. After completing a tutorial, pick one small feature to add that was not in the original scope. If you built a shell, add tab completion. If you built a blockchain, add a simple wallet. If you built a todo app, add due dates and sorting. This forces you to read the code you just wrote as an author rather than a transcriber, and to make decisions the tutorial never made for you.
A week after finishing a tutorial, open a blank editor and try to rebuild the same project from memory — without referencing the tutorial or your previous code. You will not remember everything, and that is the point. The gaps you discover are exactly what you need to review. Reconstructing from memory is the highest-fidelity test of whether you have internalized the concepts or merely copied them.

Skill Level Guide

Tutorials in this catalog are not labeled by difficulty level. The best way to gauge complexity is to read the first paragraph of the tutorial itself. As a general orientation:
  • Systems and low-level tutorials (operating systems, compilers, interpreters, emulators, debuggers, kernel modules) tend to assume strong fundamentals in computer science and memory management. They are typically advanced.
  • Web app and app-clone tutorials (todo apps, social media clones, chat apps, CRUD APIs) are generally beginner-to-intermediate friendly and assume little beyond basic language syntax.
  • Data science and machine learning tutorials sit in the middle — the math can be demanding, but libraries like scikit-learn and Keras abstract away most of the implementation complexity.
  • Multi-part series of 5 or more parts are almost always intermediate-to-advanced projects regardless of domain.
When in doubt, start the tutorial and read the introduction. If the prerequisites list things you have not encountered, bookmark it and come back after you have covered the gaps.

Build docs developers (and LLMs) love