Compare commits

...

25 Commits

Author SHA1 Message Date
Sarup Banskota
294aef8fde Merge pull request #1398 from NikoPit/patch-1
"Java voxel game" video unavalible  anymore
2026-02-21 01:34:54 -08:00
Sarup Banskota
80abb7e870 Merge pull request #1403 from RyanB28/patch-1
Removed broken link
2026-02-21 01:34:50 -08:00
Sarup Banskota
08fe81bce6 Merge pull request #1538 from Velnbur/master
Fix link to "F#: Building Neural Networks in F#", add both parts
2026-02-21 01:34:46 -08:00
Sarup Banskota
d9743c94e2 Merge pull request #1567 from jiminjungg/docs/python-reddit-bot-page
docs: update Python Reddit bot tutorial link
2026-02-21 01:34:42 -08:00
Sarup Banskota
fbba4447b3 Merge pull request #1543 from xames3/xames3/build-your-own-neural-network
feat: add SlowTorch for building Neural Networks from scratch
2026-02-21 01:34:19 -08:00
Sarup Banskota
bed0d298e2 Merge pull request #1385 from buildthingsuseful/master
Added Build Your Own Kafka
2026-02-21 01:34:15 -08:00
Sarup Banskota
54d67ce557 Merge pull request #1393 from cristiano-belloni/cristiano-belloni-patch-2
Update README. to add sync engine blog post
2026-02-21 01:34:12 -08:00
Sarup Banskota
e479a67cd4 Merge pull request #1425 from AlejandroFNadal/master
Adding section for memory allocators and adding a first tutorial for it
2026-02-21 01:34:08 -08:00
Sarup Banskota
5c2d8b9a08 Merge pull request #1553 from darshilshah7070/patch-2
Adding new section For Processor Design
2026-02-21 01:34:04 -08:00
Sarup Banskota
6709743e14 Merge pull request #1504 from rasbt/build-your-own-ai-model
Add section: Build your own AI Model
2026-02-21 01:34:01 -08:00
Vencyr Laurence Imbo Amores
d5c42e04d8 Updated banner 2026-02-21 16:16:16 +08:00
Jimin Jung
30b2242b10 docs: update Python Reddit bot tutorial link 2025-10-02 15:24:03 -07:00
Darshil Shah
bc7a5d6daf Adding new section For Processor Design 2025-09-06 18:10:26 +05:30
Akshay Mestry
195a6150e0 feat: add SlowTorch for building Neural Networks from scratch
Signed-off-by: Akshay Mestry <xa@mes3.dev>
2025-08-23 21:02:19 -05:00
Kyrylo Baibula
4042ba8d90 Add Part 2 of "F#: Building Neural Networks in F#" 2025-08-18 18:23:48 +03:00
Kyrylo Baibula
08ded23660 Update link of "F#: Building Neural Networks in F#" 2025-08-18 18:04:03 +03:00
Sebastian Raschka
13ead245b4 Fix formatting 2025-07-05 18:14:43 -05:00
rasbt
048cd3b3de Build your own AI Model section 2025-07-05 18:13:00 -05:00
alejandro.nadal@synics.ch
923dc62391 added index element for new section 2025-06-28 15:33:01 +02:00
alejandro.nadal@synics.ch
2fb5a067df Adding section for memory allocators and adding a first tutorial for it 2025-04-26 16:20:28 +02:00
Ryan B
22707aa3b6 Removed broken link 2025-04-01 10:14:39 +02:00
NikoPit
e9fa6e543b "Build your own voxel engine" video unavalible anymore 2025-03-29 19:34:36 +08:00
Cristiano Belloni
23e8a45498 Typo 2025-03-22 22:29:16 +00:00
Cristiano Belloni
f372828cb3 Update README. to add sync engine blog post 2025-03-22 17:47:08 +00:00
Raghav
363261be5f Added Build Your Own Kafka 2025-03-12 23:09:04 -07:00

View File

