Learn how to build web applications without having to know the intricacies of the components
Build full stack projects without compromising on development speed and app performance
Prepare yourself for the diverse world of web development, analytics, and data visualization
Description
If you need to develop web applications quickly, where do you turn? Enter the FARM stack. The FARM stack combines the power of the Python ecosystem with REST and MongoDB and makes building web applications easy and fast.
This book is a fast-paced, concise, and hands-on beginner’s guide that will equip you with the skills you need to quickly build web applications by diving just deep enough into the intricacies of the stack's components.
The book quickly introduces each element of the stack and then helps you merge them to build a medium-sized web application. You'll set up a document store with MongoDB, build a simple API with FastAPI, and create an application with React. Security is crucial on the web, so you'll learn about authentication and authorization with JSON Web Tokens. You'll also understand how to optimize images, cache responses with Redis, and add additional features to your application as well as explore tips, tricks, and best practices to make your development experience a breeze. Before you know it, you'll be deploying the application to different platforms.
By the end of this book, you will have built a couple of functional applications efficiently and will have the springboard you need to delve into diverse and more specialized domains.
Who is this book for?
This book is for web developers and analysts who want to include the power of a modern asynchronous Python framework, a flexible data store and a powerful UI library with the combination of two of the most important programming languages today in their web development toolkit. Beginners in the field of information presentation will also find this book helpful. You must have a beginner-level understanding of Python, JavaScript, and HTML and CSS to get the most out of this book.
What you will learn
Discover the flexibility of the FARM stack
Implement complete JWT authentication with FastAPI
Explore the various Python drivers for MongoDB
Discover the problems that React libraries solve
Build simple and medium web applications with the FARM stack
Dive into server-side rendering with Next.js
Deploy your app with Heroku, Vercel, Ubuntu Server and Netlify
Understand how to deploy and cache a FastAPI backend
This book was released in August 2022.I worked through it in December 2023.Many of the Python packages used in this book were very out of date, and introduced numerous breaking changes.For instance, Pydandic V2 has several breaking changes from V1 from the book. I had to spend a lot of time and frustration patching the code with snippits online just to get the book examples to run. Chapter 5 is where things really started to fall down.I did learn a lot in this book. In particular, how the requirements.txt works. I wish the book (or GitHub repo for the book) would of included a frozen versioned requirements.txt so that there would have been more success in learning the FastAPI and MongoDB stack, and not wasting time troubleshooting my environments.On top of that, there were NUMEROUS errors in the text of the book. References to code was done haphazardly. Like numerous references to a cars/models.py file, when it was actually models/cars.py.Often long code snippits were broken into pieces so the author could break in to explain. None of the snippits were labelled, so sometimes it was unclear if a new snippit was a continuation or an entirely new .py file.Fundamentally, the book definately delivered on conveying the core essentials of a React, Python/FastAPI, MongoDB application stack. I learned a LOT. I went into this wanting to learn more about the backend side than the front end (I want to use this stack for Flutter mobile app development). Hands down, this author earned big points from me for being aligned perfectly in that regard.Overall, amazing exposure to many core and side topics (redis, machine learning [though, didnt work]). I have a foundation and a working code base that I can start from in order to move my learning forward. I just wish this wasn't my most frustrating technical book experience of the past 20 years. I feel that Frodo had an easier time getting the ring to Mordor.
Amazon Verified review
J. MooreSep 23, 2023
2
There is a typo or flat out bug in the majority of the examples. Yes, some of these are covered in the github repo’s errata, but others are not. For instance, the basic CRUD (a car inventory app) app’s GET request to the individual car page fails if you use the book’s code or the github repo’s code bc of poorly formatted React.Worse yet, the python side is quickly becoming outdated as pydantic and FastAPI have moved to new versions that are not backwards compatible. You either need to downgrade or rework several of the routes to conform to current specs. Also, there are bugs and typos in the python side.With updates and error corrections, this could have been a great book. But the author either didn’t try to run his own code or worse yet, declared “works on my machine” and shipped it.
Amazon Verified review
Amazon CustomerOct 28, 2022
5
Full stack clearly explained, not just code but a proper explanation of the choice of each tool.
Amazon Verified review
Luiz Eduardo FonsecaOct 24, 2022
4
In this book the author talks about the so-called FARM stack for Web Development. The book goes into detail on how to set environments, MongoDB and friends, CRUD operations, and REST API. Then it shows how to build the backend and frontend and how to tie it all together using authentication. Overall very enjoyable book.
Marko Aleksendrić is an analyst, a scientist, and a freelance self-taught web developer with over 20 years of experience. Marko has authored the book Modern Web Development with the FARM Stack and Mastering MongoDB 7.0, published by Packt Publishing. With a keen interest in backend and frontend development, he has been an avid MongoDB user for the last 15 years for various web and data analytics-related projects and has built numerous Python and JavaScript web applications and tools.
Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.
If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.
Please Note: Packt eBooks are non-returnable and non-refundable.
Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:
You may make copies of your eBook for your own use onto any machine
You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website?
If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:
Register on our website using your email address and the password.
Search for the title by name or ISBN using the search option.
Select the title you want to purchase.
Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title.
Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook?
If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
To view your account details or to download a new copy of the book go to www.packtpub.com/account
Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.
You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.
What are the benefits of eBooks?
You can get the information you need immediately
You can easily take them with you on a laptop
You can download them an unlimited number of times
You can print them out
They are copy-paste enabled
They are searchable
There is no password protection
They are lower price than print
They save resources and space
What is an eBook?
Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.
When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.
For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.