VOOZH about

URL: https://www.coursera.org/learn/packt-advanced-flask-real-world-applications-apis-and-security-ep3ba

⇱ Advanced Flask: Real-world Applications, APIs, and Security | Coursera


Advanced Flask: Real-world Applications, APIs, and Security

Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Advanced Flask: Real-world Applications, APIs, and Security

Included with

β€’

Learn more

Ask Coursera

Gain insight into a topic and learn the fundamentals.
Advanced level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
Advanced level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Build secure, full-featured web applications with Flask for real-world use.

  • Create RESTful APIs, real-time apps, and admin dashboards for scalable solutions.

  • Implement multilingual support, user authentication, and role-based access control.

  • Deploy Flask applications with email, file handling, and SocketIO integration.

Details to know

Shareable certificate

Add to your LinkedIn profile

Recently updated!

April 2026

Assessments

12 assignments

Taught in English

Build your subject-matter expertise

This course is part of the The Ultimate Flask Course Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 10 modules in this course

This course features Coursera Coach!

A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Elevate your Flask skills with advanced concepts, real-world applications, and enterprise-grade security practices. This course focuses on creating sophisticated web applications, including admin dashboards, RESTful APIs, real-time apps with SocketIO, and user management with Flask-User and Flask-Security. You'll also integrate multilingual support and explore email handling, file uploads, and deployment strategies to ensure your apps are production-ready and scalable. You’ll start with Flask-Admin and Flask-User to manage users and roles securely while creating dynamic, data-driven admin dashboards. Then, explore Flask-Babel for multilingual support, Flask-RESTless for automated RESTful APIs, and Flask-SocketIO for real-time interactions. You’ll implement secure authentication, role-based access, and robust form handling with Flask-WTF and Flask-Bootstrap. Project-based modules, like a Twitter clone, store app, forum, and weather app, demonstrate real-world application building from scratch. Designed for intermediate to advanced Python developers, this course benefits anyone aiming to create professional-grade Flask applications. Prior experience with Flask fundamentals and basic web development concepts is recommended. You’ll gain the expertise needed to develop secure, interactive, and highly maintainable web applications for professional or personal projects. By the end of the course, you will be able to implement admin dashboards, build RESTful APIs, create secure user authentication systems, add real-time features with Flask-SocketIO, support multilingual applications, and deploy full-featured Flask apps to production.

In this module, we will explore how to integrate Flask-Admin into your Flask application to create a powerful admin interface. You will learn how to manage user data, customize views, and implement advanced features like modals and table exports. The section also covers securing the admin panel with Flask-Login for user authentication.

What's included

19 videos2 readings1 assignment

19 videosβ€’Total 69 minutes
  • Install and Setupβ€’5 minutes
  • Add User Viewβ€’5 minutes
  • View of Table With Multiple Columnsβ€’3 minutes
  • Table with Relationshipβ€’5 minutes
  • Remove Column from Viewβ€’2 minutes
  • Display Primary Key Columnβ€’1 minute
  • Enable/Disable Create, Edit, and Deleteβ€’2 minutes
  • Export Table Dataβ€’1 minute
  • Create Modalβ€’1 minute
  • Other Attributesβ€’3 minutes
  • Using on_model_change to Automatically Hash Passwordβ€’6 minutes
  • File Adminβ€’4 minutes
  • Modifying the Home Templateβ€’6 minutes
  • Modifying Other Viewsβ€’4 minutes
  • Creating a New Viewβ€’4 minutes
  • URL Forβ€’1 minute
  • Inline Modelsβ€’3 minutes
  • Auth for Viewsβ€’3 minutes
  • Adding Flask-Loginβ€’6 minutes
2 readingsβ€’Total 20 minutes
  • Introduction to the Course 'Advanced Flask: Real-world Applications, APIs, and Security'β€’10 minutes
  • Full Specialization Resourcesβ€’10 minutes
1 assignmentβ€’Total 15 minutes
  • Flask Admin - Assessmentβ€’15 minutes

In this module, we will learn how to use Flask-User to handle user management tasks like authentication and profile creation. You will customize registration and login forms, and integrate email functionalities for secure user management. By the end of this section, you will have a fully functioning user authentication system with email support.

What's included

10 videos1 assignment

10 videosβ€’Total 36 minutes
  • Installation and Configurationβ€’4 minutes
  • Create Databaseβ€’4 minutes
  • Flask-User Sign In and Register Screensβ€’3 minutes
  • Create Protected Pageβ€’3 minutes
  • What Flask-User Does to Database Recordβ€’1 minute
  • Enabling Emailsβ€’6 minutes
  • Modifying Templatesβ€’5 minutes
  • Modifying Email Templatesβ€’4 minutes
  • Changing the After Register Endpointβ€’3 minutes
  • Current User Informationβ€’2 minutes
