Skip to main content
ZORK Academy

Live online course · Full-Stack Development

Python Full-Stack Development

Build, test and deploy web applications with Python, Django REST Framework, PostgreSQL and React

A 108-hour live course: advanced Python, PostgreSQL and SQL, Django and Django REST Framework APIs, authentication and permissions, a React front end, pytest, Celery and Redis, Docker, deployment and a reviewed capstone.

  • Intermediate
  • Live online
  • 108 live hours

What you will be able to do

  • Write idiomatic, typed Python using comprehensions, generators, decorators and context managers
  • Design a normalised PostgreSQL schema and write the SQL that Django generates and that it does not
  • Model data with the Django ORM and build versioned REST APIs with Django REST Framework
  • Implement authentication, object-level permissions and protection against common OWASP risks
  • Build a React and TypeScript front end that consumes your own API
  • Test the back end with pytest and the front end with component and end-to-end tests
  • Run background work with Celery and Redis
  • Containerise, deploy and monitor the application, and integrate an AI API responsibly

About this course

Python is used to build everything from small internal tools to large web platforms, and it is the natural home for data and AI work. This course teaches you to build complete web applications with it: a well-modelled PostgreSQL database, a secure REST API, a React front end, background jobs, automated tests and a real deployment.

Why Django and Django REST Framework? For the back end this course uses Django with Django REST Framework (DRF). Django ships with a mature ORM and migrations, authentication, an admin interface and strong security defaults, and DRF adds serializers, permissions, pagination and browsable APIs on top. That lets you spend your time on application design rather than assembling and securing a dozen separate libraries, and the conventions you learn carry over to the many existing Django codebases you are likely to meet. FastAPI is covered as a comparison so you understand when its async-first, lightweight approach is the better fit.

Why React for the front end? Most Python web teams pair a Python API with a JavaScript front end. React is widely used, and building it against your own DRF API teaches you how the two halves of a full-stack application fit together.

Classes are live and hands-on. Throughout the course you build one application — a library and study-room booking service for a college, with students, librarians and administrators — so each topic is applied to code you already understand. Every week includes doubt-clearing time, and each module ends with a reviewed assignment, quiz or project milestone. Where recordings are made available they are for revision only; they do not replace attending live.

What this course is not: it does not teach programming from zero. You should already be comfortable with variables, conditions, loops and functions in some language.

Syllabus

Every session is a live class. Module hours add up to the course total.

