mirror of
https://github.com/codecrafters-io/build-your-own-x.git
synced 2026-01-12 16:26:59 +00:00
Compare commits
3 Commits
master
...
135699c41e
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
135699c41e | ||
|
|
70530bdb2e | ||
|
|
2351d6d930 |
68
README.md
68
README.md
@@ -1,4 +1,4 @@
|
||||
[](https://codecrafters.io/github-banner)
|
||||
[](https://codecrafters.io/github-banner)
|
||||
|
||||
## Build your own <insert-technology-here>
|
||||
|
||||
@@ -8,33 +8,37 @@ This repository is a compilation of well-written, step-by-step guides for re-cre
|
||||
|
||||
It's a great way to learn.
|
||||
|
||||
* [3D Renderer](#build-your-own-3d-renderer)
|
||||
* [Augmented Reality](#build-your-own-augmented-reality)
|
||||
* [BitTorrent Client](#build-your-own-bittorrent-client)
|
||||
* [Blockchain / Cryptocurrency](#build-your-own-blockchain--cryptocurrency)
|
||||
* [Bot](#build-your-own-bot)
|
||||
* [Command-Line Tool](#build-your-own-command-line-tool)
|
||||
* [Database](#build-your-own-database)
|
||||
* [Docker](#build-your-own-docker)
|
||||
* [Emulator / Virtual Machine](#build-your-own-emulator--virtual-machine)
|
||||
* [Front-end Framework / Library](#build-your-own-front-end-framework--library)
|
||||
* [Game](#build-your-own-game)
|
||||
* [Git](#build-your-own-git)
|
||||
* [Network Stack](#build-your-own-network-stack)
|
||||
* [Neural Network](#build-your-own-neural-network)
|
||||
* [Operating System](#build-your-own-operating-system)
|
||||
* [Physics Engine](#build-your-own-physics-engine)
|
||||
* [Programming Language](#build-your-own-programming-language)
|
||||
* [Regex Engine](#build-your-own-regex-engine)
|
||||
* [Search Engine](#build-your-own-search-engine)
|
||||
* [Shell](#build-your-own-shell)
|
||||
* [Template Engine](#build-your-own-template-engine)
|
||||
* [Text Editor](#build-your-own-text-editor)
|
||||
* [Visual Recognition System](#build-your-own-visual-recognition-system)
|
||||
* [Voxel Engine](#build-your-own-voxel-engine)
|
||||
* [Web Browser](#build-your-own-web-browser)
|
||||
* [Web Server](#build-your-own-web-server)
|
||||
* [Uncategorized](#uncategorized)
|
||||
- [Table of Contents: Build your own X](#table-of-contents-build-your-own-x)
|
||||
- [Tutorials](#tutorials)
|
||||
- [Build your own `3D Renderer`](#build-your-own-3d-renderer)
|
||||
- [Build your own `Augmented Reality`](#build-your-own-augmented-reality)
|
||||
- [Build your own `BitTorrent Client`](#build-your-own-bittorrent-client)
|
||||
- [Build your own `Blockchain / Cryptocurrency`](#build-your-own-blockchain--cryptocurrency)
|
||||
- [Build your own `Bot`](#build-your-own-bot)
|
||||
- [Build your own `Command-Line Tool`](#build-your-own-command-line-tool)
|
||||
- [Build your own `Database`](#build-your-own-database)
|
||||
- [Build your own `Docker`](#build-your-own-docker)
|
||||
- [Build your own `Emulator / Virtual Machine`](#build-your-own-emulator--virtual-machine)
|
||||
- [Build your own `Front-end Framework / Library`](#build-your-own-front-end-framework--library)
|
||||
- [Build your own `Game`](#build-your-own-game)
|
||||
- [Build your own `Git`](#build-your-own-git)
|
||||
- [Build your own `Network Stack`](#build-your-own-network-stack)
|
||||
- [Build your own `Neural Network`](#build-your-own-neural-network)
|
||||
- [Build your own `Operating System`](#build-your-own-operating-system)
|
||||
- [Build your own `Physics Engine`](#build-your-own-physics-engine)
|
||||
- [Build your own `Programming Language`](#build-your-own-programming-language)
|
||||
- [Build your own `Regex Engine`](#build-your-own-regex-engine)
|
||||
- [Build your own `Search Engine`](#build-your-own-search-engine)
|
||||
- [Build your own `Shell`](#build-your-own-shell)
|
||||
- [Build your own `Template Engine`](#build-your-own-template-engine)
|
||||
- [Build your own `Text Editor`](#build-your-own-text-editor)
|
||||
- [Build your own `Visual Recognition System`](#build-your-own-visual-recognition-system)
|
||||
- [Build your own `Voxel Engine`](#build-your-own-voxel-engine)
|
||||
- [Build your own `Web Browser`](#build-your-own-web-browser)
|
||||
- [Build your own `Web Server`](#build-your-own-web-server)
|
||||
- [Uncategorized](#uncategorized)
|
||||
- [Contribute](#contribute)
|
||||
- [Origins \& License](#origins--license)
|
||||
|
||||
## Tutorials
|
||||
|
||||
@@ -123,7 +127,6 @@ It's a great way to learn.
|
||||
* [**Node.js**: _Create a CLI tool in Javascript_](https://citw.dev/tutorial/create-your-own-cli-tool)
|
||||
* [**Rust**: _Command line apps in Rust_](https://rust-cli.github.io/book/index.html)
|
||||
* [**Rust**: _Writing a Command Line Tool in Rust_](https://mattgathu.dev/2017/08/29/writing-cli-app-rust.html)
|
||||
* [**Zig**: _Build Your Own CLI App in Zig from Scratch_](https://rebuild-x.github.io/docs/#/./zig/terminal/cli)
|
||||
|
||||
|
||||
#### Build your own `Database`
|
||||
@@ -133,8 +136,7 @@ It's a great way to learn.
|
||||
* [**C#**: _Build Your Own Database_](https://www.codeproject.com/Articles/1029838/Build-Your-Own-Database)
|
||||
* [**Clojure**: _An Archaeology-Inspired Database_](http://aosabook.org/en/500L/an-archaeology-inspired-database.html)
|
||||
* [**Crystal**: _Why you should build your own NoSQL Database_](https://medium.com/@marceloboeira/why-you-should-build-your-own-nosql-database-9bbba42039f5)
|
||||
* [**Go**: _Build Your Own Database from Scratch: From B+Tree To SQL in 3000 Lines_](https://build-your-own.org/database/)
|
||||
* [**Go**: _Code a database in 45 steps: a series of test-driven small coding puzzles_](https://trialofcode.org/database/)
|
||||
* [**Go**: _Build Your Own Database from Scratch: Persistence, Indexing, Concurrency_](https://build-your-own.org/database/)
|
||||
* [**Go**: _Build Your Own Redis from Scratch_](https://www.build-redis-from-scratch.dev/)
|
||||
* [**JavaScript**: _Dagoba: an in-memory graph database_](http://aosabook.org/en/500L/dagoba-an-in-memory-graph-database.html)
|
||||
* [**Python**: _DBDB: Dog Bed Database_](http://aosabook.org/en/500L/dbdb-dog-bed-database.html)
|
||||
@@ -166,6 +168,7 @@ It's a great way to learn.
|
||||
* [**JavaScript**: _GameBoy Emulation in JavaScript_](http://imrannazar.com/GameBoy-Emulation-in-JavaScript)
|
||||
* [**Python**: _Emulation Basics: Write your own Chip 8 Emulator/Interpreter_](http://omokute.blogspot.com.br/2012/06/emulation-basics-write-your-own-chip-8.html)
|
||||
* [**Rust**: _0dmg: Learning Rust by building a partial Game Boy emulator_](https://jeremybanks.github.io/0dmg/)
|
||||
* [**Zig**: _Making a CHIP-8 emulator in Zig_](https://handling.website/archives/tag/zig)
|
||||
|
||||
#### Build your own `Front-end Framework / Library`
|
||||
|
||||
@@ -328,6 +331,7 @@ It's a great way to learn.
|
||||
* [**Racket**: _Beautiful Racket: How to make your own programming languages with Racket_](https://beautifulracket.com/)
|
||||
* [**Ruby**: _A Compiler From Scratch_](https://www.destroyallsoftware.com/screencasts/catalog/a-compiler-from-scratch)
|
||||
* [**Ruby**: _Markdown compiler from scratch in Ruby_](https://blog.beezwax.net/2017/07/07/writing-a-markdown-compiler/)
|
||||
* [**Rust**: _So You Want to Build a Language VM_](https://blog.subnetzero.io/post/building-language-vm-part-00/)
|
||||
* [**Rust**: _Learning Parser Combinators With Rust_](https://bodil.lol/parser-combinators/)
|
||||
* [**Swift**: _Building a LISP from scratch with Swift_](https://www.uraimo.com/2017/02/05/building-a-lisp-from-scratch-with-swift/)
|
||||
* [**TypeScript**: _Build your own WebAssembly Compiler_](https://blog.scottlogic.com/2019/05/17/webassembly-compiler.html)
|
||||
@@ -388,6 +392,7 @@ It's a great way to learn.
|
||||
#### Build your own `Voxel Engine`
|
||||
|
||||
* [**C++**: _Let's Make a Voxel Engine_](https://sites.google.com/site/letsmakeavoxelengine/home)
|
||||
* [**Java**: _Java Voxel Engine Tutorial_](https://www.youtube.com/watch?v=QZ4Vk2PkPZk&list=PL80Zqpd23vJfyWQi-8FKDbeO_ZQamLKJL) [video]
|
||||
|
||||
#### Build your own `Web Browser`
|
||||
|
||||
@@ -411,7 +416,6 @@ It's a great way to learn.
|
||||
#### Uncategorized
|
||||
|
||||
* [**(any)**: _From NAND to Tetris: Building a Modern Computer From First Principles_](http://nand2tetris.org/)
|
||||
* [**(any)**: build-your-own-x-vibe-coding: BYOX-style tutorials adapted for vibe coding](https://github.com/inFaaa/build-your-own-x-vibe-coding)
|
||||
* [**Alloy**: _The Same-Origin Policy_](http://aosabook.org/en/500L/the-same-origin-policy.html)
|
||||
* [**C**: _How to Write a Video Player in Less Than 1000 Lines_](http://dranger.com/ffmpeg/ffmpeg.html)
|
||||
* [**C**: _Learn how to write a hash table in C_](https://github.com/jamesroutley/write-a-hash-table)
|
||||
|
||||
Reference in New Issue
Block a user