
Create a fresh Laravel project with composer, naming it blog api, and configure mysql in the environment. Install api routes, remove web.php, install Fortify, and create blog database and tables.
Install and configure a fresh Vue 3 app for the blog, enable Vue routes and the new Vuex state management, integrate Tailwind CSS, and run the dev server to preview.
Implement a basic login with Laravel Fortify and Sanctum, configure API middleware and routes, and connect a Vue front-end with axios for authenticated requests across front-end and back-end servers.
Build a login form for a Laravel 11 and Vue 3 Tailwind CSS fullstack blog, handling cookies, CSRF, and Sanctum stateful domains.
Implement frontend input validation to display backend validation errors, handling 422 responses from login attempts and showing the first email and password errors beneath each field in the login view.
Create a post model with migration and factory, generate a slug from the title, and use tinker to create a post and display the title and slug.
Create a post endpoint in a Laravel 11 API by building an invokable CreatePostController with a validated request, requiring title and body, and returning a created message via sanctum.
Create a post form in the dashboard using axios to post title and body to /api/post, handle responses, clear inputs on success, and implement client-side validation and error handling.
Build a posts listing in a Laravel 11 API and Vue 3 frontend, paginate results, and render them in a dashboard with router-link and TailwindCSS styling.
learn to implement simple pagination on the front end with next and previous URLs, manage a data object with posts, and disable navigation buttons when pages are unavailable.
Implement an update post API endpoint by creating an invokable controller with validated request, binding the post model, and registering a put or patch route using slug instead of id.
Implement an update post view in the Laravel Vue app, fetch the post by slug via the API endpoint, populate a form, and submit updates with Axios, handling validation errors.
Implement a delete post API endpoint with a new controller, wire it to the dashboard button using axios, confirm before delete, and refresh the post list after a 204 response.
Handle expired sessions by implementing a global Axios response interceptor that redirects to the login page on a 401 error, ensuring seamless dashboard access after reauthentication.
Prevent logged-in users from accessing the login page using a guest middleware with Pinia persistence. Guard routes with beforeEnter and clear the user on logout to keep the dashboard secure.
Implement the home page of a Laravel 11 + Vue 3 + TailwindCSS app with a dynamic navigation bar, authenticated-aware links, and paginated post previews.
Create a show post page with a dynamic route, fetch post data, and format the creation date using moment.js in a Vue setup.
Welcome to the **"Laravel 11 + Vue 3 + TailwindCSS: Fullstack Personal Blog"** course! If you're ready to build a dynamic, feature-rich personal blog from scratch using the latest web development technologies, this course is perfect for you. We'll guide you step by step through creating a stunning, responsive blog application, leveraging the power of Laravel, Vue, and TailwindCSS.
Course Overview:
This course is designed to give you practical, hands-on experience in building a personal blog application using modern technologies. We will take you through the entire process of developing a full-stack application, from setting up the backend with Laravel to crafting a beautiful front end with Vue and TailwindCSS.
1. Introduction
- **Introduction to the Course**: Start your journey with an overview of what to expect throughout the course, and get set up with the necessary tools and frameworks.
- **Setting Up the Environment**: Learn how to install and configure Laravel 11, Vue 3, and TailwindCSS in your development environment.
- **Project Structure**: Understand how to organize your project files and directories for a smooth development process.
2. Authentication with Sanctum, Fortify, and Pinia
- **Understanding Authentication**: Learn the importance of authentication in web applications and how it protects your data and user experience.
- **Sanctum and Fortify**: Implement user authentication using Laravel Sanctum for API token-based authentication and Laravel Fortify for UI-based authentication features like registration, login, password reset, and two-factor authentication.
- **Vue 3 and Pinia**: Connect Vue 3 with your Laravel backend and manage your application state efficiently with Pinia, the new Vuex-like state management library for Vue 3.
- **User Authentication in Action**: Build a secure user authentication system with registration, login, and logout features using Sanctum, Fortify, and Pinia.
3. Post Module CRUD
- **Create, Read, Update, Delete**: Implement a full CRUD (Create, Read, Update, Delete) system for managing blog posts in your application.
- **Creating Blog Posts**: Develop a user interface and backend functionality to allow users to create new blog posts, including text and images.
- **Reading Blog Posts**: Learn how to display blog posts on the front end in an organized and visually appealing manner.
- **Updating Blog Posts**: Enable users to edit and update existing blog posts, ensuring a seamless user experience.
- **Deleting Blog Posts**: Add the ability to delete blog posts from the system, including proper confirmation and error handling.
Course Outcomes:
By the end of the course, you'll have created a fully functional personal blog application using Laravel 11, Vue 3, and TailwindCSS. You'll be proficient in user authentication with Sanctum and Fortify, state management with Pinia, and CRUD operations for blog posts. These skills will empower you to build dynamic, modern web applications and excel in full-stack development.
Join us now and embark on an exciting journey to create your own personal blog!