Book Image

Full Stack Web Development with Raspberry Pi 3

By : Soham Kamani
Book Image

Full Stack Web Development with Raspberry Pi 3

By: Soham Kamani

Overview of this book

Modern web technology and portable computing together have enabled huge advances in the Internet of Things (IoT) space,as well as in areas such as machine learning and big data. The Raspberry Pi is a very popular portable computer for running full stack web applications. This book will empower you to master this rapidly evolving technology to develop complex web applications and interfaces. This book starts by familiarizing you with the various components that make up the web development stack and that will integrate into your Raspberry Pi-powered web applications. It also introduces the Raspberry Pi computer and teach you how to get up and running with a brand new one. Next, this book introduces you to the different kinds of sensor you’ll use to make your applications; using these skills, you will be able to create full stack web applications and make them available to users via a web interface. Later, this book will also teach you how to build interactive web applications using JavaScript and HTML5 for the visual representation of sensor data. Finally, this book will teach you how to use a SQLite database to store and retrieve sensor data from multiple Raspberry Pi computers. By the end of this book you will be able to create complex full stack web applications on the Raspberry Pi 3 and will have improved your application’s performance and usability.
Table of Contents (13 chapters)
2
Getting Up-and-Running with Web Development on the Raspberry Pi

Visually enhancing the UI

Our UI works, and we have async XHR calls going for us, but it still feels like something is missing, probably because our UI just looks very plain:

In this section, we will use HTML and CSS to make it look a lot better. We will also establish a layout structure that we can then use through out the next chapters as well.

When deciding a layout for the applications UI, it's always better to make a rough structure before you jump into coding:

Our overall application will have a title bar and two displays to display the temperature and humidity.

We can drill-down into the details of each display:

  • We want each sensor display to show the physical quantity that it is measuring, its value, and its unit.
  • We want to emphasize the value of the reading more than anything else, so we make it the largest.
    • The quantity and unit are more or less fixed and...