Create scalable web applications using Python-based Flask and Django frameworks.

Building Dynamic Applications with Flask and Django Frameworks
Course Features:
  • Language: English
  • list-box-outline Track: Software Development
  • Duration: 30 hours
  • layers-outline Level: Advanced
  • Learning Mode: Learn at ALC or Learn at Home
  • Jurisdiction: Maharashtra
  • Certificate of Completion

Eligibility
  • Learner should preferably a std. 10th Pass student (Not Compulsory)
  • It is desirable that Learner should have done MS-CIT Course (Not Compulsory)

Introduction

  • Classifying the Flask and Django frameworks for web development.
  • Arranging a smooth development environment for both Flask and Django.
  • Classify foundation in HTML syntax and CSS for web page structuring and styling.
  • Identify basic Flask concepts, server startup, and template integration.
  • Demonstrate database development in Flask, including SQLAlchemy ORM and CRUD operations.
  • Summarise RESTful APIs in Flask, covering application structure and configuration options.
  • Identify common Flask extensions and understand the deployment workflow.
  • Classify Django's architecture, features, and disadvantages.
  • Examine Django web applications, focusing on project structure, views, and templates.
  • Operations in data management within Django, encompassing models, ORM, and forms.

What you'll learn ?

  • By the end of the course, learners will be able to:
  • Build web apps proficiently in both Flask and Django frameworks.
  • Set up the development environments while ensuring smooth coding experiences in Flask and Django.
  • Develop a solid foundation in HTML and CSS, enabling the creation of visually appealing web pages.
  • Discover the web development in Flask web development, including template handling and static file management.
  • Build skills in Flask database development, understanding SQLAlchemy ORM and CRUD operations.
  • Prepare RESTful APIs in Flask, demonstrating knowledge of application structure and configuration options.
  • Utilizing common Flask extensions and understanding the deployment workflow.
  • Build a solid understanding of Django, including project and app creation, views, and templates.
  • Build Django web applications with CRUD functionality, utilizing Django template language and static file management.
  • Designing data management in Django, understanding models, ORM, query sets, and forms for effective database interactions.

Certification

  • KLiC courses are recognised by Yashwantrao Chavan Maharashtra Open University (YCMOU).
  • MKCL provides certificate to the KLiC learner after his/her successful course completion.
  • Yashwantrao Chavan Maharashtra Open University (YCMOU) provides mark sheet to successfully passed KLiC learners (Jurisdiction: Maharashtra).

Academic Approach

The academic approach of the courses focuses on the “work-centric” education i.e. begin with work (and not from a book!), derive knowledge from work and apply that knowledge to make the work more wholesome, useful and delightful. The ultimate objective is to empower the Learner to engage in socially useful and productive work. It aims at leading the learner to his/her rewarding career as an employee or entrepreneur as well as development of the community to which s/he belongs. Learning methodology:

  • Step -1: Learners are given an overview of the course and its connection to life and work.
  • Step -2: Learners are exposed to the specific tool(s) used in the course through the various real-life applications of the tool(s).
  • Step -3: Learners are acquainted with the careers and the hierarchy of roles they can perform at workplaces after attaining increasing levels of mastery over the tool(s).
  • Step -4: Learners are acquainted with the architecture of the tool or tool map so as to appreciate various parts of the tool, their functions, utility and inter-relations.
  • Step -5: Learners are exposed to simple application development methodology by using the tool at the beginner’s level.
  • Step -6: Learners perform the differential skills related to the use of the tool to improve the given ready-made industry-standard outputs.
  • Step -7: Learners are engaged in appreciation of real-life case studies developed by the experts.
  • Step -8: Learners are encouraged to proceed from appreciation to imitation of the experts.
  • Step -9: After the imitation experience, they are required to improve the expert’s outputs so that they proceed from mere imitation to emulation.
  • Step-10: Emulation is taken a level further from working with differential skills towards the visualization and creation of a complete output according to the requirements provided. (Long Assignments)
  • Step-11: Understanding the requirements, communicating one’s own thoughts and presenting are important skills required in facing an interview for securing a work order/job. For instilling these skills, learners are presented with various subject-specific technical as well as HR-oriented questions and encouraged to answer them.
  • Step-12: Finally, they develop the integral skills involving optimal methods and best practices to produce useful outputs right from scratch, publish them in their ePortfolio and thereby proceed from emulation to self-expression, from self-expression to self-confidence and from self-confidence to self-reliance and self-esteem!