This syllabus is a draft awaiting instructor review. Topics, order and schedule may change before the first batch is announced.

  1. 01Python essentials for programmers5 live sessions · 10 hours · A fast, thorough grounding in Python for people who already program, with a professional project setup from day one.

    Learning objectives

    • Set up Python, virtual environments and an editor for professional work
    • Use Python’s core data types, control flow and functions idiomatically
    • Write classes and handle errors the Python way
    • Read and write files and work with JSON

    Live sessions

    1. 01Python setup, virtual environments and core types2 hInstalling Python, venv and pip, editor setup; numbers, strings, f-strings, booleans and None; Python’s object and reference model.
    2. 02Collections and control flow2 hLists, tuples, dictionaries and sets; slicing and unpacking; loops, enumerate and zip; choosing the right collection.
    3. 03Functions and modules2 hPositional, keyword, default and variadic arguments, scope, first-class functions and lambdas, modules, packages and imports.
    4. 04Classes, exceptions and files2 hClasses, dunder methods, inheritance and composition, dataclasses; raising and handling exceptions; reading and writing files and JSON with pathlib.
    5. 05Python essentials review and doubt-clearing2 hSolving a set of small problems idiomatically; reading tracebacks; open questions.
    Practice
    A command-line tool that reads a CSV of library books, validates it and writes a JSON summary.
    Assessment
    Quiz on data types, functions and exceptions, plus the command-line tool as a short assignment.
    You will be able to
    You can write clean, idiomatic Python programs and organise them into modules.
  2. 02Advanced Python5 live sessions · 10 hours · The language features professional Python code relies on, and how to package and check code properly.

    Learning objectives

    • Add type hints and check them with a static type checker
    • Use comprehensions and generators to process data clearly and efficiently
    • Write decorators and context managers and recognise them in frameworks
    • Package a project with pyproject.toml and manage dependencies reproducibly

    Live sessions

    1. 06Type hints and static checking2 hAnnotations for functions and classes, Optional and union types, generics, TypedDict and Protocol, running mypy, where hints help most.
    2. 07Comprehensions, iterators and generators2 hList, dict and set comprehensions, the iterator protocol, generator functions and expressions, lazy evaluation, itertools for real data processing.
    3. 08Decorators and context managers2 hFunctions as objects, closures, writing decorators with functools.wraps, decorators with arguments, with statements, writing context managers with contextlib.
    4. 09Packaging, dependencies and code quality2 hpyproject.toml, virtual environments and lock files, installing local packages, Ruff for linting and formatting, logging instead of print, a first pytest test.
    5. 10Advanced Python review and doubt-clearing2 hRefactoring earlier code with generators, decorators and type hints; open questions.
    Practice
    Refactor the command-line tool into a typed, installable package with a timing decorator, a generator-based CSV reader and passing Ruff and mypy checks.
    Assessment
    Assignment: the packaged tool with type checks passing, plus a quiz on generators and decorators.
    You will be able to
    You can write and package professional, typed Python code.
  3. 03SQL and PostgreSQL5 live sessions · 10 hours · Relational modelling and the SQL every Django developer needs to understand what the ORM is doing.

    Learning objectives

    • Design a normalised relational schema with keys and constraints
    • Write queries with joins, aggregation, subqueries and CTEs
    • Read a query plan and add an index for a real query pattern
    • Use transactions to keep concurrent changes correct

    Live sessions

    1. 11Relational modelling and PostgreSQL setup2 hTables, keys and relationships, normalisation to third normal form, data types, installing PostgreSQL and using psql and pgAdmin.
    2. 12Querying with joins and aggregation2 hSELECT, WHERE, ORDER BY, LIMIT; inner and left joins; GROUP BY and HAVING; NULL handling and avoiding row multiplication.
    3. 13Subqueries, CTEs and window functions2 hSubqueries, EXISTS, WITH clauses, ROW_NUMBER, RANK and running totals for reporting questions.
    4. 14Indexes and transactions2 hB-tree and composite indexes, EXPLAIN ANALYZE, ACID and isolation levels, lost updates, row locking with SELECT … FOR UPDATE.
    5. 15SQL review and doubt-clearing2 hA reporting workshop on the course dataset; reviewing each other’s queries; open questions.
    Practice
    Design the library-booking schema in SQL, load sample data and answer ten reporting questions.
    Assessment
    Timed quiz on joins, aggregation and transactions, plus the schema and queries as an assignment.
    You will be able to
    You can design a relational schema and write and tune the SQL behind a web application.
  4. 04Django fundamentals and the ORM6 live sessions · 12 hours · Build a Django project, model data with the ORM and migrations, and query it efficiently.

    Learning objectives

    • Structure a Django project into focused apps with settings from environment variables
    • Model data with fields, relationships, constraints and migrations
    • Write efficient ORM queries and avoid the N+1 problem
    • Use the Django admin for internal staff tasks

    Live sessions

    1. 16Django project structure and request cycle2 hProjects and apps, settings from environment variables, URL routing, views, the request-response cycle and middleware.
    2. 17Models, fields and relationships2 hModel fields and options, ForeignKey, OneToOneField and ManyToManyField, choices, a custom user model from the start.
    3. 18Migrations and database constraints2 hCreating and applying migrations, data migrations, UniqueConstraint and CheckConstraint, indexes in Meta, changing schemas safely.
    4. 19Querying with the ORM2 hQuerySets and laziness, filter, exclude, Q and F expressions, annotate and aggregate, select_related and prefetch_related, reading generated SQL.
    5. 20Transactions, managers and the Django admin2 htransaction.atomic and select_for_update, custom managers and QuerySet methods, configuring the admin with list filters, search and read-only fields.
    6. 21Django review and doubt-clearing2 hFinding and fixing N+1 queries with Django Debug Toolbar; reviewing learners’ models; open questions.
    Practice
    Build the library-booking models with constraints and migrations, configure the admin, and write ORM queries for the earlier reporting questions.
    Assessment
    Project milestone 1: models, migrations and admin for the booking service, reviewed with feedback.
    You will be able to
    You can model a real domain in Django and query it efficiently with the ORM.
  5. 05REST APIs with Django REST Framework6 live sessions · 12 hours · Design and build a clean, versioned REST API with DRF, and understand how FastAPI differs.

    Learning objectives

    • Design REST resources, status codes, pagination and versioning
    • Build serializers with validation and nested relationships
    • Use viewsets, routers, filtering and pagination appropriately
    • Document the API and compare DRF with FastAPI

    Live sessions

    1. 22REST API design2 hResources and URLs, HTTP methods, idempotency and status codes, pagination, filtering and sorting, versioning and consistent error responses.
    2. 23Serializers and validation2 hModelSerializer, field-level and object-level validation, read-only and write-only fields, nested serializers and their costs.
    3. 24Views, viewsets and routers2 hAPIView, generic views and viewsets, routers, custom actions, keeping business rules in service functions rather than views.
    4. 25Filtering, pagination and error handling2 hdjango-filter, search and ordering, cursor and page-number pagination, a custom exception handler with a consistent error envelope, throttling.
    5. 26API documentation and a FastAPI comparison2 hGenerating an OpenAPI schema with drf-spectacular; the same endpoint in FastAPI with Pydantic; async support, performance and ecosystem trade-offs.
    6. 27API review and doubt-clearing2 hTesting endpoints with an HTTP client and the browsable API; reviewing API designs; open questions.
    Practice
    Build the booking service’s API for rooms, books, reservations and loans with validation, filtering, pagination and generated documentation.
    Assessment
    Project milestone 2: a documented, versioned DRF API, reviewed live.
    You will be able to
    You can build a consistent, well-validated REST API with Django REST Framework.
  6. 06Authentication, permissions and security5 live sessions · 10 hours · Sign users in safely, enforce who may do what on the server, and defend against common web vulnerabilities.

    Learning objectives

    • Compare session and token authentication and implement the right one for a React client
    • Write DRF permission classes for roles and object ownership
    • Use Django’s security features and recognise common OWASP Top 10 risks
    • Handle password reset and personal data responsibly

    Live sessions

    1. 28Authentication options for an API2 hDjango sessions with CSRF protection, token and JWT authentication, HTTP-only cookies, the trade-offs for a React single-page application, password hashing.
    2. 29Permissions and object-level access2 hGroups and permissions, DRF permission classes, object-level permissions, scoping querysets to the current user, preventing insecure direct object references.
    3. 30OWASP basics and Django security2 hSQL injection and the ORM, XSS, CSRF, clickjacking, security settings and headers, CORS, secrets management, dependency auditing with pip-audit.
    4. 31Password reset, email and personal data2 hPassword reset and email verification flows, rate-limiting sign-in, data minimisation, export and deletion requests under India’s DPDP Act 2023.
    5. 32Security review and doubt-clearing2 hReviewing the course project against an OWASP checklist and fixing findings together; open questions.
    Practice
    Add authentication, roles and object-level permissions to the booking API, then attempt guided attacks against your own API and fix what succeeds.
    Assessment
    Assignment: security self-review with tests proving a student cannot read or cancel another student’s reservation.
    You will be able to
    You can secure a Django API with sound authentication, permissions and security settings.
  7. 07React front end6 live sessions · 12 hours · Build a typed React client for your own API, from JavaScript essentials to routing, server state and forms.

    Learning objectives

    • Write the modern JavaScript and TypeScript a React client needs
    • Build accessible components with state, effects and custom hooks
    • Fetch and update API data with TanStack Query and route between screens
    • Build validated forms and handle authentication from the client

    Live sessions

    1. 33JavaScript and TypeScript for Python developers2 hlet and const, arrow functions, destructuring, modules, promises and async/await, fetch; TypeScript types, interfaces and unions compared with Python type hints.
    2. 34React components, props and state2 hVite and TypeScript setup, JSX, components and props, lists and keys, useState, events and controlled inputs, semantic and accessible markup.
    3. 35Effects, custom hooks and project structure2 huseEffect and cleanup, custom hooks, Context for session data, feature-based folders and styling with CSS Modules.
    4. 36Routing and server state2 hReact Router routes, layouts and parameters; TanStack Query for queries, caching, pagination and mutations; loading, empty and error states.
    5. 37Forms, authentication and API integration2 hReact Hook Form with Zod, showing DRF validation errors, CSRF-aware requests with cookies, protected routes as UX only, preventing duplicate submissions.
    6. 38Front-end review and doubt-clearing2 hDebugging with browser and React DevTools; reviewing components and data fetching; open questions.
    Practice
    Build the student-facing booking screens and the librarian dashboard in React against your DRF API.
    Assessment
    Project milestone 3: a React client connected to the secured API, reviewed with feedback.
    You will be able to
    You can build a typed React front end that works reliably with a Django REST API.
  8. 08Automated testing3 live sessions · 6 hours · Write the right tests at the right level so the application can change with confidence.

    Learning objectives

    • Write unit and API tests with pytest, fixtures and factories
    • Test permissions and transactions against a real PostgreSQL test database
    • Test React components and automate a key user journey end to end

    Live sessions

    1. 39pytest fundamentals2 hTest discovery and naming, assertions, fixtures and their scopes, parametrisation, mocking with monkeypatch and when not to mock, coverage as a guide.
    2. 40Testing Django and DRF2 hpytest-django, the test database, factory_boy, APIClient, testing validation errors, permission denials and concurrent booking rules.
    3. 41Front-end and end-to-end testing with doubt-clearing2 hVitest and React Testing Library for components, a Playwright booking journey with axe accessibility checks, running tests in CI; open questions.
    Practice
    Add unit, API, component and one end-to-end test to the project, including a regression test for an earlier bug.
    Assessment
    Quiz on testing levels and fixtures, plus a test-suite submission that passes from a clean checkout.
    You will be able to
    You can build an automated test suite that protects both the API and the client.
  9. 09Background processing with Celery and Redis3 live sessions · 6 hours · Move slow and scheduled work out of the request cycle, and understand where async Python fits.

    Learning objectives

    • Explain when work belongs in a background task
    • Run Celery workers and scheduled tasks with Redis as the broker
    • Make tasks idempotent, retryable and observable

    Live sessions

    1. 42Background work and Celery basics2 hWhy not do slow work in a request, Celery architecture, Redis as broker and result backend, defining and calling tasks, sending email in the background.
    2. 43Scheduling, retries and idempotency2 hCelery beat for scheduled jobs, retries with backoff, idempotent task design, passing ids not objects, monitoring tasks with Flower.
    3. 44Async Python, caching and doubt-clearing2 hasyncio basics and where async views help, Django’s cache framework with Redis, cache invalidation; open questions.
    Practice
    Add due-date reminder emails, a nightly overdue-loans report and Redis caching for the room-availability endpoint.
    Assessment
    Assignment: background tasks with tests, plus a short note on how each task handles retries safely.
    You will be able to
    You can run reliable background and scheduled work alongside a Django application.
  10. 10Docker, deployment, monitoring and AI integration4 live sessions · 8 hours · Package and deploy the full application, keep it observable in production, and integrate an AI API responsibly as an advanced project.

    Learning objectives

    • Containerise Django, Celery, PostgreSQL, Redis and the React build with Docker Compose
    • Automate checks with GitHub Actions and deploy with production settings
    • Use structured logs, health checks and error tracking to diagnose problems
    • Integrate an AI API with consent, data minimisation, cost limits and error handling

    Live sessions

    1. 45Docker and Docker Compose2 hImages and containers, a multi-stage Dockerfile for Django, Compose for web, worker, PostgreSQL and Redis, volumes, health checks, non-root containers.
    2. 46CI/CD and production deployment2 hGitHub Actions running Ruff, mypy and tests against a PostgreSQL service, Gunicorn, static files, production settings and the deployment checklist, running migrations safely, rollbacks.
    3. 47Logging, monitoring and production debugging2 hStructured logging with request ids, redacting personal data, health and readiness checks, error tracking, finding a seeded production bug from logs alone.
    4. 48Advanced project: integrating an AI API2 hCalling a large language model API from a service function or Celery task, keeping keys server-side, opt-in consent and explaining what is sent, timeouts, cost limits and human review of outputs.
    Practice
    Containerise and deploy the booking service to a staging environment with a passing CI pipeline, health checks and structured logs.
    Assessment
    Project milestone 4: a deployed staging URL with no secrets in the repository; the AI feature is an optional extension reviewed on request.
    You will be able to
    You can deploy, monitor and safely extend a Python full-stack application in production.
  11. 11Capstone project and final assessment6 live sessions · 12 hours · Build, harden and present the capstone application, with structured reviews and the final assessment.

    Learning objectives

    • Turn a written brief into a realistic scope, data model and API design
    • Apply the course’s architecture, security and testing practices to a new problem
    • Present and defend technical decisions in a live review

    Live sessions

    1. 49Capstone kickoff and planning2 hWalking through the brief and acceptance criteria; designing models, API endpoints and screens; agreeing scope and milestones.
    2. 50Capstone build lab: models, API and permissions2 hGuided build time on the data model, booking rules and permissions, with short design check-ins.
    3. 51Capstone build lab: front end, tasks and deployment2 hGuided build time on the React client, Celery tasks and deployment, with code review of work in progress.
    4. 52Capstone mid-point review2 hLive review of each project’s architecture, security and tests; agreeing what to fix before submission.
    5. 53Final assessment2 hWritten and practical assessment across the whole course (pass mark 60%).
    6. 54Capstone presentations and final review2 hLive demonstrations, code walkthroughs and feedback; next steps for continued learning.
    Practice
    Build the capstone with regular commits, a working deployment and an up-to-date README.
    Assessment
    Capstone project submission and live review, and the final assessment (pass mark 60%).
    You will be able to
    You can independently deliver, deploy and explain a complete, tested Python full-stack application.

