This is a chapter-by-chapter progression through the excellent free ray-tracing books by Peter Shirley:
There are tags at each chapter and commits at each checkpoint within chapters.
If you're interested in graphics and ray tracing, this is a working example of a simple, easy-to-read ray tracer written in Go. It is built up piece-by-piece in concert with the chapters of the original C++ books by Peter Shirley.
If you're interested in Go, this is a fun, visual way to explore the language. It's fully documented and easy to change in order to create your own ray traced images.
$ git clone https://github.com/hunterloftis/oneweekend.git
$ cd oneweekend
$ git checkout oneweekend
$ go build ./cmd/trace
$ ./trace > cover.ppm && open cover.ppm
$ git clone https://github.com/hunterloftis/oneweekend.git
$ cd oneweekend
$ go build ./cmd/trace
$ ./trace > cover.ppm && open cover.ppm