Syllabus

  • What is Flask?
  • History of Flask
  • Why use Flask?
  • Flask vs Django
  • Setting up a development environment
  • Installing Flask and Hello World
  • Introduction to HTML and CSS
  • HTML syntax and Structure
  • Working With Classes and IDs
  • CSS basics and syntax
  • Creating a basic HTML document
  • Styling Webpage with CSS
  • Basic Flask Concepts
  • Server Startup and A complete Application
  • Templates - Part 1
    • Templates - Part 2
  • Flask - Bootstrap
  • Static Files
  • Flask HTTP methods
  • Request Response Cycle - Part 1
    • Request Response Cycle - Part 2
  • Error Handling and debugging - Part 1
    • Error Handling and debugging - Part 2
  • Python Database Framework
  • SQLAlchemy ORM - Part 1
    • SQLAlchemy ORM - Part 2
  • CRUD Operations
    • Creating tables in Flask
    • Inserting into table
    • Querying Data
    • Updating Data
    • Deleting Data
  • Database Migration
  • Web Forms
  • Email Support
  • Flask Blueprint
    • Template handling
    • Static File handling
    • Error handling
    • Flask Blueprint Decorator
    • Abort function
  • Flask Application Structure
    • Configuration Options
    • Application package
    • Application factory
    • Implementing Application functionality in Blueprint
  • Introduction to API
    • Web API
    • REST Framework
  • Postman Tool
  • Working with API Part 1
    • Working with API Part 2
    • Working with API Part 3
  • Designing RESTful APIs - Part 1
    • Designing RESTful APIs - Part 2
  • Common Flask Extensions
  • Deployment Workflow
  • What is Django
  • Django history
  • Features of Django
  • Disadvantages of Django
  • Applications of Django
  • Django MVC-MVT architecture
  • Why Use Django?
  • Webserver
  • Virtual Environment
  • Django Installation
  • Project in Django?
    • manage.py
    • init.py
    • settings.py
    • urls.py
    • wsgi.py
    • asgi.py
  • App in Django?
    • admin.py
    • apps.py
    • models.py
    • tests.py
    • views.py
  • Difference between project and app
  • Creating a project and an app
  • Registering an app
  • Runserver
  • Creating a View
  • Mapping the view to URLs
  • Creating models
  • Registering a model
  • Make migrations
  • Migrate
  • Creating a superuser
  • settings.py
  • Middleware
  • Django database connection
  • Small Project on Django
  • Templates
  • Django Template Language (DTL)
  • Creating a template directory
  • Rendering a template
  • Template Variables
  • Template Tag
  • Template Filters
  • If-else and For loop
  • Static Files
  • Models in Django
  • Django model Data Types and Fields list
  • ORM's in Django
  • Query Sets in Django
  • Model instances
  • Django forms
  • Django Model Forms
  • Form widgets
  • CSRF Token
  • Django formsets and Modelformsets
  • Django Views and its types
  • Function Based View
    • CRUD Operations Using FBV
    • Insert Operation
    • Update Operation
    • Delete Operation
  • Class-based views (CBVs) - Part I
    • Class-based views (CBVs) - Part II
  • CRUD Operations Using CBV - Part I
    • CRUD Operations Using CBV - Part II
    • CRUD Operations Using CBV - Part III
  • Mixins in Django
  • URLs import reverse
  • Session and Cookies in Django
  • Enabling and configurating session
  • Session serialization
  • Working of cookies in Django
  • Use of cookies
  • Managing Cookies in Django: Setting, Modifying, Updating, and Deleting
  • Enabling and Disabling Cookies in Django
  • Django Serialization and Deserialization
  • Model serialization
  • Model inheritance styles
  • Authentication
  • Default authentication implementations
  • Working with the user object
  • Authentication with web request
  • Authorization
  • Permission caching and default Permission
  • Authentication vs Authorizations
  • Django Middleware
  • Inbuilt middlewares
  • Middleware structure
  • Configuration of multiple middleware classes - Example 1
  • Configuration of multiple middleware classes - Example 2
  • Maintenance Mode Application
  • Middleware application to show meaningful response
  • Advantages and Disadvantages of Middlewares
  • Mail system in Django
  • Other Email Functions
  • CSV Using Models
  • PDF Using Models
  • Introduction to Django Rest Framework
  • Django Rest framework History and Versions
  • Advantages and Disadvantages of Django Rest Framework
  • Applications of Django Rest Framework
  • Web API VS Web Browser
  • Webservices and its types
    • SOAP Based Web Services
    • REST (Representational State Transfer) web services
    • Difference between SOAP and RESTful webservices
  • Django Rest Framework Installation
  • Serializers in DRF
  • Model Serializers in DRF
  • Advantages and disadvantages of serializers in DRF
  • Serializer mixins
  • Serializer Fields
  • Serializer Relations
  • Deserializers in DRF
  • JSON in DRF
  • Serializers and Deserializers in CRUD Operations
  • Advantages and disadvantages of deserializer
  • Validation of serializer
  • Difference serializer and deserializer in DRF
  • Views and its type in DRF
  • APIView
    • Creating a Simple API
  • GenericAPIView
    • Creating a GenericAPIView
  • ViewSets
  • ViewSet actions
  • Custom ViewSet base classes
  • Defining Router for TestViewSet
  • Difference between APIView and ViewSet
  • Authentication and Setting Authentication Schemes in DRF
  • Token based authentication in DRF
  • BasicAuthentication
  • SessionAuthentication
  • Custom authentication
  • Difference between TokenBased, Basic, Session and Custom Authentication
  • Unauthorized and Forbidden responses
  • OAuth
  • Authorization and permissions
  • Pagination in Django Rest Framework
  • Use of pagination
  • Implementing pagination in an API view
  • HTML pagination controls
  • Filters in DRF

