
Develop the thinking process behind building real-world Python projects, focusing on why code works, how to structure features from software requirement specifications, and integrating multiple technologies.
Learn to read and analyze a software requirements specification document, identify the project scope and data flow for a CSV-based property analytics app, including return on investment calculations and visualizations.
Explore how the app handles uploading a property CSP file, reads prices, rent, EMI tax, and expenses, and computes monthly income, monthly expenses, and total with charts for each property.
Set up a Mac development environment for Python projects by installing Python 3 from the official site, verifying the installation, and configuring a virtual environment with pip and virtualenv.
Download Python from the official site, add Python to path, and verify with python --version on Windows; then install a virtual environment with pip and set up Visual Studio Code.
Learn to install django on a mac, create a virtual environment, install django (recommended 3.2), and start a django project with runserver for local development.
Create and activate a virtual environment, install Django, start a Django project named my site on Windows, and run the local server to view the app.
Explore how Django acts as a back-end framework to render HTML forms, process a CSP file on the server, and save results to a database via URL mappings and views.
Learn how a Django project handles browser requests, maps URLs to views, and creates apps, then returns responses and prepares for templates.
Explore how Django templates work, render vs HTTP response, and placing templates in a templates folder inside your app with a subfolder named after the app, including index.html.
Create and organize Django templates by building a templates folder and a project directory. Render index.html with render, passing the request and context for dynamic content.
Discover how to create dynamic Python templates by separating static and dynamic parts, passing data with a context dictionary, and rendering with template syntax.
Learn to render a Python list in a Django template by passing a movies list in context and looping over it with the template for tag to display each item.
Render a simple HTML form in a Django template, switch submissions to post requests, inspect network activity, and secure data with a CSRF token.
Print the request contents to the console, distinguish get and post by request.method, and extract submitted data like name via request.post in a view.
Learn to accept a file input in a form, set the form's EMC type to multipart form data, and read the csv with pandas to obtain a dataframe.
Explore how databases store data in tabular form and how Django's object-relational mapper converts a database model into a table, using fields and migrations.
Create a Django model in your app to map properties to a database table, defining fields like property name, price, rent, EMI, tax, and expenses, then run makemigrations and migrate.
Create a data model, instantiate an object with field values (name, price, rent, emi, tax, expenses), then save it to the database using Django's object-relational mapper.
Master how to access the Django admin panel, create a super user, log in, and register models to manage, view, and edit data in your database.
Learn to upload a CSV, extract data, map fields to a data model, and save records to the Django database using the ORM, while deleting previous data to avoid duplicates.
Learn to extract data from the database using the Django ORM and Python shell, get all objects, and pass them as context to the template for display.
Learn to loop through a data objects list using template syntax, display object properties like name, price, rent, EMI, tax, and expense, and transition to presenting data in HTML table.
Build an HTML table with a header and body, defining headers such as property name, property price, rent, EMI, tax, and monthly expense.
Calculate monthly expenses per property by summing EMI, tax, and expenses, add monthly expenses and income monthly fields with zero, and migrate to auto compute net expenses and net income.
Tailwind uses predefined utility classes applied directly to html elements to style them, eliminating external css; consult the official docs and learn how to integrate Tailwind with Django.
Learn how to style a Django website by organizing a static folder, linking the generated css to templates, and using Tailwind through a source folder, build command, and public folder.
Learn to add tailwind to a triangle website by installing node and npm, creating a package.json, installing tailwind, building styles, and linking the generated css in a django template.
Apply tailwind utility classes to style a form and a table, adding padding, margins, colors, rounded corners, and bold text to data cells for a neat, color-coded layout.
Learn to calculate column totals on the client side using JavaScript by selecting a table with an id, traversing rows and cells, and retrieving values to display on the page.
Write a for loop to iterate table rows and access price cells, collect net prices, convert strings to integers, and compute the total.
Calculate total rent and total prices from the table values by converting strings to integers, fix table references, and compute emi and monthly expenses for display.
Create variables for EMI, tax, expense, and income values, including net and total sums, convert them into integers, and display them in the console as you loop through the table.
Learn to display total values at the bottom of a table by adding a row, assigning IDs, and updating HTML elements with calculated totals to improve readability and UI clarity.
Add styling to a webpage using HTML and Tailwind, building an indigo navigation bar, a responsive banner, and an aligned form and table for data visualization.
Add a bar chart to visualize each property's net monthly income on a web page, using a third-party chart library via CDN or npm, with configurable labels, data, and colors.
Learn how to populate a chart with net income values from a table by pushing data into arrays, extracting property names, and labeling the chart accordingly.
Build a monthly expense chart by duplicating the income chart, wiring a new canvas, and populating it with net monthly expenses using JavaScript arrays and unique chart names.
Explore how to create an expense spread chart and an income spread chart using JavaScript, canvas, and arrays, splitting each property's totals into EMI, tax, and monthly expenses.
Learn to build an income spread chart by adapting an existing chart, converting it into a donut or pie chart, and customizing colors for clear income shares across properties.
Begin building a cross-platform Python computer performance monitor that reports the number of cpus, cpu usage, total ram, ram usage, available ram, and network speeds using the ask psu library.
Learn to build a python-based computer performance monitor using psutil to obtain cpu count and cpu percent, install via pip, import the library, and print usage in a while loop.
Calculate RAM usage using PSU, interpret the resulting tuple, extract total, available, and used memory in gigabytes, and prepare to display these values in a GUI.
Learn to measure internet speed using the speed test library, including download, upload, and ping, and display results in a clean Python script.
Build a graphical user interface for a cpu status app by creating a root window, setting geometry and a title, and adding grid-placed labels for CPU count and cores.
Learn to display CPU count and real-time CPU usage in a Python GUI by creating a usage function, updating labels, and repeating every 100 milliseconds.
Create and display RAM metrics in a Python GUI by adding labels for total RAM, RAM usage, and available RAM, calculate values, update text, and align them in a grid.
Learn to build a user interface that tests internet speed with a test internet speed button and grid-placed labels for download, upload, and ping.
Create a Python project that checks internet speed by wiring a speed button to an internet speed function, using the speed test library to measure download, upload, and ping.
Install the Arbitron font from Google Fonts and apply it to labels, set font sizes and boldness to make the app more attractive.
Learn to add a speedometer image to a Python app and display upload speed, download speed, and CPU count on labels. Load the image and center it on the labels.
Apply the same background and foreground color to all labels, set the root window background to black for cohesion, and adjust label borders by decreasing the border value.
Increase the window width from 1300 to 1700 to resolve the border issue, and note the ram display and the internet speed button's possible out-of-bounds on small screens.
Run the application, style the speed button by setting width, height, and font, then test internet speed to display download and upload speeds with the Speed Test Library.
Launch the contextual advertising platform by creating a Django project folder, adding an app, configuring settings, and running the server to view the project in a browser.
Create a Django-based form to input a blog url, render index.html template, and set up the view and url mapping to handle submissions that read the blog and extract keywords.
Learn to obtain a user-entered URL by handling post requests in a view, accessing request.POST with the field’s id and name, and preparing to visit the URL.
Install the requests library using pip, import requests, fetch pages with the get method, read the response content, and plan to parse HTML with Beautiful Soup in the next lecture.
Learn to use BeautifulSoup to parse HTML, install and import the library, extract paragraph text with find_all, and assemble it into a clean string.
Learn to extract keywords from text using the rake library, install necessary components like stop words, and obtain ranked keywords for later matching with ads.
Create a Django ad model with tags and image fields, run migrations, and register the models in the admin panel to display ads on the index page based on keywords.
Match ad keywords with article keywords by extracting tags, turning lists into sets, and finding common keywords to surface relevant advertisements.
Find relevant ads by matching ad tags to common keywords using the ad model and nested loops. Remove duplicates with a set and prepare the relevant ads list for testing.
Submit and test multiple ads across health, insurance, and fitness topics, selecting images and articles to trigger keyword-relevant ads and prepare to display them in the next lecture.
Display relevant ads on the homepage by passing a context dictionary with relevant ads to the template, then loop through ads to show the ad name, tag, and image.
Fix image display in a Django app by loading static files and media URL. Render clickable ads with fixed width and height and display common words via a template loop.
Learn to install Tailwind CSS in a web project using Node.js and npm, initialize a package.json with npm init -y, and install Tailwind CSS version 2.2.6.
Learn to add Tailwind to a Django project by configuring the static folder, creating a source Tailwind file with base, components, and utilities, and building the stylesheet.
Learn to style a homepage search form with tailwind utility classes, applying shadows, margins, padding, and rounded inputs, plus a blue hover button with white text and focus outlines.
Master styling ads with a responsive card grid that shows three ads on large screens and one on small devices, including image cards and bold ad names.
Learn to install OpenCV for Python, create a video capture from the webcam, display frames in real time, and exit gracefully to prepare for a hand-tracking project.
Discover how MediaPipe's pre-trained hand-tracking model detects hand landmarks from live video, with no training needed, and install via pip using Python 3.7.
Learn to import media pipe as mp, use the mp hands solution, convert frames from bgr to rgb, and extract hand landmarks coordinates for detected hands.
Learn to detect a hand and draw its landmarks using MediaPipe's drawing utilities, connect points to map hand joints, including the thumb and index finger.
Identifies index finger and thumb landmarks, converts landmark ratios to actual x and y coordinates using image width and height, and draws circles to enable distance-based volume control.
Draw a line between the thumb and index finger coordinates, compute their distance with a Pythagorean formula, and map that distance to the system volume using a cross-platform library.
Install the osascript and numpy libraries with pip, map a distance from 100 to 700 to a 0–100 volume range, and test the macOS volume script.
Learn to install pycaw, access the volume interface, and map finger distance to a Windows volume level using a Python project that controls the master volume via a webcam.
Demonstrate how the application captures the entire screen and showcases a sound bar where moving fingers closer or farther adjusts the volume.
Outline the next steps and postcourse projects in this course conclusion, including a web-based email program with Django and lead management software, plus a music player and video creation tool.
Projects In Python For Beginners
Here Is What You Get By Enrolling In This Course:
Word-By-Word Explanation: In the entire course, I explain each line of code, without skipping a single line of code.
Awesome Quality Content: Over 8+ hours of HD Videos.
Well Structured & Easy To Learn: Course has been specially designed to make it easy for the students to learn Django starting from a basic level and gradually moving up to advance concepts.
24 X 7 Support: I will always be there to guide you in your journey to become a Django expert.
Here Is Everything You Will Learn In This Complete Course:
In this hands-on course, you will learn how to build Python projects using your existing Python skills.
In this course we will build 4 Major apps covering technologies like Django, OpenCV, Implementing Machine Learning Models, Rake NLTK, Tkinter and a lot more.
Here is a brief description of what you will learn in each section of the course:
Section 1: Building A Data Analysis & Visualisation Web App.
Technologies used:
Python : Programming Language
Django : For web based app.
Pandas: For data analysis.
ChartJS: For data visualisation.
Project description:
In this section we will be building a data analytics and visualisation web app. This app will read data from a raw CSV file in a pre-defined format and will generate visualisation charts for us. We will start off by reading and understanding the software requirements specification document and figuring out what exactly needs to be built. This SRS document will mimic the real document which is given by clients to software developers. We then setup the required development environment on our machine required to build the project. As this is a web app, we use Django as a platform to build our entire app, we learn how to download and install Django on our machine and also learn a view basics about Django to get started. We will then learn how to make our Django app read a CSV file submitted by the user and then read data from it. We will learn how to convert the CSV data into a pandas data frame so that the data could be manipulated and analysed. We then render out this data to a HTML page and display it in a tabular format. We also analyse the data using pandas and then feed the analysed data to a Django template and display it in terms of charts for data visualisation. We make use of a library called as ChartJS to display data on our webpage. Hence in this project we learn how multiple technologies like Django, Pandas, ChartJS integrates together to form a working web app.
Section 2: Computer Performance Monitor Using Tkinter.
Technologies used:
Python : Programming language
Tkinter : For building graphical user interface
Psutil : For accessing hardware stats
Speedtest: For getting the internet download, upload speed and ping.
Project description:
In this section we will build a desktop app that monitors CPU & RAM usage in real-time. This project would be built using technologies like Python, Tkinter, psutil and speediest. This app will also be able to calculate the ping, internet download and upload speed as well. We will learn how the psutil library allows us to access the OS level APIs and in turn give us access to the computer performance stats in real time. We will first calculate the CPU usage, then RAM usage and finally the internet speed. We then learn how to represent this information in a desktop app using Tkinter. We build the entire interface for our app using Tkinter and then display all the statistics on a window. We also learn how to use custom fonts, colours and images to give our app a better look and feel.
Section 3: Contextual Advertising Platform.
Technologies used:
Python : Programming language.
Django : For web app.
Requests: For making HTTP request to blog pages.
BeautifulSoup: To parse webpages
RakeNLTK : To find relevant keywords
Project description:
Contextual advertising is a technology that finds our relevant ads from a given blog article to maximise a blog or websites revenue. Contextual advertising is the reason why you see an ad for nike shoes on a fitness related article. In this section we will be building a contextual advertising platform which reads data from any blog who's URL you pass in, find relevant keywords on that blog and find ads which are relevant to them and all of this is done automatically. First we create a basic Django app that could accept a blog URL, then read all the data on that blog page using the requests library and parse the data using BeautifulSoup. We then feed the parsed data to the rake library which then finds the most relevant and prominent keywords in that blog article and save them. These relevant keywords are then matched with the ads present in our database and gives us back the ads which are most relevant to the blog post. We will also use Tailwind to style up the web app.
Section 4: Gesture Volume Control Software For Mac & Windows.
Technologies used:
Python: Programming language.
OpenCV: To capture webcam input.
Mediapipe: To detect, track hands.
Osascript : To control system volume on Mac.
Pycaw: To control system volume on Windows.
Project description:
This project would be the most interesting one, we will build a gesture volume control software which will allow you to control the volume of your computer by just using two fingers. This software captures your webcam input, detects focal points on your hand like the fingertips and joints and allows us to find the distance between two points. To build this app we use opencv's python module which allows us to capture video from our web cam, frame-by-frame. Once the video is captured we then use MediaPipe which provides us a set of already trained machine learning models which allows us to detect hands in a live video. We then detect the key points on our hands to detect a gesture and find the distance between tips of two fingers so that we could control system volume. We then make use of osacript on Mac and pycaw on Windows to control the system volume and integrate the two things together so that volume could be controlled by two fingers.
So let's begin the journey of developing projects with Python
In addition to the Udemy 30-day money back guarantee, you have my personal guarantee that you will love what you learn in this course. If you ever have any questions please feel free to message me directly and I will do my best to get back to you as soon as possible!
Make sure to enrol in the course before the price changes.
Take yourself one step closer towards building complex python projects by clicking the "take this course button" now!
Join the journey.
Sincerely,
Ashutosh Pawar