No-Library (pure JS), HTML, CSS, JavaScript
From Chapter 5 of Writing Computer Code by Chris Minnick and Eva Holland.