The first commit of v1 was in Oct 2022, so it's been about four years.
Just looked at a few more metrics:
v1 was 148 commits over about a year; gave up when it came to TTF font parsing and rendering.
v2 was 1075 commits over 3 months and in C++, gave up after doing sockets but realizing that TLS and crypto was going to be required. I also strongly disliked the C++ codebase :-)
The current repo is v3 and back in C, started in Oct 2024 (2 years), and it's 4822 commits. About 600 .c and .h files, about 68k lines of code (14k blank, 7k comments).
I had a lot of previous experience with networking and systems programming, but not with rendering.
The first commit of v1 was in Oct 2022, so it's been about four years.
Just looked at a few more metrics:
v1 was 148 commits over about a year; gave up when it came to TTF font parsing and rendering.
v2 was 1075 commits over 3 months and in C++, gave up after doing sockets but realizing that TLS and crypto was going to be required. I also strongly disliked the C++ codebase :-)
The current repo is v3 and back in C, started in Oct 2024 (2 years), and it's 4822 commits. About 600 .c and .h files, about 68k lines of code (14k blank, 7k comments).
I had a lot of previous experience with networking and systems programming, but not with rendering.
A huge inspiration was https://guide.handmadehero.org/ and Bob Nystrom's https://www.craftinginterpreters.com. I wanted to create a similar book and video series, but by building a browser.