1 assignmentβ€’Total 15 minutes
  • Flask User - Assessmentβ€’15 minutes

In this module, we will integrate Flask-Babel to handle internationalization (i18n) and localization (l10n) in your app. You will learn how to switch between locales, format dates and times, and mark strings for translation. By the end, your app will support multiple languages and be ready for a global audience.

What's included

6 videos1 assignment

6 videosβ€’Total 25 minutes
  • Install Flask-Babelβ€’1 minute
  • Localeβ€’6 minutes
  • Dates and Datetimeβ€’6 minutes
  • Marking Words for Translationβ€’4 minutes
  • Translationsβ€’8 minutes
  • Poeditβ€’1 minute
1 assignmentβ€’Total 15 minutes
  • Flask Babel - Assessmentβ€’15 minutes

In this module, we will explore how to use Flask-RESTless to automatically generate RESTful API endpoints. You will learn how to manage CRUD operations, apply filters and search queries, and implement pagination for large data sets. This section also covers advanced API features such as limiting results and complex query handling.

What's included

22 videos1 assignment

22 videosβ€’Total 70 minutes
  • Installationβ€’2 minutes
  • Setup Modelsβ€’2 minutes
  • Create Databaseβ€’1 minute
  • Integrate Flask-Restlessβ€’1 minute
  • GET Requestsβ€’7 minutes
  • GET Specific Itemsβ€’1 minute
  • POST Requestsβ€’7 minutes
  • DELETE Requestsβ€’2 minutes
  • PUT Requestsβ€’4 minutes
  • Limitβ€’4 minutes
  • Offsetβ€’2 minutes
  • Order Byβ€’4 minutes
  • Search Queriesβ€’7 minutes
  • In and Not in Operatorsβ€’1 minute
  • Is Null and Is Not Null Operatorsβ€’2 minutes
  • Like Operatorβ€’2 minutes
  • Or Queriesβ€’4 minutes
  • Any Operatorβ€’5 minutes
  • Has Operatorβ€’2 minutes
  • Deleting With Queriesβ€’3 minutes
  • Patch With Queries Bugβ€’3 minutes
  • Paginationβ€’3 minutes
1 assignmentβ€’Total 15 minutes
  • Flask-RESTless - Assessmentβ€’15 minutes

In this module, we will dive into Flask-SocketIO to implement real-time communication within your app. You will learn how to manage multiple clients, emit custom events, and send private messages. By the end of this section, your Flask app will be capable of handling real-time updates and notifications.

What's included

16 videos1 assignment

16 videosβ€’Total 89 minutes
  • Installation and Setupβ€’3 minutes
  • Setting Up JavaScript Clientβ€’4 minutes
  • Sending From Client to Serverβ€’7 minutes
  • Sending From Server to Clientβ€’3 minutes
  • Emit Custom Eventsβ€’5 minutes
  • Sending and Receiving JSONβ€’5 minutes
  • Multiple Clientsβ€’9 minutes
  • Broadcasting Messagesβ€’2 minutes
  • Server Initiated Eventsβ€’6 minutes
  • Namespacesβ€’6 minutes
  • Session IDsβ€’7 minutes
  • Send Private Messageβ€’12 minutes
  • Join Roomβ€’8 minutes
  • Leave Roomβ€’5 minutes
  • Close Roomβ€’2 minutes
  • Connect and Disconnectβ€’5 minutes
1 assignmentβ€’Total 15 minutes
  • Flask SocketIO - Assessmentβ€’15 minutes

In this module, we will learn how to integrate Flask-Security to handle user authentication and authorization. You will explore how to protect routes, implement role-based access, and send custom emails for password resets. By the end of this section, your app will have robust security features for user management.

What's included

11 videos1 assignment

11 videosβ€’Total 54 minutes
  • Installation and Setupβ€’2 minutes
  • Create Databaseβ€’4 minutes
  • View Login and Register Routesβ€’8 minutes
  • Additional Routesβ€’3 minutes
  • Login Required and Current Userβ€’2 minutes
  • Rolesβ€’9 minutes
  • Enabling Emailsβ€’2 minutes
  • Custom Emailsβ€’6 minutes
  • Custom Viewsβ€’4 minutes
  • Extending the Formsβ€’10 minutes
  • HTTP Basic Authβ€’3 minutes
1 assignmentβ€’Total 15 minutes
  • Flask Security - Assessmentβ€’15 minutes

