Book Image

Full-Stack Flask and React

By : Adedeji
3.5 (2)
Book Image

Full-Stack Flask and React

3.5 (2)
By: Adedeji

Overview of this book

Developing an interactive, efficient, and fast enterprise web application requires both the right approach and tooling. If you are a web developer looking for a way to tap the power of React’s reusable UI components and the simplicity of Flask for backend development to develop production-ready, scalable web apps in Python, then this book is for you. Starting with an introduction to React, a JavaScript library for building highly interactive and reusable user interfaces, you’ll progress to data modeling for the web using SQLAlchemy and PostgreSQL, and then get to grips with Restful API development. This book will aid you in identifying your app users and managing access to your web application. You’ll also explore modular architectural design for Flask-based web applications and master error-handling techniques. Before you deploy your web app on AWS, this book will show you how to integrate unit testing best practices to ensure code reliability and functionality, making your apps not only efficient and fast but also robust and dependable. By the end of this book, you’ll have acquired deep knowledge of the Flask and React technology stacks, which will help you undertake web application development with confidence.
Table of Contents (21 chapters)
1
Part 1 – Frontend Development with React
9
Part 2 – Backend Development with Flask

Implementing password security and hashing passwords

In any web application that requires access, passwords are often the first line of defense against unauthorized access. As a developer, you will want to ensure that passwords are securely managed when building Flask applications. A critical component of password management in web applications is to never store passwords in plaintext.

Instead, passwords should be hashed, which is a one-way encryption process that produces a fixed-length output that cannot be reversed. When a user enters their password, it is hashed and compared with the stored hash. If the two hashes match, the password is correct. Hashing passwords can help protect against attacks such as brute-force and dictionary attacks.

Brute-force attacks involve trying every possible combination of characters to find a match, while dictionary attacks involve trying a pre-computed list of words. Hashing passwords makes it computationally infeasible for an attacker to reverse...