# Building 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](https://github.com/johnkazer) (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](https://2076431661-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LtQ_egtFIEoyBbUI1AW%2F-LtRIW0QV-W1i4Lx0IdY%2F-LtRJ50lkXG6lNPjoLID%2Ffull-stack.png?alt=media\&token=c626a4ab-b34c-49b0-be4c-234931872386)

{% hint style="info" %}
&#x20;'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.
{% endhint %}

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](https://johnkazer.gitbook.io/core-web-dev-concepts/setup/chrome-dev-tools).
