Content Index
Welcome to a new update. I'm here to tell you about all the content I've uploaded and that is already available to you completely free of charge.
As usual, the blog (desarrollofree.net) is the central hub. Currently, I am working on the CodeIgniter 4 update, improving existing applications and adding new examples almost daily.
Additionally, exclusive material is now available that has not yet reached YouTube, such as connecting FastAPI with MongoDB, taken directly from the course I am updating. Remember that on the blog you can access:
- Detailed posts: With code examples.
- Community courses: Available via the "Watch for free" button without registration.
- Free books: Based on premium content, accessible if you register on the https://academy.desarrollolibre.net/ platform.
Android and Python (Django / FastAPI) on YouTube
On the YouTube channel, we continue the trend of previous updates:
Android Studio
We have moved past Kotlin theory to focus on direct development. We have covered essential components (Composables) for modern applications:
Snackbars, Logs, Bottom Sheets, and Navigation Drawer.
Note: This content is also available in book format at a very affordable price.
Django
We are entering the final stretch of this series with fundamental topics:
- Migrations, Django Admin, and advanced form management (ModelForms).
- Introduction to Django REST Framework (DRF): Serializers and ViewSets to create robust APIs with authentication.
Introduction to migrations in Django 6 - https://youtu.be/6pPV8mLaQAQ
Django Admin - Group management fields, fields - 58 - https://youtu.be/gcq8OONJPz4
Presentation of Django 6 forms, Form and ModelForm - 59 - https://youtu.be/_Bt8OD-Fbwo
Create your First Form in Django 6, Text Fields, Textarea and ModelChoiceField - 60 - https://youtu.be/slH1j7lyo9M
Processing the form in Django 6 from the view - 61 -
https://youtu.be/EgyAD_mdHi8
Representing dynamic content of a Template in Django 6 - 62 - https://youtu.be/9e1ply0d2WU
Key Elements of the Django 6 Template Engine - 63 - https://youtu.be/2R3oASh2b9k
Generating the master or base template in Django 6 - 64 - https://youtu.be/8V5RG6MUbQw
Install and Configure Django Rest Framework - APIs - 65 - https://youtu.be/W_QXOYtoie4
What is a REST API?, what is an API, what is Rest, Why Django REST Framework? - 65 - https://youtu.be/DXYwuORmF-s
Django Rest Framework in practice, Serializers and Viewsets - 66 - https://youtu.be/4ciOfc8_b0U
Authentication: Presentation, Session and Basic in Django Rest Framework - 67 - https://youtu.be/1GFp3ss0Crw
Token Authentication using Django Rest Framework - Login Method - 68 - https://youtu.be/rRY4U1OOOQU
FastAPI: The "Secret" of its Greatness
I've uploaded an extensive video on the FastAPI Dependency Injection system and the Repository pattern. We also covered:
- Application lifecycle with lifespan.
- WebSockets in FastAPI: A complete guide consumed from a Vue.js app.
Still writing pure PHP? This is why you need a Framework today - https://youtu.be/T1cPAIQ78r8
Reverse Relationships in Django and the N+1 Problem - https://youtu.be/cmgFNEHY5ec
Repository Pattern: interfaces, Dependencies - The Secret of FastAPI's Greatness - https://youtu.be/J-HbHHMjTOM
⚡ Code Execution on Start or Finish via the Lifespan event in FastAPI - https://youtu.be/a1We_SE9Pg4
Blender
On my other channel, we recap 3D modeling (chess) and concepts of Perspective vs. Orthogonal projection.
Day 3: Modeling a Chessboard with Blender - 03 - https://youtu.be/6fhLdT_uRcU
Day 4: Modeling a Chess Pawn with Blender - 04 - https://youtu.be/wj8KVzqKhok
Differences between Perspective and Orthogonal (Orthographic) projection in Blender - 05 - https://youtu.be/kVY8G5MyT-8
Full Courses and Compilations
I've released several comprehensive materials you can't miss:
- Local AI with Python: Mini course to create a Chatbot application connected to a local LLM (available in video and book).
- Course on how to build a chat with local LLMs and Jan IA or LM Studio and Connect to Python - https://youtu.be/7pb55CGbm9Q
- Laravel Livewire (Dashboard): Based on the online store project.
- Laravel 12 Livewire 3 from scratch course - Dashboard - https://youtu.be/8psIm49Ft2Y
- Laravel 12 + Inertia 2: Fresh update of the community course.
- Laravel 12 Inertia 2 from scratch course - https://youtu.be/L2bLHXbyxHA
-
- ⚡ FastAPI WebSockets: Complete Guide with Authentication, REST API and Vue.js - https://youtu.be/977l8fql-C8
Upcoming Launch: Second Edition of FastAPI
I am in the final stretch of updating the FastAPI Course and Book. If you already know Flask or Django, I highly recommend giving this framework a try.
What's New in the 2nd Edition:
- Clean Architecture (Clean Code): Implementation of best practices and professional organization.
- Database with Alembic: Migration management.
- Essential Extensions: fastapi-mail, fastapi-users for authentication, pydantic-settings for environment variables, traffic control (Rate Limiting), autocrud and fastapi-cache.
Use and consumption of Websockets in FastAPI and a Vue app:
- Select Room
- We present the scheme for selecting the room.
- Filter Implementation to get messages by Room
- We are going to implement an optional GET parameter applied to the messages/alerts endpoint using the room_id.
- Message update without full reload
- We adapt the app so that for the event received from the WS, which is the Message/alert, we push that message into the message array instead of doing a full reload.
- Clean Architecture and Clean Code
- We will adapt Clean Code principles to a FastAPI application.
Database with Alembic:
- First steps with Alembic
- We are going to learn how to create migrations using Python's Alembic.
- Alembic parameters and configurations and first migration
- We are going to configure Alembic to be able to use it and create the first migration.
- Apply migrations
- We are going to apply database migrations.
- Revert changes
- Let's see the 3 types of schemes with which we can revert changes: with numbers, by migration ID, and by base.
Dependencies:
- Nested Dependencies or Subdependencies
- We talk about how we can create Sub-dependencies and their utility.
- Repository Pattern in KEY use with Depends and Annotations
- We are going to explain a design pattern and the KEY use of dependencies in FastAPI in all of this.
- Advanced Dependencies with yield
- We talk about the use of advanced dependencies using yields.
- Connection Pool, keys in dependencies
- We talk about the use of pools, which is CRUCIAL for FastAPI to resolve requests efficiently.
MongoDB:
- Install MongoDB on MacOS with Homebrew or Windows + Compass GUI
- Learn how to install MongoDB on macOS with Homebrew step by step, we talk about NoSQL Databases and installing the Compass GUI.
- Motor: The Asynchronous Driver for MongoDB
- We install and talk about Motor to be able to make connections to MongoDB.
- First connection to MongoDB with Motor
- We create a method to connect to MongoDB and ping it when starting the project in FastAPI.
- Example of Relational Schema in MongoDB
- We will show how to handle the relational schema in a non-normalized many-to-many relationship.
- Relationships
- Let's talk about the rest of the relationships in MongoDB.
Extensions for FastAPI:
- FastAPI Mail
- Async email sending
- FastAPI User (Under Maintenance)
- To create a complete backend for Auth with JWT, registration, login, validations, schemas... with 100 lines of code
- Environment Variables Management with Pydantic Settings
- Let's see how we can create environment variables and read them from a .env, cache them, and recommendations.
- Traffic Control in FastAPI: Implementing Rate Limiting
- We are going to learn how we can limit the number of requests to an endpoint.
- Logs with Loguru
- We configure and show an example of how to use Loguru.
- Creating an AutoCRUD in FastAPI + SQLAlchemy
- We create an AutoCRUD in FastAPI for our Pydantic models and with SQLAlchemy.
- FastAPI Cache 2: Optimization with Cache
- We will see how we can use a cache system to store caches of endpoint responses.
In the Django course I also updated a couple of classes:
- WS: Inject Message from the WS and named parameter when connecting to the WS
- Let's do a couple of optimizations, one of them is to avoid reloading all messages when sending a message (we inject the WS response) and we provide a parameter to the token when connecting to the WS.
- Redesign of the Vue app with Google Antigravity
Special Offer
The book is already on pre-sale in the academy for $8 USD (final price $10 USD). The update will be free for those who already have it. The final PDF will be ready in one or two weeks.
https://academy.desarrollolibre.net/libro/primeros-pasos-con-fastapi/