A curated list of open content for "building your own sth". 🛠
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


awesome-byo Awesome CodeOfConduct

A curated list of open content for building your own sth.

Because there is no better way to understand how sth works than building your own version of that thing.

BYO for short


  • BYO Game Engine - Learn how game engines work, essential data structures and grafic manipulation while building your very own Game Engine.

  • BYO Pac man - A tutorial for building a Pac Man game while learning advanced Javascript techniques.

  • BYO Tic Tac Toe - Build your own Tic Tac Toe game and with a very simple AI allowing to play the game against the computer.

Programming Languages

  • BYO Javascript - Learn the concepts of language design while building your own very basic interpreter in Javascript.

  • BYO Lisp - Learn the C programming language and at the same time learn how to build your very own programming language.

  • BYO Pascal - Build your own simple Pascal interpreter using Python.

  • BYO Python - Understand how bitecode works while writing a Python interpreter in Python.

  • BYO Scheme - Learn everything about functional programming while building your own Scheme interpreter in Haskell.

Software Development

  • BYO Browser Engine - Understand what happens inside a browser engine like Blink, Gecko, WebKit and Servo plus build your very own from scratch.

  • BYO Indexed Database - Build a simple database using B-tree algorithms for searching and learn how indexes work.

  • BYO Nginx - A serie of posts explaining how to build a reverse proxy/loadbalancer like Nginx in C

  • BYO NoSQL - Learn the fundamentals and how a simple key-value databases work plus build your very own NoSQL database.

  • BYO React - Create a full working version of react step by step in plain Javascript.

  • BYO Regex Engine - Learn by analizing a Rob Pike's implementation of a Regex Engine and step by step build your own engine.

  • BYO Router - Build your own Router (also known as a mux) in Go like many frameworks implement out there.

  • BYO Search Engine - Build your own simple search engine like Elasticsearch in Python.

  • BYO Virtual DOM - Understand how the Virtual DOM works writing one version in less than ~50 lines of code.

  • BYO Webserver - Step by step learn how to build a web server from scratch.


  • BYO Container - Write your own version of Linux Containers in less than 100 lines of Go.

  • BYO Kernel - Tutorial to write a simple kernel for 32-bit x86 and boot it. This is the first step in creating your own operating system.

  • BYO Operating System - Learn how to build from scratch step by step your own Operating System Unix like.

  • BYO QT Terminal - Tutorial of how to write a QT based terminal in C++.

  • BYO Rich Command Line - Build your own Command Line with ANSI escape codes from scratch with Python.

  • BYO Shell - It is a walkthrough on how to write your own simplistic Unix shell in C.

  • BYO Text Editor - This booklet walks you through building the editor in 184 steps. Each step, you’ll add, change, or remove a few lines of code.

  • BYO Virtual CPU - Write your own Virtual CPU in C++.

  • BYO Window Manager - A series of posts that aim to demystify how window managers work and how you might go about writing one yourself. (incomplete)


  • BYO Calculator - Serie of videos for building a calculator using Javascript.

License CC0

This work is licensed under a CC0 1.0 Universal (CC0 1.0).