build-your-own-x
Master programming by recreating your favorite technologies from scratch.
https://github.com/codecrafters-io/build-your-own-x
Last synced: 1 day ago
JSON representation
-
Origins & License
-
Tutorials
- **C++**: _Introduction to Ray Tracing: a Simple Method for Creating 3D Images_
- **C++**: _How OpenGL works: software rendering in 500 lines of code_
- **C++**: _Raycasting engine of Wolfenstein 3D_
- **C++**: _Ray Tracing in One Weekend_
- **C++**: _Rasterization: a Practical Implementation_
- **C# / TypeScript / JavaScript**: _Learning how to write a 3D soft engine from scratch in C#, TypeScript or JavaScript_
- **Java / JavaScript**: _Build your own 3D renderer_
- **Java**: _How to create your own simple 3D render engine in pure Java_
- **Python**: _A 3D Modeller_
- **C#**: _How To: Augmented Reality App Tutorial for Beginners with Vuforia and Unity 3D_
- **C#**: _How To Unity ARCore_
- **C#**: _AR Portal Tutorial with Unity_
- **C#**: _How to create a Dragon in Augmented Reality in Unity ARCore_
- **C#**: _How to Augmented Reality AR Tutorial: ARKit Portal to the Upside Down_
- **Python**: _Augmented Reality with Python and OpenCV_
- **C#**: _Building a BitTorrent client from scratch in C#_
- **Go**: _Building a BitTorrent client from the ground up in Go_
- **Nim**: _Writing a Bencode Parser_
- **Node.js**: _Write your own bittorrent client_
- **Python**: _A BitTorrent client in Python 3.5_
- **ATS**: _Functional Blockchain_
- **C#**: _Programming The Blockchain in C#_
- **Crystal**: _Write your own blockchain and PoW algorithm using Crystal_
- **Go**: _Building Blockchain in Go_
- **Go**: _Code your own blockchain in less than 200 lines of Go_
- **Java**: _Creating Your First Blockchain with Java_
- **JavaScript**: _Learn & Build a JavaScript Blockchain_
- **JavaScript**: _How To Launch Your Own Production-Ready Cryptocurrency_
- **JavaScript**: _Writing a Blockchain in Node.js_
- **Kotlin**: _Let’s implement a cryptocurrency in Kotlin_
- **Python**: _Learn Blockchains by Building One_
- **Python**: _Build your own blockchain: a Python tutorial_
- **Python**: _A Practical Introduction to Blockchain with Python_
- **Python**: _Let’s Build the Tiniest Blockchain_
- **Scala**: _How to build a simple actor-based blockchain_
- **TypeScript**: _Naivecoin: a tutorial for building a cryptocurrency_
- **TypeScript**: _NaivecoinStake: a tutorial for building a cryptocurrency with the Proof of Stake consensus_
- **Rust**: _Building A Blockchain in Rust & Substrate_
- **Haskell**: _Roll your own IRC bot_
- **Node.js**: _Creating a Simple Facebook Messenger AI Bot with API.ai in Node.js_
- **Node.js**: _How to make a responsive telegram bot_
- **Node.js**: _Create a Discord bot_
- **Node.js**: _gifbot - Building a GitHub App_
- **Node.js**: _Building A Simple AI Chatbot With Web Speech API And Node.js_
- **Python**: _How to Build Your First Slack Bot with Python_
- **Python**: _How to build a Slack Bot with Python using Slack Events API & Django under 20 minute_
- **Python**: _Build a Reddit Bot_
- **Python**: _How To Make A Reddit Bot_
- **Python**: _How To Create a Telegram Bot Using Python_
- **Python**: _Create a Twitter Bot in Python Using Tweepy_
- **Python**: _Creating Reddit Bot with Python & PRAW_
- **R**: _Build A Cryptocurrency Trading Bot with R_
- **Rust**: _A bot for Starcraft in Rust, C or any other language_
- **Go**: _Visualize your local git contributions with Go_
- **Go**: _Build a command line app with Go: lolcat_
- **Go**: _Building a cli command with Go: cowsay_
- **Go**: _Go CLI tutorial: fortune clone_
- **Nim**: _Writing a stow alternative to manage dotfiles_
- **Node.js**: _Create a CLI tool in Javascript_
- **Rust**: _Command line apps in Rust_
- **Rust**: _Writing a Command Line Tool in Rust_
- **C++**: _Build Your Own Redis from Scratch_
- **C#**: _Build Your Own Database_
- **Clojure**: _An Archaeology-Inspired Database_
- **Crystal**: _Why you should build your own NoSQL Database_
- **Go**: _Build Your Own Database from Scratch: From B+Tree To SQL in 3000 Lines_
- **Go**: _Build Your Own Redis from Scratch_
- **JavaScript**: _Dagoba: an in-memory graph database_
- **Python**: _DBDB: Dog Bed Database_
- **Python**: _Write your own miniature Redis with Python_
- **Ruby**: _Build your own fast, persistent KV store in Ruby_
- **Rust**: _Build your own Redis client and server_
- **C**: _Linux containers in 500 lines of code_
- **Go**: _Build Your Own Container Using Less than 100 Lines of Go_
- **Go**: _Building a container from scratch in Go_
- **C**: _Home-grown bytecode interpreters_
- **C**: _Virtual machine in C_
- **C**: _Write your Own Virtual Machine_
- **C**: _Writing a Game Boy emulator, Cinoop_
- **C++**: _How to write an emulator (CHIP-8 interpreter)_
- **C++**: _Emulation tutorial (CHIP-8 interpreter)_
- **C++**: _Emulation tutorial (GameBoy emulator)_
- **C++**: _Emulation tutorial (Master System emulator)_
- **C++**: _NES Emulator From Scratch_
- **Common Lisp**: _CHIP-8 in Common Lisp_
- **JavaScript**: _GameBoy Emulation in JavaScript_
- **Python**: _Emulation Basics: Write your own Chip 8 Emulator/Interpreter_
- **Node.js**: _Creating a Simple Facebook Messenger AI Bot with API.ai in Node.js_
- **R**: _Build A Cryptocurrency Trading Bot with R_
- **JavaScript**: _WTF is JSX (Let's Build a JSX Renderer)_
- **JavaScript**: _Building React From Scratch_
- **JavaScript**: _Gooact: React in 160 lines of JavaScript_
- **JavaScript**: _React Internals_
- **JavaScript**: _Learn how React Reconciler package works by building your own lightweight React DOM_
- **JavaScript**: _Build Yourself a Redux_
- **JavaScript**: _Let’s Write Redux!_
- **JavaScript**: _Redux: Implementing Store from Scratch_
- **JavaScript**: _Build Your own Simplified AngularJS in 200 Lines of JavaScript_
- **JavaScript**: _Make Your Own AngularJS_
- **JavaScript**: _How to write your own Virtual DOM_
- **JavaScript**: _Build your own React_
- **JavaScript**: _Building a Custom React Renderer_
- **C**: _Handmade Hero_
- **C**: _How to Program an NES game in C_
- **C**: _Chess Engine In C_
- **C**: _Let's Make: Dangerous Dave_
- **C**: _Learn Video Game Programming in C_
- **C**: _Coding A Sudoku Solver in C_
- **C**: _Coding a Rogue/Nethack RPG in C_
- **C**: _On Tetris and Reimplementation_
- **C++**: _Breakout_
- **C++**: _Tetris tutorial in C++ platform independent focused in game logic for beginners_
- **C++**: _Remaking Cavestory in C++_
- **C++**: _Reconstructing Cave Story_
- **C++**: _Space Invaders from Scratch_
- **C#**: _Creating a Roguelike Game in C#_
- **C#**: _Build a C#/WPF RPG_
- **Go**: _Games With Go_
- **Java**: _Code a 2D Game Engine using Java - Full Course for Beginners_
- **Java**: _3D Game Development with LWJGL 3_
- **JavaScript**: _2D breakout game using Phaser_
- **JavaScript**: _How to Make Flappy Bird in HTML5 With Phaser_
- **JavaScript**: _Developing Games with React, Redux, and SVG_
- **JavaScript**: _Build your own 8-Ball Pool game from scratch_
- **JavaScript**: _How to Make Your First Roguelike_
- **JavaScript**: _Think like a programmer: How to build Snake using only JavaScript, HTML & CSS_
- **Python**: _Developing Games With PyGame_
- **Python**: _Making Games with Python & Pygame_
- **Python**: _Roguelike Tutorial Revised_
- **Ruby**: _Developing Games With Ruby_
- **Ruby**: _Ruby Snake_
- **Rust**: _Adventures in Rust: A Basic 2D Game_
- **Haskell**: _Reimplementing “git clone” in Haskell from the bottom up_
- **JavaScript**: _Gitlet_
- **JavaScript**: _Build GIT - Learn GIT_
- **Python**: _Just enough of a Git client to create a repo, commit, and push itself to GitHub_
- **Python**: _Write yourself a Git!_
- **Python**: _ugit: Learn Git Internals by Building Git Yourself_
- **Ruby**: _Rebuilding Git in Ruby_
- **C**: _Let's code a TCP/IP stack_
- **Ruby**: _How to build a network stack in Ruby_
- **C#**: _Neural Network OCR_
- **F#**: _Building Neural Networks in F#_
- **Go**: _Build a multilayer perceptron with Golang_
- **Go**: _How to build a simple artificial neural network with Go_
- **Go**: _Building a Neural Net from Scratch in Go_
- **JavaScript / Java**: _Neural Networks - The Nature of Code_
- **JavaScript**: _Neural networks from scratch for JavaScript linguists (Part1 — The Perceptron)_
- **Python**: _A Neural Network in 11 lines of Python_
- **Python**: _Implement a Neural Network from Scratch_
- **Python**: _Optical Character Recognition (OCR)_
- **Python**: _Traffic signs classification with a convolutional network_
- **Python**: _Generate Music using LSTM Neural Network in Keras_
- **Python**: _An Introduction to Convolutional Neural Networks_
- **Python**: _Neural Networks: Zero to Hero_
- **Assembly**: _Writing a Tiny x86 Bootloader_
- **C**: _Building a software and hardware stack for a simple computer from scratch_
- **C**: _The little book about OS development_
- **C**: _Roll your own toy UNIX-clone OS_
- **C**: _Hack the virtual memory_
- **C**: _Operating systems development for Dummies_
- **C++**: _Writing a Bootloader_
- **Rust**: _Writing an OS in Rust_
- **Rust**: _Add RISC-V Rust Operating System Tutorial_
- **(any)**: Linux from scratch
- **C**: _Video Game Physics Tutorial_
- **C++**: _Game physics series by Allen Chou_
- **C++**: _How to Create a Custom Physics Engine_
- **C++**: _3D Physics Engine Tutorial_
- **JavaScript**: _How Physics Engines Work_
- **JavaScript**: _Broad Phase Collision Detection Using Spatial Partitioning_
- **Assembly**: _Jonesforth_
- **C**: _Baby's First Garbage Collector_
- **C**: _Writing a Simple Garbage Collector in C_
- **C++**: _Writing Your Own Toy Compiler Using Flex_
- **C++**: _How to Create a Compiler_
- **C++**: _Kaleidoscope: Implementing a Language with LLVM_
- **F#**: _Understanding Parser Combinators_
- **Elixir**: _Demystifying compilers by writing your own_
- **Go**: _Lexical Scanning in Go_
- **Haskell**: _Write You a Haskell_
- **Haskell**: _Write Yourself a Scheme in 48 Hours_
- **Haskell**: _Write You A Scheme_
- **Java**: _Crafting interpreters: A handbook for making programming languages_
- **Java**: _Creating JVM Language_
- **JavaScript**: _Little Lisp interpreter_
- **JavaScript**: _Let’s go write a Lisp_
- **OCaml**: _Writing a C Compiler_
- **OCaml**: _Writing a Lisp, the series_
- **Pascal**: _Let's Build a Compiler_
- **Python**: _A Python Interpreter Written in Python_
- **Python**: _lisp.py: Make your own Lisp interpreter_
- **Python**: _How to Write a Lisp Interpreter in Python_
- **Python**: _Let’s Build A Simple Interpreter_
- **Python**: _Make Your Own Simple Interpreted Programming Language_
- **Python**: _From Source Code To Machine Code: Build Your Own Compiler From Scratch_
- **Racket**: _Beautiful Racket: How to make your own programming languages with Racket_
- **Ruby**: _A Compiler From Scratch_
- **Ruby**: _Markdown compiler from scratch in Ruby_
Programming Languages
Categories
Sub Categories
Keywords
tutorial
6
c
4
javascript
4
blockchain
2
data-structures
2
python
2
chatgpt
1
gpt
1
large-language-models
1
llm
1
pytorch
1
compiler
1
lexical-analysis
1
parsing
1
arm
1
armv8
1
assembler
1
education
1
kernel
1
learn
1
linux-kernel
1
operating-system
1
osdev
1
raspberry-pi
1
raspberry-pi-3
1
raspberry-pi-os
1
resource
1
bash
1
c-plus-plus
1
c-sharp
1
clojure
1
docker
1
java
1
learn-to-code
1
lisp
1
lisp-interpreter
1
makefile
1
mal
1
php
1
r
1
ruby
1
scala
1
swift
1
webassembly
1
algorithm
1
algorithms
1
computer-science
1
interview
1
interview-preparation
1
javascript-algorithms
1