Evaluation Pattern

Evaluation Pattern of KLiC Courses consists of 4 Sections as per below table:

Section No. Section Name Total Marks Minimum Passing Marks
1 Learning Progression 25 10
2 Internal Assessment 25 10
3 Final Online Examination 50 20
Total 100 40
4 SUPWs (Socially Useful and Productive Work in form of Assignments) 5 Assignments 2 Assignments to be Completed & Uploaded
YCMOU Mark Sheet

Printed Mark Sheet will be issued by YCMOU on successful completion of Section 1, Section 2 and Section 3 and will be delivered to the learner by MKCL.
YCMOU Mark Sheet will be available only for Maharashtra jurisdiction learners

MKCL's KLiC Certificate

The certificate will be provided to the learner who will satisfy the below criteria:

  1. Learners who have successfully completed above mentioned 3 Sections i.e. Section 1, Section 2 and Section 3
  2. Additionally, learner should have completed Section 4 (i.e. Section 4 will comprise of SUPWs i.e. Socially Useful and Productive Work in form of Assignments)
    • Learner has to complete and upload minimum 2 out of 5 Assignments

Courses Fee Structure from 01 July, 2025 Onwards

KLiC 30 hour course fee applicable from 01 July, 2025 all over Maharashtra

KLiC Course Duration MFO
(Inclusive of GST)
ALC Share
(Service Charges to be collected by ALC)
30 hours Rs. 300/- Rs. 1,500/-
Important Points:
* Above mentioned fee is applicable for all Modes of KLiC Courses offered at Authorised Learning Center (ALC) and at Satellite Center
* Total fee is including of Course fees, Examination fees and Certification fees
* MKCL reserves the right to modify the Fee anytime without any prior notice