
Learn how Python packages and modules are structured, how imports use __init__ and from syntax, and how virtual environments and Flask-style frameworks organize restful API projects.
Install pip and Flask, create and activate a virtual environment, and run a basic Flask app from the terminal to manage project dependencies.
Explore how Flask, with Werkzeug and Jinja2, enables lightweight RESTful services. Understand REST basics, HTTP methods like get, post, put, delete, and data formats such as JSON and XML.
Discover core RESTful features such as a uniform interface, representations, messages, links, caching, and statelessness, and how resources are identified and represented in JSON or HTML.
Build a fully functional Flask project with a database using SQLAlchemy, featuring a landing page, login and registration forms, and user post classes backed by SQLite for RESTful web services.
Build the Flask home page by mapping the root route to render the home.html template. Define a user model with id, username, password, image, and email, and relate to posts.
Define a Flask post model with id, title, date_posted (UTC), and content, linked to a user via a foreign key, then create and render sample posts on the home page.
Create a fully functional registration form for a Flask RESTful API using Flask-WTF forms, with username, email, password, and confirm password fields, validation, and integration with routes and templates.
Build a Flask login form using a login form class with email, password, and remember me, mirroring the registration form, validate on submit, flashing results, and redirecting to home.
Create and relate users and posts in a python rest api by initializing a fresh database, adding user and post models, and committing entries.
Learn to build a web messenger with microservices, using two microservices that work together, Radius as a database, and Docker to deploy and manage expiring messages.
Explore how Namco enables Python microservices with RPC over AMQP, using RabbitMQ as a broker, and learn practical setup with Docker, virtual environments, and structured requirements.
Create a nameko microservice in pycharm, defining a konnichiwa service with rpc, configure a yaml file for rabbitmq, and run to return konnichiwa.
Create a tests directory, and implement basic tests for the Konnichiwa service using the worker factory. Configure http encryption and expose the service via http get in a browser.
Learn to run Redis in Docker, install it, and interact via the command line interface. Explore set, get, ttl, and keys usage, store messages with expiration, and observe keys disappearing.
Develop a nameko dependency provider to communicate with resources using a radius client, wire up a dependencies folder, and expose a message service via rpc to fetch and manage messages.
Save messages with a reduce client by creating a save_message method and store content with a set function, then retrieve all messages via get_all_messages rpc on redis.
Learn to display messages in a browser by integrating a Jinja2 templating engine with a Python REST API, rendering messages through a home HTML template.
Create a POST /messages endpoint and use Ajax to send messages from the browser, handling json payloads and errors, and display new messages live.
Learn to expire messages after a set time and sort them by expiry using Redis, get all messages, and display newer messages on top for dynamic display.
Explains adding browser polling to a python rest api by creating a json response, handling get and post messages, and updating the browser via ajax and jquery every second.
Build a full stack online video game store with Flask and Django, enabling game creation, image uploads, cart and purchases, admin login, and a functional API.
Set up the development environment, create a Django project and apps, activate a virtual environment, install Django and pillow, configure npm/node, run migrations, and launch the server.
Explore our Django project structure, locate key files like manage.py, settings.py, and urls.py, and learn to create a super user, run the server, and navigate the database using manage.py commands.
Create a Django app by adding a URL, a view, and an index template for a loading page. Build a base template with static assets and extend it for pages.
Install frontend dependencies with npm to add bootstrap and font awesome for a Django project, configure static and templates, and run the server with manage.py.
Learn to implement login and logout in a Django app by creating an authentication form, wiring URLs to login and logout views, and building a login template.
Update the front-end by refining the login partial html to show a logout form when authenticated. Embed the partial in base html and set the login redirect url in settings.py.
Create a Django rest api user signup flow by building a signup form that validates username, email, names, and password, enforces uniqueness, and routes through views and urls.
Develop the front end for creating users with Django templates and css, building a signup form posting to the sign up url with csrf, and a create account success page.
Define Django models for game and game platform, with fields for name, release year, developer, publisher, image, and platform relations, plus a game manager and migrations.
Build the front end of the game data model by creating HTML templates and a dynamic game list using Django, including highlighted games, images, release, developer, publisher, and price handling.
Build and refine the Django index view to display games, using a max highlighted games and a max game list, and fix template and admin setup for proper rendering.
Create two new views for all games and highlighted games, wire them in the urls, and render them with proper templates and context to display flexible game lists.
Design a shopping cart model and manager in Django, enabling cart creation, item management, and user-linked cart behavior, including migrations and related item models.
Develop and update shopping cart forms with Django inline formset factory, handling quantity and price per unit, and integrate into a shopping cart update view and cart template.
Create a shopping cart view by wiring the cart URL, building the cart HTML template, and rendering items in a dynamic table with quantity, price, and total, including form handling.
Add items to the cart by calling the cart/add path with the game id to create or update cart items in the Django backend. Implement login required protection, retrieve the game by id, manage existing items with get_existing, and show a confirmation message that the item was added to the cart.
Learn to build and style the cart front-end for a game store, implement price handling, totals, and login-gated cart interactions using CSS and table layouts.
Welcome to the exciting world of web development, where we'll guide you through the journey of building a dynamic and interactive online video game store from scratch. This comprehensive course is designed to equip you with the skills and knowledge needed to create modern web applications using popular Python frameworks - Django and Flask.
What You'll Learn:
This course starts with the fundamentals, ensuring you have a strong foundation in Python programming and web concepts. From there, we dive deep into setting up your development environment, managing dependencies, and creating virtual environments to keep your projects organized.
You'll master Flask, a lightweight and flexible web framework, and harness its power to create RESTful services, enabling seamless communication between your web application and the server. Our instructors will guide you through user authentication, allowing you to implement essential features like user registration, login, and logout securely.
Discover the art of designing and managing databases as we delve into the back-end and front-end aspects of game data. You'll learn to display, edit, and organize game information efficiently.
But that's not all – our course covers the implementation of shopping cart functionality, enabling users to browse games, add them to their cart, and seamlessly complete purchases.
Throughout the course, we will emphasize on best practices in web development, including code organization, security measures, and user-friendly design principles. Real-world project experience is at the core of this course, ensuring you graduate with the ability to build web applications that can be deployed and enjoyed by users worldwide.
Project 1, titled "Implementing the Flask Application," will guide you in building a command-line application that handles user posts, user registration, and login functionality. This section will introduce you to fundamental Python programming concepts. You'll acquire skills in parsing command-line arguments to enhance program interactivity, and you'll also discover how to manage user databases using SQLAlchemy.
In Project 2, "Building a Web Messenger with Microservices," you'll gain insights into using Nameko, a Python microservice framework. Additionally, you'll explore creating dependency providers for external resources like Redis. This project will delve into integration testing for Nameko services and cover the basics of making AJAX requests to an API.
Project 3, "Creating an Online Video Game Store with Django," will empower you to establish an online video game store. It will offer features like game category browsing, advanced search capabilities, detailed game information display, and the ability to add games to a shopping cart and place orders. Throughout this project, you'll delve into Django 2.0, the administration UI, Django's data model, and more.