Building a website of reasonable complexity

This guide is intended to be a step on from single-subject tutorials. It aims to cover all the technologies, acronyms, systems and tools I used to create 'a website of reasonable complexity'.

Disclaimer

Definitely a work in progress...

The original purpose of this book was to document the activities and concepts behind a project internal to my company - a sort of primer for technically-minded staff who are web-app noobs.

In principle you should be able to find examples most of the content in my open-source repositories (the Azure Cosmos database being a notable absence).

Motivation

Even a reasonably complex website uses a wide range of technology and concepts to create and host. This guide is intended to provide an overview, with pointers for further reading, of each one. In part I am trying to support the company I work for, in part remind myself of all the details and finally to provide a resource for others moving on from 'tutorial hell'.

A skeleton 'full-stack' app

'Full-stack' basically means development of an app encompassing all of the required 'layers' of the stack. A 'full-stack developer' is someone who (to some level of competence) can create or manage all of these layers.

For the impatient, you can get a quick view of the constituent parts of a website if you hit f12 in Chrome (desktop) and look at the 'Elements' and 'Sources' tabs of the DevTools.