Teaching formats and fees

Every format teaches the full syllabus live, with the same projects, assessments and certificate rules. The fee is per student for the whole course.

Teaching format comparison for Python Full-Stack Development
DetailGroupDuoOne-to-One
Who is in classSmall group2 students1 student
Course fee₹19,999₹32,999₹59,999
Per live hour₹185₹306₹556
Best forLearn live with a small group of students. Lowest fee per student.Two students share every live class with the instructor.Every live class is just you and the instructor.
StatusLaunch feeLaunch feeLaunch fee

Launch fee — GST treatment to be confirmed.

Fees are set in Indian rupees. Amounts in other currencies are estimates; the amount and currency you would pay are shown before payment once online enrolment opens.

Schedules and batches

Choose the schedule that fits your week. Both teach the same syllabus and the same 108 live hours; only the number of weeks differs.

Schedule comparison for Python Full-Stack Development
ScheduleDaysLive hours a weekClassesLength before holidays
Weekday IntensiveMon–Fri, 1 h each5108about 22 weeks
Weekend EveningSat & Sun evenings, 2 h each454about 27 weeks
  • Weekday Intensive classes are one hour, so each 2 h syllabus session is taught across consecutive weekday classes.
  • Weekend Evening classes run on Saturday and Sunday evenings; the exact time and time zone are set before a batch is confirmed.
  • Public holidays are not class days unless the instructor confirms a class. Holidays, instructor leave and cancelled classes move the end date later so no live hours are lost.
  • Plan about 6 hours a week of exercises, assignments and project work outside class.
  • Group, Duo and One-to-One courses all follow one of these two schedules.