In this module, we will create a full-featured Twitter clone app using Flask. You will learn how to handle user authentication, manage tweets, create a timeline, and build a follower system. The section also covers refactoring the app's design and code to improve scalability and user experience.

What's included

39 videos1 assignment

39 videosβ€’Total 235 minutes
  • Overview of Templatesβ€’2 minutes
  • Create Routes With Templatesβ€’3 minutes
  • Convert Static Resourcesβ€’9 minutes
  • Prepare Flask-Migrate and Flask-SQLAlchemyβ€’2 minutes
  • Create SQLite Databaseβ€’1 minute
  • Add User Model and Create Tableβ€’4 minutes
  • Creating the Register Formβ€’5 minutes
  • Convert Register Form to WTFormβ€’8 minutes
  • Testing the Register Formβ€’3 minutes
  • Adding Error Messages to Register Formβ€’2 minutes
  • Handling the Profile Image Uploadβ€’8 minutes
  • Save Registration Data to Databaseβ€’4 minutes
  • Creating the Login Formβ€’8 minutes
  • Creating the Login Routeβ€’8 minutes
  • Finishing the Login Formβ€’5 minutes
  • Displaying the Profile Informationβ€’10 minutes
  • Create Tweet Model and Migrateβ€’5 minutes
  • Create Tweet Formβ€’12 minutes
  • Update Timeline to Be Dynamicβ€’9 minutes
  • Add Time Since Tweet Createdβ€’12 minutes
  • First Refactorβ€’13 minutes
  • Timeline Image and Total Tweetsβ€’3 minutes
  • General Timeline Pageβ€’9 minutes
  • Make Profile Generalβ€’9 minutes
  • Follower Modelβ€’8 minutes
  • Add Follow Routeβ€’4 minutes
  • Update Follower Count and List of Followersβ€’12 minutes
  • Create Follow Linkβ€’6 minutes
  • Test Follow Linkβ€’2 minutes
  • Update Timeline Pageβ€’7 minutes
  • Add Links to User Profilesβ€’4 minutes
  • Who to Watch Sectionβ€’7 minutes
  • Add User Timeline Linksβ€’3 minutes
  • Refactor HTMLβ€’8 minutes
  • Refactor Navigationβ€’6 minutes
  • Update Timeline Follower Count and Change Homepageβ€’3 minutes
  • Refactor Viewsβ€’7 minutes
  • Refactor Register Templateβ€’4 minutes
  • Conclusionβ€’1 minute
1 assignmentβ€’Total 15 minutes
  • Engaged: A Twitter Clone - Assessmentβ€’15 minutes

In this module, we will build an e-commerce store app that lets users browse products, add items to their cart, and place orders. You will also learn how to manage product listings, track customer orders, and calculate order totals. The section concludes with the implementation of an admin dashboard for managing orders and inventory.

What's included

22 videos1 assignment

22 videosβ€’Total 147 minutes
  • Starting Filesβ€’5 minutes
  • Adding the Product Tableβ€’4 minutes
  • Creating the Add Product Formβ€’9 minutes
  • Add Products to Databaseβ€’6 minutes
  • Admin Dashboard Product Listβ€’4 minutes
  • Showing the Dollar Amount and Product Countsβ€’4 minutes
  • Adding Products to Homepageβ€’7 minutes
  • The Product Pageβ€’7 minutes
  • Adding to the Cartβ€’8 minutes
  • The Cart Sessionβ€’9 minutes
  • Display the Items in Cartβ€’10 minutes
  • Remove Item From Cartβ€’6 minutes
  • Creating the Order Tablesβ€’11 minutes
  • Creating the Checkout Formβ€’3 minutes
  • Checkout Form Continuedβ€’10 minutes
  • Checkout Form Finalizedβ€’10 minutes
  • Randomizing the Referenceβ€’2 minutes
  • Checkout Screen Cart Detailsβ€’4 minutes
  • Admin Pending Ordersβ€’5 minutes
  • Calculating the Order Totalβ€’4 minutes
  • Order Screenβ€’13 minutes
  • Updating the Stock Totalsβ€’6 minutes
1 assignmentβ€’Total 15 minutes
  • Store App - Assessmentβ€’15 minutes

In this module, we will create a forum application with functionality for posting threads and responding to discussions. You will learn how to set up user authentication, display threads with replies, and create user profiles. The section also covers advanced features like date management and user interaction within threads.

What's included

15 videos1 assignment

