Saturday, November 14, 2015

Raspberry Pi: Full Stack: A whirlwind tour of full-stack web application development on the Raspberry Pi

The objective of this book is to take you to a whirlwind tour of the Raspberry Pi, and introduce you to everything that is great about it.

Raspberry Pi: Full Stack: A whirlwind tour of full-stack web application development on the Raspberry Pi

This book is written as a project guide. By working towards completing this project, you will become familiar with the various components that make up the web development stack: the operating system, the hardware (including the GPIOs), the application server, web server, database server, and the Python programming language.

You will also become familiar with Cloud services that you will integrate into your Raspberry Pi-powered web application.

You application will take sensor data and make them available to the user via a web interface that is constructed based on jQuery and HTML5.

You will need a Raspberry Pi, a DHT22 sensor, a button, an LED, a few resistors and a breadboard. If you wish to setup wireless networking on your Raspberry Pi, you will also need a USB Wifi dongle.

To make the most from this course, you should be familiar with basic programming and be comfortable with the command line.

This is what you will learn:
* Setup the minimal Raspbian operating system to the RPi.
* Install the a Python virtual environment.
* Install and use Flask, a Python-based web micro-framework
* Install and use uWSGI as the application server for Flask
* Install and use Nginx light-weight web server
* Use the RPi GPIOs as digital input and outputs
* Use a DHT22 humidity and temperature sensor
* Install and use the SQLite database
* Use the Google Chart API to create visual representations of the sensor data
* Use JQuery to add interactivity to web pages
* Use Plotly for graphical analysis of sensor data
* Install and configure a USB Wifi adaptor for your RPi

To complete the project, you will need these materials:
* A Raspberry Pi, any version
* A Windows, Mac or Linux computer
* A DHT11 or DHT22 sensor
* An 5mm LED
* Resistors
* A breadboard and jumper wires
* Access to the Internet
* A USB Wifi dongle, if available

No comments: