Full Stack Web Development with Raspberry Pi 3
eBook - ePub

Full Stack Web Development with Raspberry Pi 3

  1. 214 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Full Stack Web Development with Raspberry Pi 3

About this book

Discover how to build full stack web applications with the Raspberry Pi 3About This Book• Leverage JavaScript, HTML5, and Cloud APIs to create visual representations and interactive web pages.• Learn to install and use a Node.js-based web framework to develop Raspberry Pi 3-powered web applications.• A step-by-step guide that will cover from setting up a embedded system to developing embedded, device-powered interactive web applications.Who This Book Is ForThis book is aimed at hobbyist, enthusiasts, and developers eager to develop embedded device-powered web applications. Prior programming experience with JavaScript, HTML5, and Node.JS will be beneficial.What You Will Learn• Get up and running with your Raspberry Pi• Go full stack! Learn about the end-to-end development process for web applications, right from the OS up to the actual HTML web interface• Discover that JavaScript is one of the fastest growing languages today, and is the only language that can be used both on a browser and server. This book will empower you to develop in a complete JavaScript stack• See that the IoT is everywhere!Connect your application to the outside world. Make use of sensors in your Raspberry Pi to give your application an edge, and unleash the full power of the Internet of Things• Build a rich UI with beautiful charts and data visualizations that can run on any browser• Make your software data-driven. Learn how to utilize SQLite to collect and analyze data from multiple systemsIn DetailModern 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.Style and approachStep-by-step instructions on developing a full stack web application and deploying it to the Cloud.

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Full Stack Web Development with Raspberry Pi 3 by Soham Kamani in PDF and/or ePUB format, as well as other popular books in Computer Science & Hardware. We have over one million books available in our catalogue for you to explore.

Information

Enhancing Our UI - Using Interactive Charts

An important thing to note during the development of any application is that the experience of the user is paramount. In the end, all we are really doing when we make applications is valuing our users' time. If we manage to save the user some effort in thinking or understanding some piece of data, we know we are moving in the right direction.
In the previous chapter, this is exactly what we were focusing on by combining the temperature and humidity readings into a single interface and, after that, by highlighting the relevant pieces of information through the modification of size and color by using CSS.
In this chapter, we will be continuing with the concept of user experience improvement by introducing advanced UI elements such as charts, which will help us interpret and understand the data even further.
Here's what we will be covering in this chapter:
  • Introducing the the Chart.js library
  • Building HTML5 charts using the Chart.js library
  • Enhancing our server to provide consumable responses
  • Injecting our sensor data into our chart

Considerations when implementing complex features

When it comes to building complex features in any software application, it often boils down to two options:
  • Building each feature from scratch, thoroughly testing and integrating it into your application
  • Using an existing library that has already taken care of the preceding point
Each option has its own trade-offs. If we decide to implement a feature and build it from scratch, we will have full control over what happens, and can customize it the way we like without any dependency. However, we must also take into consideration the time and effort that we will have to spend in building it. Even after spending months, there may still be scenarios and optimizations that we did not think of. These will, of course, be fixed as time passes, but this is time that could be spent elsewhere.
In contrast, we have numerous libraries available in the open source ecosystem at our disposal. Many smart people have spent time to develop code that we can reuse for our own purposes...

Table of contents

  1. Title Page
  2. Copyright
  3. Credits
  4. About the Author
  5. About the Reviewers
  6. www.PacktPub.com
  7. Customer Feedback
  8. Preface
  9. Getting Started on the Raspberry Pi
  10. Getting Up-and-Running with Web Development on the Raspberry Pi
  11. Running a Node Server on the Pi
  12. Extracting Information from the GPIO Pins
  13. Retrieving Sensor Readings from the Server
  14. Creating a Web Page to Display Sensor Data
  15. Enhancing Our UI - Using Interactive Charts
  16. SQLite - The Fast and Portable Database
  17. Integrating SQLite into Our Application
  18. Making our Application Real Time with Web Sockets
  19. Deploying our application to Firebase
  20. Using Firebase APIs to Update Our Application