Skip to content

pindjouf/fromthetransistor

 
 

Repository files navigation

From the Transistor to the Web Browser 🌐

A self-guided journey inspired by George Hotz's course, this project follows a comprehensive and hands-on approach to understanding the entire modern computing stack—from the fundamental transistor to building a functional web browser! Each section involves constructing key components, using tools like Verilog, Python, C, and Haskell while focusing on both hardware and software development. 🎯

Circuit board


📚 Course Overview

This project focuses on building a computing stack step by step, starting from hardware design, moving through processors, compilers, operating systems, and finally networking and browser technologies. To see the full roadmap and dive into each section, check out the course outline. 🛠️


🏃‍♂️ Progress Tracker

✅ Recently Completed

➡️ UART Implementation: The Universal Asynchronous Receiver-Transmitter (UART) module in Verilog is done! It taught the fundamentals of computer communication.

Task Progress
UART (Verilog) ✅ Completed
ARM CPU ⏳ Upcoming
Operating System ⏳ Upcoming
Web Browser ⏳ Upcoming

🌟 Project Goals

  • 🧑‍🏭 Design hardware from the ground up, starting with logic gates.
  • 🖥️ Build a custom ARM CPU and deeply understand its architecture.
  • 🛠️ Develop a custom OS, C compiler, and toolchain.
  • 🌐 Master networking by building a TCP stack.
  • 🌍 Construct a text-based web browser.
  • 🤖 Eventually run everything on an FPGA for a fully functional, real-world computing system.

About

Learning The Modern Computer Stack From First Principles

Resources

Stars

Watchers

Forks