15 videosβ€’Total 82 minutes
  • Overview of Appβ€’3 minutes
  • Setting up the Flask-Security Modelsβ€’7 minutes
  • Setting Up the Register Pageβ€’18 minutes
  • Setting Up A Userβ€’2 minutes
  • Login Screenβ€’6 minutes
  • Thread Modelβ€’2 minutes
  • Saving the Thread Form to Databaseβ€’7 minutes
  • Displaying Threads from the Databaseβ€’2 minutes
  • Updating the Thread Model to Include Dateβ€’4 minutes
  • Thread Pageβ€’3 minutes
  • Creating the Reply Modelβ€’3 minutes
  • Handling Repliesβ€’14 minutes
  • Last Post Dateβ€’3 minutes
  • The Profile Pageβ€’3 minutes
  • Adding Links and Wrap Upβ€’6 minutes
1 assignmentβ€’Total 15 minutes
  • Forum App - Assessmentβ€’15 minutes

Advanced Flask: Real-world Applications, APIs, and SecurityAdvanced Flask: Real-world Applications, APIs, and SecurityIn this module, we will develop a weather app that allows users to check real-time weather conditions for multiple cities. You will learn how to retrieve weather data from an API, store user preferences, and implement features like city saving. The section also explores how to handle sensitive data securely using Python-Dotenv.

What's included

12 videos1 reading3 assignments

12 videosβ€’Total 52 minutes
  • Introβ€’1 minute
  • Set Up Appβ€’3 minutes
  • Retrieve API Dataβ€’7 minutes
  • Create Databaseβ€’3 minutes
  • Add Cities to Databaseβ€’1 minute
  • Show Saved City Dataβ€’5 minutes
  • Allow User Save Citiesβ€’4 minutes
  • Install Python-Dotenvβ€’2 minutes
  • Prevent Duplicate Citiesβ€’6 minutes
  • Prevent Invalid Citiesβ€’6 minutes
  • Message Flashingβ€’8 minutes
  • Deleting Citiesβ€’7 minutes
1 readingβ€’Total 10 minutes
  • Conclusion to the Course 'Intermediate Flask: APIs & User Authentication'β€’10 minutes
3 assignmentsβ€’Total 90 minutes
  • Full Course Practice Assessmentβ€’15 minutes
  • Weather App - Assessmentβ€’15 minutes
  • Full Course Assessmentβ€’60 minutes

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructor

Packt
1,926 Coursesβ€’560,010 learners

Explore more from Software Development

Why people choose Coursera for their career

πŸ‘ Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
πŸ‘ Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
πŸ‘ Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
πŸ‘ Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions

Flask is a lightweight and flexible web framework for Python that allows developers to quickly create and scale web applications. It is relevant because of its simplicity and versatility, making it a top choice for building APIs, managing databases, and implementing robust security features. Flask is widely used for both small-scale applications and large, complex systems due to its ease of use and extensive extension support.

The "Advanced Flask: Real-world Applications, APIs, and Security" course covers advanced Flask topics, including building and managing real-world applications, securing APIs, and implementing user authentication. You will work with Flask-Admin for admin panels, Flask-Security for user roles and permissions, Flask-Babel for internationalization, Flask-SocketIO for real-time communication, and Flask-RESTless to create powerful REST APIs. The course also includes hands-on projects like a Twitter clone, weather app, and store app, allowing you to apply these advanced concepts in practice.

After completing this course, you will have the skills to build sophisticated web applications using Flask, including secure user authentication, API development, and real-time communication. You will be able to implement Flask-Admin for managing application data, Flask-Security to protect your users, and Flask-Babel for multilingual support. Additionally, you’ll be able to deploy production-ready applications and create user-friendly, interactive platforms like forums and e-commerce sites.

This course is designed for developers who are already familiar with Flask basics and want to expand their skills. Prior knowledge of Python programming, basic web development concepts (HTML, CSS, JavaScript), and basic Flask usage (such as routing, templating, and working with databases) is required. If you are comfortable building simple web applications with Flask, this course will help you take your skills to the next level.

This course is ideal for intermediate Python developers who want to specialize in building real-world applications using Flask. It is perfect for developers who want to learn advanced features such as API development, real-time communication, and secure user authentication. If you're looking to build scalable, production-ready applications, this course will provide you with the knowledge and practical experience to do so.

The course takes approximately 15 hours to complete. This includes time for video lessons, practical exercises, and building projects. The exact time may vary depending on your pace, but the course is structured to allow learners to absorb and apply the content effectively.

Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.

If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.

Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.

If you complete the course successfully, your electronic Course Certificate will be added to your Accomplishments page - from there, you can print your Course Certificate or add it to your LinkedIn profile.

This course is currently available only to learners who have paid or received financial aid, when available.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,