Final project

Build and deploy a community food-bank distribution system. A city food bank coordinates donations from shops and households and distributes them through several partner centres. It needs a web application where donors log donations with quantities and expiry dates; centre staff record stock and schedule distribution slots; registered households book a collection slot; and coordinators see stock levels, items nearing expiry and distribution per centre. You receive a written brief with user stories and acceptance criteria, and build it individually or in a pair.

Deliverables

  • A PostgreSQL schema designed through Django models, with constraints, migrations and documented indexes for the main queries.
  • A Django REST Framework API with versioned endpoints, serializer validation, pagination, filtering and a consistent error format.
  • Authentication with secure sessions or short-lived tokens, and object-level permissions proving that staff at one centre cannot change another centre’s stock and that households see only their own bookings.
  • Safe concurrent booking: transactions and row locking so a collection slot cannot be over-booked.
  • A Celery task, backed by Redis, that sends daily near-expiry alerts and one scheduled report.
  • A React and TypeScript front end with routing, validated forms and loading, empty and error states on every data view.
  • Automated tests: pytest unit and API tests including permission denials, and one Playwright journey for booking a collection slot.
  • A Dockerfile and Docker Compose setup, a GitHub Actions workflow running linting, type checks and tests, and a live deployment with no secrets in the repository, plus health checks and structured logging.
  • A README with setup steps, an architecture diagram and known limitations.