@@ -1,4 +1,4 @@
[![Banner](https://codecrafters.io/images/updated-byox-banner.gif)](https://codecrafters.io/github-banner) [![Banner](https://codecrafters.io/images/new-ccgithub-banner.png)](https://codecrafters.io/github-banner)
## Build your own &lt;insert-technology-here&gt; ## Build your own &lt;insert-technology-here&gt;
@@ -9,6 +9,7 @@ This repository is a compilation of well-written, step-by-step guides for re-cre
It's a great way to learn. It's a great way to learn.
* [3D Renderer](#build-your-own-3d-renderer) * [3D Renderer](#build-your-own-3d-renderer)
* [AI Model](#ai-model)
* [Augmented Reality](#build-your-own-augmented-reality) * [Augmented Reality](#build-your-own-augmented-reality)
* [BitTorrent Client](#build-your-own-bittorrent-client) * [BitTorrent Client](#build-your-own-bittorrent-client)
* [Blockchain / Cryptocurrency](#build-your-own-blockchain--cryptocurrency) * [Blockchain / Cryptocurrency](#build-your-own-blockchain--cryptocurrency)
@@ -20,10 +21,12 @@ It's a great way to learn.
* [Front-end Framework / Library](#build-your-own-front-end-framework--library) * [Front-end Framework / Library](#build-your-own-front-end-framework--library)
* [Game](#build-your-own-game) * [Game](#build-your-own-game)
* [Git](#build-your-own-git) * [Git](#build-your-own-git)
* [Memory Allocator](#build-your-own-memory-allocator)
* [Network Stack](#build-your-own-network-stack) * [Network Stack](#build-your-own-network-stack)
* [Neural Network](#build-your-own-neural-network) * [Neural Network](#build-your-own-neural-network)
* [Operating System](#build-your-own-operating-system) * [Operating System](#build-your-own-operating-system)
* [Physics Engine](#build-your-own-physics-engine) * [Physics Engine](#build-your-own-physics-engine)
* [Processor](#build-your-own-processor)
* [Programming Language](#build-your-own-programming-language) * [Programming Language](#build-your-own-programming-language)
* [Regex Engine](#build-your-own-regex-engine) * [Regex Engine](#build-your-own-regex-engine)
* [Search Engine](#build-your-own-search-engine) * [Search Engine](#build-your-own-search-engine)
@@ -38,6 +41,9 @@ It's a great way to learn.
## Tutorials ## Tutorials
#### Build your own `Distributed Systems`
* [**Java**: _Building Your Own Kafka-like System From Scratch: A Step-by-Step Guide_](https://github.com/buildthingsuseful/build-your-own-kafka)
#### Build your own `3D Renderer` #### Build your own `3D Renderer`
* [**C++**: _Introduction to Ray Tracing: a Simple Method for Creating 3D Images_](https://www.scratchapixel.com/lessons/3d-basic-rendering/introduction-to-ray-tracing/how-does-it-work) * [**C++**: _Introduction to Ray Tracing: a Simple Method for Creating 3D Images_](https://www.scratchapixel.com/lessons/3d-basic-rendering/introduction-to-ray-tracing/how-does-it-work)
@@ -52,6 +58,11 @@ It's a great way to learn.
* [**JavaScript / Pseudocode**: _Computer Graphics from scratch_](http://www.gabrielgambetta.com/computer-graphics-from-scratch/introduction.html) * [**JavaScript / Pseudocode**: _Computer Graphics from scratch_](http://www.gabrielgambetta.com/computer-graphics-from-scratch/introduction.html)
* [**Python**: _A 3D Modeller_](http://aosabook.org/en/500L/a-3d-modeller.html) * [**Python**: _A 3D Modeller_](http://aosabook.org/en/500L/a-3d-modeller.html)
#### Build your own `AI Model`
* [**Python**: _A Large Language Model (LLM)_](https://github.com/rasbt/LLMs-from-scratch)
* [**Python**: _Diffusion Models for Image Generation_](https://huggingface.co/learn/diffusion-course/en/unit1/3)
* [**Python**: _RAG for Document Search_](https://github.com/langchain-ai/rag-from-scratch)
#### Build your own `Augmented Reality` #### Build your own `Augmented Reality`
* [**C#**: _How To: Augmented Reality App Tutorial for Beginners with Vuforia and Unity 3D_](https://www.youtube.com/watch?v=uXNjNcqW4kY) [video] * [**C#**: _How To: Augmented Reality App Tutorial for Beginners with Vuforia and Unity 3D_](https://www.youtube.com/watch?v=uXNjNcqW4kY) [video]
@@ -72,7 +83,6 @@ It's a great way to learn.
#### Build your own `Blockchain / Cryptocurrency` #### Build your own `Blockchain / Cryptocurrency`
* [**ATS**: _Functional Blockchain_](https://beta.observablehq.com/@galletti94/functional-blockchain) * [**ATS**: _Functional Blockchain_](https://beta.observablehq.com/@galletti94/functional-blockchain)
* [**C#**: _Programming The Blockchain in C#_](https://programmingblockchain.gitbooks.io/programmingblockchain/)
* [**Crystal**: _Write your own blockchain and PoW algorithm using Crystal_](https://medium.com/@bradford_hamilton/write-your-own-blockchain-and-pow-algorithm-using-crystal-d53d5d9d0c52) * [**Crystal**: _Write your own blockchain and PoW algorithm using Crystal_](https://medium.com/@bradford_hamilton/write-your-own-blockchain-and-pow-algorithm-using-crystal-d53d5d9d0c52)
* [**Go**: _Building Blockchain in Go_](https://jeiwan.net/posts/building-blockchain-in-go-part-1/) * [**Go**: _Building Blockchain in Go_](https://jeiwan.net/posts/building-blockchain-in-go-part-1/)
* [**Go**: _Code your own blockchain in less than 200 lines of Go_](https://medium.com/@mycoralhealth/code-your-own-blockchain-in-less-than-200-lines-of-go-e296282bcffc) * [**Go**: _Code your own blockchain in less than 200 lines of Go_](https://medium.com/@mycoralhealth/code-your-own-blockchain-in-less-than-200-lines-of-go-e296282bcffc)
@@ -105,7 +115,7 @@ It's a great way to learn.
* [**Node.js**: _Building A Simple AI Chatbot With Web Speech API And Node.js_](https://www.smashingmagazine.com/2017/08/ai-chatbot-web-speech-api-node-js/) * [**Node.js**: _Building A Simple AI Chatbot With Web Speech API And Node.js_](https://www.smashingmagazine.com/2017/08/ai-chatbot-web-speech-api-node-js/)
* [**Python**: _How to Build Your First Slack Bot with Python_](https://www.fullstackpython.com/blog/build-first-slack-bot-python.html) * [**Python**: _How to Build Your First Slack Bot with Python_](https://www.fullstackpython.com/blog/build-first-slack-bot-python.html)
* [**Python**: _How to build a Slack Bot with Python using Slack Events API & Django under 20 minute_](https://medium.com/freehunch/how-to-build-a-slack-bot-with-python-using-slack-events-api-django-under-20-minute-code-included-269c3a9bf64e) * [**Python**: _How to build a Slack Bot with Python using Slack Events API & Django under 20 minute_](https://medium.com/freehunch/how-to-build-a-slack-bot-with-python-using-slack-events-api-django-under-20-minute-code-included-269c3a9bf64e)
* [**Python**: _Build a Reddit Bot_](http://pythonforengineers.com/build-a-reddit-bot-part-1/) * [**Python**: _Build a Reddit Bot_](https://pythonforengineers.com/blog/build-a-reddit-bot-part-1/)
* [**Python**: _How To Make A Reddit Bot_](https://www.youtube.com/watch?v=krTUf7BpTc0) [video] * [**Python**: _How To Make A Reddit Bot_](https://www.youtube.com/watch?v=krTUf7BpTc0) [video]
* [**Python**: _How To Create a Telegram Bot Using Python_](https://www.freecodecamp.org/news/how-to-create-a-telegram-bot-using-python/) * [**Python**: _How To Create a Telegram Bot Using Python_](https://www.freecodecamp.org/news/how-to-create-a-telegram-bot-using-python/)
* [**Python**: _Create a Twitter Bot in Python Using Tweepy_](https://medium.freecodecamp.org/creating-a-twitter-bot-in-python-with-tweepy-ac524157a607) * [**Python**: _Create a Twitter Bot in Python Using Tweepy_](https://medium.freecodecamp.org/creating-a-twitter-bot-in-python-with-tweepy-ac524157a607)
@@ -232,6 +242,10 @@ It's a great way to learn.
* [**Python**: _ugit: Learn Git Internals by Building Git Yourself_](https://www.leshenko.net/p/ugit/) * [**Python**: _ugit: Learn Git Internals by Building Git Yourself_](https://www.leshenko.net/p/ugit/)
* [**Ruby**: _Rebuilding Git in Ruby_](https://robots.thoughtbot.com/rebuilding-git-in-ruby) * [**Ruby**: _Rebuilding Git in Ruby_](https://robots.thoughtbot.com/rebuilding-git-in-ruby)
#### Build your own `Memory Allocator`
* [**C**: _Malloc is not magic -- Implementing your own memory allocator_](https://medium.com/p/e0354e914402)
#### Build your own `Network Stack` #### Build your own `Network Stack`
* [**C**: _Beej's Guide to Network Programming_](http://beej.us/guide/bgnet/) * [**C**: _Beej's Guide to Network Programming_](http://beej.us/guide/bgnet/)
@@ -242,7 +256,8 @@ It's a great way to learn.
#### Build your own `Neural Network` #### Build your own `Neural Network`
* [**C#**: _Neural Network OCR_](https://www.codeproject.com/Articles/11285/Neural-Network-OCR) * [**C#**: _Neural Network OCR_](https://www.codeproject.com/Articles/11285/Neural-Network-OCR)
* [**F#**: _Building Neural Networks in F#_](https://towardsdatascience.com/building-neural-networks-in-f-part-1-a2832ae972e6) * [**F#**: _Building Neural Networks in F#: Part 1_](https://medium.com/data-science/building-neural-networks-in-f-part-1-a2832ae972e6)
* [**F#**: _Building Neural Networks in F#: Part 2_](https://medium.com/data-science/building-neural-networks-in-f-part-2-training-evaluation-5e3a68889da6)
* [**Go**: _Build a multilayer perceptron with Golang_](https://made2591.github.io/posts/neuralnetwork) * [**Go**: _Build a multilayer perceptron with Golang_](https://made2591.github.io/posts/neuralnetwork)
* [**Go**: _How to build a simple artificial neural network with Go_](https://sausheong.github.io/posts/how-to-build-a-simple-artificial-neural-network-with-go/) * [**Go**: _How to build a simple artificial neural network with Go_](https://sausheong.github.io/posts/how-to-build-a-simple-artificial-neural-network-with-go/)
* [**Go**: _Building a Neural Net from Scratch in Go_](https://datadan.io/blog/neural-net-with-go) * [**Go**: _Building a Neural Net from Scratch in Go_](https://datadan.io/blog/neural-net-with-go)
@@ -255,6 +270,7 @@ It's a great way to learn.
* [**Python**: _Generate Music using LSTM Neural Network in Keras_](https://towardsdatascience.com/how-to-generate-music-using-a-lstm-neural-network-in-keras-68786834d4c5) * [**Python**: _Generate Music using LSTM Neural Network in Keras_](https://towardsdatascience.com/how-to-generate-music-using-a-lstm-neural-network-in-keras-68786834d4c5)
* [**Python**: _An Introduction to Convolutional Neural Networks_](https://victorzhou.com/blog/intro-to-cnns-part-1/) * [**Python**: _An Introduction to Convolutional Neural Networks_](https://victorzhou.com/blog/intro-to-cnns-part-1/)
* [**Python**: _Neural Networks: Zero to Hero_](https://www.youtube.com/playlist?list=PLAqhIrjkxbuWI23v9cThsA9GvCAUhRvKZ) * [**Python**: _Neural Networks: Zero to Hero_](https://www.youtube.com/playlist?list=PLAqhIrjkxbuWI23v9cThsA9GvCAUhRvKZ)
* [**Python**: _SlowTorch: Implementation of PyTorch from the ground up in 100% pure Python_](https://github.com/xames3/slowtorch)
#### Build your own `Operating System` #### Build your own `Operating System`
@@ -288,6 +304,10 @@ It's a great way to learn.
* [**JavaScript**: _Broad Phase Collision Detection Using Spatial Partitioning_](http://buildnewgames.com/broad-phase-collision-detection/) * [**JavaScript**: _Broad Phase Collision Detection Using Spatial Partitioning_](http://buildnewgames.com/broad-phase-collision-detection/)
* [**JavaScript**: _Build a simple 2D physics engine for JavaScript games_](https://developer.ibm.com/tutorials/wa-build2dphysicsengine/?mhsrc=ibmsearch_a&mhq=2dphysic) * [**JavaScript**: _Build a simple 2D physics engine for JavaScript games_](https://developer.ibm.com/tutorials/wa-build2dphysicsengine/?mhsrc=ibmsearch_a&mhq=2dphysic)
#### Build your own `Processor`
* [**Verilog**: _From Blinker to RISC-V_](https://github.com/BrunoLevy/learn-fpga/tree/master/FemtoRV/TUTORIALS/FROM_BLINKER_TO_RISCV)
#### Build your own `Programming Language` #### Build your own `Programming Language`
* [**(any)**: _mal - Make a Lisp_](https://github.com/kanaka/mal#mal---make-a-lisp) * [**(any)**: _mal - Make a Lisp_](https://github.com/kanaka/mal#mal---make-a-lisp)
@@ -450,6 +470,7 @@ It's a great way to learn.
* [**Node.js**: _Building A Simple Single Sign On(SSO) Server And Solution From Scratch In Node.js._](https://codeburst.io/building-a-simple-single-sign-on-sso-server-and-solution-from-scratch-in-node-js-ea6ee5fdf340) * [**Node.js**: _Building A Simple Single Sign On(SSO) Server And Solution From Scratch In Node.js._](https://codeburst.io/building-a-simple-single-sign-on-sso-server-and-solution-from-scratch-in-node-js-ea6ee5fdf340)
* [**Node.js**: _How to create a real-world Node CLI app with Node_](https://medium.freecodecamp.org/how-to-create-a-real-world-node-cli-app-with-node-391b727bbed3) * [**Node.js**: _How to create a real-world Node CLI app with Node_](https://medium.freecodecamp.org/how-to-create-a-real-world-node-cli-app-with-node-391b727bbed3)
* [**Node.js**: _Build a DNS Server in Node.js_](https://engineerhead.github.io/dns-server/) * [**Node.js**: _Build a DNS Server in Node.js_](https://engineerhead.github.io/dns-server/)
* [**Node.js**: _Build a Synchronization Engine with Node.js and Y.js_](https://greenvitriol.com/posts/sync-engine-for-everyone)
* [**PHP**: _Write your own MVC from scratch in PHP_ ](https://chaitya62.github.io/2018/04/29/Writing-your-own-MVC-from-Scratch-in-PHP.html) * [**PHP**: _Write your own MVC from scratch in PHP_ ](https://chaitya62.github.io/2018/04/29/Writing-your-own-MVC-from-Scratch-in-PHP.html)
* [**PHP**: _Make your own blog_](https://ilovephp.jondh.me.uk/en/tutorial/make-your-own-blog) * [**PHP**: _Make your own blog_](https://ilovephp.jondh.me.uk/en/tutorial/make-your-own-blog)
* [**PHP**: _Modern PHP Without a Framework_](https://kevinsmith.io/modern-php-without-a-framework) * [**PHP**: _Modern PHP Without a Framework_](https://kevinsmith.io/modern-php-without-a-framework)