
Explore how KivyMD builds on the Kivy Python library to deliver material design widgets for cross-platform apps on Windows, Linux, Android, OS X, iOS, and Raspberry Pi.
The lecture explains the two-step process in KivyMD: create the application, then create the interface, outlining widget, empty screen, and empty layout options, with empty screen as a handy choice.
Explore how the Kivy design language (KDL) separates the user interface from Python backend logic, acts like css for Python, and simplifies front-end development with Kivy.
Please note that this course is based on KivyMD version 0.104.2. So, install this version to avoid any kind of issues.
Type this in cmd/terminal:
pip install kivymd==0.104.2
Explore how layouts arrange widgets in Kivymd, from box and stack to grid, flat, badge, relative, and scatter layouts, including nesting and position concepts.
Learn to create a KivyMD app and build the interface. Then design the design language file and add an MD label with text, alignment, font style, and color.
Explore how to display KivyMD icons using the MD icon widget, center them, and align icons like PHP, leaf, and Python while adjusting box layout orientation and DP-based sizes.
Master the diverse button types in KivyMD, including icon, floating action, empty flat, and rounded flat buttons, with icons, colors, and layout options.
Learn to use the theme_class attribute in KivyMD to set the primary palette and the accent palette, and the style theme for cohesive app interfaces.
design an android app structure with kivymd by configuring an md toolbar, its title and colors, and adding left/right actions and a bottom bar with a floating button.
Explore text fields in KivyMD, including dynamic text fields with hint and helper text, max length, focus and error states, and customizable icons and colors.
Learn to create a banner in KivyMD by using a container, customizing height and orientation, and revealing the banner with a button, including lambda-based actions.
Learn to add left and right actions to a KivyMD banner, connect callbacks with lambdas, and print or pass the banner id using a route class and instance references.
Create a slider in KivyMD with python by using the __init__ constructor, calling super, and adding the slider to the screen with self.add_widget, configuring min, max, default value, and color.
Learn to create and customize a KivyMD progress bar, set 0–100 values, display 50% progress, apply color, and use indeterminate, determinate, and normal modes with button-driven start and stop.
discover how to use spinners in kivymd by configuring size and position, enabling spinning with the actor property, and toggling the spinner on and off via a checkbox.
Explore selection controls in KivyMD by building and linking checkboxes and switches, configuring size and positions, handling on_active events, and printing activation states to test interactivity.
Explore creating a tooltip in KivyMD by pairing a widget with a tooltip on an icon button, and customizing the hint text, position, and background and text colors.
Learn to build lists in KivyMD, including one-line, two-line, and three-line items with avatars and icons inside a scroll view. Control the scroll height and colors to tailor the UI.
Create and customize a bottom navigation bar in kivymd, add navigation items with icons and names, adjust panel color and theme, and link items to different screens to test interactions.
Create a mini kivymd app with three buttons and a scroll view, dynamically adding 1-line, 2-line, and 3-line list items via on_press events and add_widget.
Create and swipe cards in kivymd by configuring a card and a swiper with front and back boxes, adjusting size, padding, anchor, type, and removing swiped cards.
Create and customize dialog boxes in KivyMD by wiring a button to open a dialog, setting title, text, and multiple buttons, and adjusting corner radii.
Learn to create bottom sheets in KivyMD, including list and grid variants that appear from the bottom when a user taps a button, with text, icons, and callbacks.
Learn to create a swiper in kivymd by building a multi-item swiper with images, labels, and customizable position, size, radius, and colors.
Learn to use the KivyMD file manager by wiring a button to open it, set a default path, and handle file selection and closing.
Learn to implement a drop-down menu in kivymd by binding a button to show the menu, configuring items with dictionaries, handling on_release events, and dynamically adding items.
Build and display data tables in KivyMD by defining columns and rows, importing the data table, and enabling pagination, with row bindings and optional checkboxes for interactive exploration.
Design a mini login app in KivyMD with email and password fields, a submit button, and a data table that stores submissions by appending entries.
Learn to build tabs in KivyMD with MDTabs inside bottom navigation, configure tab items with titles and icons, adjust indicator height and color, and enable smooth immersion for transitions.
Explore a text analyzer app that counts words and sentences, reports polarity and subjectivity, and showcases additional features through a simple submit and clear workflow.
Learn to build a text analyzer app with kivymd, crafting a main screen with a toolbar, text input, box layout, two action buttons, a data label, and four data cards.
Develop the text analyzer UI in kivymd by adding an information label and four cards to display sentences, polarity, and subjectivity.
Learn to extend a kivymd text analyzer app using text blob to count words and sentences and display polarity and subjectivity with a submit and clear button.
Learn to create a login application with a user sign-up page and login flow, customize the team's color of the application, and build a communication system with Firebase Realtime Database.
Design and prototype a login app interface with kivymd, creating sign up and login screens. Add bottom navigation, toolbars, and email, username, and password fields; explore light and dark themes.
Explore Firebase, a Google powered platform, and its realtime database, using the Python Firebase library to perform create and read operations with push, set, and get.
Connect kivymd apps to Firebase by installing the library, configuring project credentials, and initializing the realtime database. Configure read/write rules and learn to push data between the app and Firebase.
Learn how to put data into a Firebase real-time database using KivyMD, using push and set functions, including dictionary data, and organizing data with child and parent keys.
Learn to read data from a database in a kivy app using the get function, then loop through records and print emails by accessing dictionary keys with a custom key.
Adds signup functionality to a kivymd login app by capturing username, email, and password and saving them in a database backend, with duplicate checks.
Develop the login button back-end by fetching email and password from input fields, validating against stored data, looping through users, and displaying success or failure dialogs.
Fixes a sign-up bug by validating username, email, and password before submission, preventing database deletion and prompting users with an empty fields dialog.
Learn how multithreading splits a program into UI and backend threads to keep apps responsive and avoid crashes, then implement separate threads for signup and login processes.
Create a text-to-speech converter app using kivymd, letting users input text, choose female or male voices, listen in real time, and export audio files.
Design and prototype a text-to-speech converter app using KivyMD, the builder interface, toolbars, text fields, checkboxes, and a clickable custom icon widget for interactive controls.
Learn to add a to-cart feature and convert text to speech using text to speech x three, with voice selection and multithreading to keep the KivyMD app responsive.
Learn to add exporting audio file capability to a text-to-speech app using kivymd, with a dialog to input the file name and a native folder picker for the export location.
Export audio in a kivymd app by combining text and location with an engine, exporting to a named file, selecting a male or female voice, and adjusting speed and volume.
Implement an empty banner in kivymd by attaching it to the toolbar, configuring its id, text, height, and padding, and control visibility with a dismiss action and a lambda callback.
Create a web scraper app with a keyword input and search button to fetch related images from Unsplash, updating results with new terms.
Design an app interface for a python kivy kmd web scraper by outlining a toolbar, box and grid layouts, a scroll view, search field, and a crawling grid of tiles.
Add cart functionality to a Python web scraper app that extracts royalty-free Unsplash images by parsing the site structure with BeautifulSoup and requests, and collects image sources for display.
Fix a bug by checking if the scroll view is empty, then create a new grid layout; otherwise remove the existing grid and rebuild it to refresh tiles after search.
Learn to build an image editor app by importing an image, adjusting its width and height, rotating it, applying blur, and exporting the final result to a directory.
Design a KivyMD image editor interface with a toolbar and layered box layouts, featuring an image widget, rotation controls, an effects panel with checkboxes, and a preview plus export options.
Design and implement an image editor interface in KivyMD, building a vertical toolbar, box layouts, image widget, and text fields for width, height, and rotation with a dark theme.
Design an interface in kivymd with checkboxes, labels, and empty boxes arranged in a vertical layout, centered with padding; customize fonts, colors, and buttons for preview and export.
Resize the selected image in the KivyMD image editor by specifying width and height, then preview the result as a texture in memory.
Learn to implement rotation and effects in a kivymd app, including resizing, rotating, and applying image filters such as blur, contour, detail, and find edges.
Explore exporting images in Kivymd by wiring an export button, tooltips, and folder selection to choose a directory, name the file, and apply a blur effect.
Create a metadata extractor app that extracts metadata from video and audio files, using drag-and-drop or menu options to view details like album, artist, and duration.
Design an intuitive interface for a metadata extractor app using kivymd, featuring a two-screen layout with a toolbar, screen manager, custom icon buttons, and a table to display results.
Build a kivymd app with a native Windows file uploader, multithreaded processing, and tinytag-based metadata extraction for audio and video files displayed in a data table.
Implement a drag and drop feature in a Kivy app by binding and unbinding drop events to process dropped files. Update the UI and display audio metadata.
This course is the next step in Graphical User Interface Development in Python using the most famous, powerful, and easy Kivymd Python library. In this course, you will learn Python KivyMD from a very start to a higher level. You will learn how to create Desktop Applications in Python using KivyMD. Not only this, with the help of the Kivymd library anyone can now develop Android apps for Google PlayStore and IOS apps for App Store.
You will start from a very basic level where you will learn how to create Labels, Buttons, Input Fields, etc.
You will also learn how color Palette works in KivyMD
After some basic knowledge, you will jump to the intermediate level where you will learn a few complicated widgets.
You will learn how to link python functions with your widgets.
In the higher section, you will learn about complicated widgets like Data Tables, etc.
You will also learn how to use kivy and kivymd with other python libraries.
Not only this, you will learn so many other things by developing Practical Applications like Text Analyzer App which we will develop in this course.
After all, this course has an "Extra Stuff" section as well which I will update continuously and I will add new and awesome content to this section.
Not only this, but I will also explain a little bit of Logic Development in this course and you will learn how to solve problems.