Optional extension: an AI-assisted feature, such as suggesting product categories from free-text donation descriptions, that is opt-in, explains what is sent to the AI provider and lets staff correct every suggestion.

The project is presented and reviewed live in the final weeks, with feedback on code quality, security and design decisions.

Certificate

ZORK Academy course completion certificate

Issued once your instructor confirms you have met every requirement:

  • Attend at least 80% of live classes
  • Submit every required assignment
  • Submit and pass the required projects, including the final project
  • Score at least 60% in the final assessment

Each certificate has a unique ID that employers can verify online. Paying for the course does not by itself earn a certificate. It is not a university degree or a government-recognised qualification.

Tools and skills

Tools and technologies

  • Python 3.13 or later
  • Django 5.2 LTS
  • Django REST Framework
  • PostgreSQL 17 or 18
  • psql and pgAdmin
  • pytest and pytest-django
  • Celery
  • Redis
  • Node.js 24 LTS
  • React 19
  • TypeScript
  • Vite
  • TanStack Query
  • Playwright
  • Docker and Docker Compose
  • GitHub Actions
  • Gunicorn
  • Git and GitHub
  • Visual Studio Code or PyCharm

Skills you practise

  • Advanced Python
  • Type hints and packaging
  • SQL and PostgreSQL
  • Django ORM and data modelling
  • REST API design with Django REST Framework
  • Authentication and permissions
  • React with TypeScript
  • Automated testing with pytest
  • Background processing with Celery
  • Docker and deployment
  • Web application security
  • Logging and monitoring

