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.

C and C++ remain the languages of choice for systems programming, embedded development, and performance-critical software. From writing your own operating system kernel to building compilers, emulators, and 3D renderers, these tutorials guide you through projects that expose the inner workings of computers at a low level. Whether you want to understand memory allocation, implement a TCP/IP stack from scratch, or create a playable game with OpenGL, the projects below offer hands-on experience with the concepts that underpin modern software.

Compilers & Interpreters

Build lexers, parsers, code generators, JIT compilers, and full language implementations.

Operating Systems & Kernels

Write kernels, bootloaders, virtual machines, and Linux containers from scratch.

Games & Graphics

Create games with SDL and OpenGL, build ray tracers, and explore real-time rendering.

Networking & Data Structures

Implement TCP/IP stacks, concurrent servers, MQTT brokers, and key-value stores.

Compilers & Interpreters

Operating Systems & Kernels

Games & Graphics

OpenGL

Network Programming

Other C/C++ Tutorials

New to C/C++? Start with Write a Shell in C or Build Your Own Text Editor — both are approachable projects that teach core systems concepts.

Build docs developers (and LLMs) love