<p><span>Discover how to construct real-time applications with Python and Django without the hassle of learning JavaScript</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Learn to put together an SPA using Python and very little JavaScript</span></span></li><li><span><span>Create Web
Building SPAs with Django and HTML Over the Wire: Learn to build real-time single page applications with Python
โ Scribed by Andros Fenollosa
- Publisher
- Packt Publishing
- Year
- 2022
- Tongue
- English
- Leaves
- 264
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
Discover how to construct real-time applications with Python and Django without the hassle of learning JavaScript
Key Features
- Learn to put together an SPA using Python and very little JavaScript
- Create WebSocket communication between the backend and frontend
- Build a real-world project with Django using the techniques provided in this book
Book Description
The HTML over WebSockets approach simplifies single-page application (SPA) development and lets you bypass learning a JavaScript rendering framework such as React, Vue, or Angular, moving the logic to Python. This web application development book provides you with all the Django tools you need to simplify your developments with real-time results.
You'll learn state-of-the-art WebSocket techniques to realize real-time applications with minimal reliance on JavaScript. This book will also show you how to create a project with Docker from the ground up, test it, and deploy it on a server. You'll learn how to create a project, add Docker, and discover development libraries, Django channels, and bidirectional communication, and from then, on you'll create real projects of all kinds using HTML over WebSockets as a chat app or a blog with real-time comments. In addition, you'll modernize your development techniques by moving from using an SSR model to creating web pages using WebSockets over HTML. With Django, you'll be able to create SPAs with professional real-time projects where the logic is in Python.
By the end of this Django book, you'll be able to build real-time applications, as well as gaining a solid understanding of WebSockets with Django.
What you will learn
- Explore real-time site realization
- Understand the proper use of Django channels
- Find out how to set up Docker with Django
- Discover how to use a JavaScript framework such as Stimulus
- Manage a database asynchronously in Django
- Bring dynamic rendering logic to the backend
Who this book is for
This book is for developers looking to build applications where they want to bring logic to the backend, learn WebSockets, and not depend on JavaScript heavily to create a single-page application. Basic knowledge of HTML and Python and familiarity with basic web development concepts is expected.
Table of Contents
- Setting up the Virtual Environment
- Creating a Django Project around Docker
- Adding WebSockets to Django
- Working with the Database
- Separating Communication in Rooms
- Creating SPAs on the Backends
- Creating a Real-Time Blog Using Only Django
- Simplifying the Frontend
โฆ Table of Contents
Cover
Title Page
Copyright
Dedication
Preface
Foreword
Contributors
Table of Contents
Preface
Part 1: Getting Started with Python
Chapter 1: Setting up the Virtual Environment
Exploring the software required
Operating system
Code editor
Python
Docker
Git
Browser
Adding dependencies
Configuring the IDE
Installing Django
Creating our project
Summary
Chapter 2: Creating a Django Project around Docker
Technical requirements
Exploring the containers used for building our app
Adding the Django service
Creating a Django launcher
Configuring the databases
Connecting Django to a web server
Adding a fake SMTP mail server
Testing for correct operation
Caddy and Django
MailHog
Summary
Part 2: WebSockets in Django
Chapter 3: Adding WebSockets to Django
Technical requirements
Creating our first page with Daphne
Listening to events with consumers
Sending plain text from the backend
Sending JSON from the backend
Example project โ Generating a ticket of random numbers
Receiving JSON in the frontend
Example project โ Checking for matching numbers
Rendering HTML in the backend
Summary
Chapter 4: Working with the Database
Technical requirements
Inserting information into the database
Rendering database information
Limiting queries with a pager
Deleting rows from a database
Updating rows in a database
Summary
Chapter 5: Separating Communication in Rooms
Technical requirements
Basic functions for managing Channels
Creating a full Chat
Defining the database
Generating random users
Integrating HTML and styles
Defining CSS styles
Creating the view
Declaring JavaScript to listen to messages or send them
Building a Consumer to manage groups
Summary
Part 3: HTML over WebSockets
Chapter 6: Creating SPAs on the Backends
Technical requirements
Switching between pages
Server-side rendering for each route
Including a browser to achieve dynamic navigation
Changing URLs
Hydrating sections or components
Creating temporary sessions for clients
Avoiding cross-site request forgery (CSRF) with WebSockets
Summary
Chapter 7: Creating a Real-Time Blog Using Only Django
Technical requirements
Creating models for the database
Generating fake articles and comments
Listing of articles
Navigating between articles with pagination
Adding an article search engine
Creating a static page
Moving between pages and generating a browser
Implementing an individual page per article
Adding a list of comments
Adding new comments
Offering an RSS feed
Summary
Part 4: Simplifying the frontend with Stimulus
Chapter 8: Simplifying the Frontend
Technical requirements
Installing and configuring Stimulus
Defining a controller
Managing events with actions
Capturing references with targets
An application that converts text into uppercase letters
Summary
Index
About Packt
Other Books You May Enjoy
๐ SIMILAR VOLUMES
<p><b>Learn how to create your own websites simply, safely, and quickly with Django by tackling practical activities based on realistic case studies</b></p><h4>Key Features</h4><ul><li>Understand Django functionality and the Model-View-Template (MVT) paradigm</li><li>Create and iteratively build a b
<p><b>Learn how to create your own websites simply, safely, and quickly with Django by tackling practical activities based on realistic case studies</b></p><h4>Key Features</h4><ul><li>Understand Django functionality and the Model-View-Template (MVT) paradigm</li><li>Create and iteratively build a b
A step-by-step guide to building web applications with Python and Django 3.0. Create, test, and deploy 5 progressively more complex websites including a Message Board app, a Blog app with user accounts, and a robust Newspaper app with reader comments and a complete user registration flow. Along the