Where these skills apply

  • Full-stack web application development
  • Backend and REST API development with Python
  • Internal tools, admin systems and dashboards for businesses
  • Integrating web applications with data and AI services
  • Maintaining and extending existing Django codebases
  • Freelance and small-team product development

We help you prepare for work; we do not guarantee jobs, placements or salaries. Career resources

Questions about Python Full-Stack Development

How long is Python Full-Stack Development?

108 hours of live online teaching: about 22 weeks on the Weekday Intensive schedule (Mon–Fri, 1 h a class), or about 27 weeks on the Weekend Evening schedule (Sat & Sun evenings, 2 h a class), before holidays. Plan about 6 hours a week of exercises and project work as well.

When are the classes?

No batch dates have been announced yet. The proposed pattern is Mon, Wed and Fri, 7:30–9:30 pm IST; it is confirmed when a batch is scheduled. Book a free consultation to hear about the next batch.

What do I need before I start?
  • Basic programming in any language: variables, conditions, loops and functions
  • HTML and CSS basics: you can build and style a simple static page
  • Comfortable using a terminal to run commands and navigate folders
  • A laptop with at least 8 GB RAM (16 GB recommended for Docker) running Windows, macOS or Linux
Will I get a certificate?

Yes — a ZORK Academy course completion certificate when you meet this course’s requirements, listed under Certificate. Paying for the course does not by itself earn the certificate, and it is not a university or government-recognised qualification.

Are classes recorded?

Where the academy has permission to record a class, the recording may be shared with your batch for revision. Recordings do not replace live classes, and attendance counts towards the certificate.

How do I pay?

The fee is a one-time payment in Indian rupees through Razorpay once online enrolment opens; ZORK Academy never sees your card or UPI details. The fee shown is proposed and may change before enrolment opens. Refunds follow the refund and cancellation policy in force when you pay.

Send an enquiry

Tell us which format and schedule interest you. An enquiry is not an enrolment: it reserves no place and commits you to nothing. The team replies with the confirmed batches and approved fees once they are available.

Indian mobile number, or international with +.

Course: Python Full-Stack Development

Mention the format (Group, Duo or One-to-One) and schedule (Weekday Intensive or Weekend Evening) you prefer.

Free career advice

Career advice is free and there is no obligation. Share your number only if you would like us to respond.