Here's another project that was posted here a while back that goes into details explaining different waveforms with examples. It's titled "SEEING CIRCLES, SINES, AND SIGNALS
A COMPACT PRIMER ON DIGITAL SIGNAL PROCESSING". It's really well put together.
http://jackschaedler.github.io/circles-sines-signals/dft_int...