
Build a Vue 3 admin dashboard with TypeScript using the composition API, covering user and role management, product creation with image uploads, order export, charts, and live data updates.
Learn how to redirect users from the registration flow to the login screen by creating a login component, wiring it into the router, and using router.push after successful registration.
Configure axios to include credentials for all requests, post to the login endpoint to obtain cookies, and navigate to the dashboard after authenticating the user.
retrieve the authenticated user in a Vue 3 with TypeScript app using axios in onMounted, and update the nav profile name from firstName and lastName.
Implement a logout function that calls the back end to log out, redirects to the login page, and protects dashboard routes by checking authentication with a try-catch and router.
Learn how to use Vue 3 watchers to react to page changes and auto-load data, using a watch function to call a handler when a reactive page variable updates.
Build a user creation flow in a Vue 3 with TypeScript app by adding a user create component and a form for first name, last name, email, and role.
Create a reusable paginator component in Vue 3 with TypeScript, wire navigation, pass last page as prop, emit page changed events, and integrate with product and user views.
Create a product with a form including title, description, image, and price. Use reactive data in setup with TypeScript, post to products via axios, and navigate to the product page.
Install C3 and types in the dashboard, configure a time-series bar chart using Vue 3 and TypeScript, fetch data with axios, and map data to chart columns for display.
Manage a user state with Vuex in a Vue 3 TypeScript app by defining state, mutations, and actions; dispatch set user, use computed store state, and sync updates across components.
Organize complex Vuex state with models and namespaces by creating a user model in TypeScript, exporting a structured store module, and applying a user namespace for clear data flow.
Learn to deploy a backend with docker compose and a MySQL database, configure environment variables and volumes, start containers, and access the API documentation at localhost to consume the API.
Trim the Vue 3 with Typescript dashboard by removing unused views and assets, then implement a bootstrap-based template with a new menu component and integrated navigation.
Organize routes by creating a public folder for login and register and a secure folder for authenticated components, then configure the router to render the register component at register path.
Build a login form in Vue 3 TypeScript, bind email and password with v-model, post via Axios, store the token in localStorage, and set authorization headers for private routes.
Learn how to implement child routes in Vue 3 with Typescript by creating a secure component that checks user authentication on mount, rendering a dashboard as a child route.
Sign out by clicking the logout button triggers a listener that clears local storage and redirects to the login page using router push, with error handling via catch in setup.
Create a users component in the secure folder, fetch all users from the API, and display them with name, email, and action in a table.
Create and structure user, permission, and other classes in TypeScript, initialize properties with constructors and default values, import dependencies, and apply an entity interface to enforce a consistent id property.
Create a users form in a Vue 3 TypeScript app by building a users create component, wiring a router, and posting first name, last name, email, and role to /users.
Create a role management form by building a rules component with a name field and permission checkboxes, fetch and track selected permissions, and submit to create a role using TypeScript.
Learn how to update roles in Vue 3 with TypeScript by prefilling role data, syncing selected permissions via checkboxes, and submitting updates via the router and a URL.
Create a product form in Vue 3 with TypeScript, handling title, description, image and price, submitting via axios to a products endpoint and navigating to the product list on success.
update products in a Vue 3 app using a TypeScript product class with id, title, description, image, and price, then get the product data, edit it, and submit updates.
Create a Vue 3 and TypeScript orders component that fetches orders, supports pagination with page and last page, and displays id, name, email, and total with view and export actions.
Create a view component for order items, reuse the orders table, and display product title, price, and quantity while fetching order items and defining order and order item entities.
Install a chart package for the dashboard, configure a bar chart with a time-series x-axis, fetch data from the backend, and update the chart dynamically.
Configure a Vuex store with a user module, using actions and mutations to set the user, dispatch updates, and a computed property for the profile and secure components.
Learn to dispatch events with Vuex in a Vue 3 and Typescript app, updating the store when the user changes and seeing automatic UI updates across views.
Implement a can view permission function to gate page access in a Vue 3 TypeScript app, wiring menu visibility and table actions to user roles via a store.
Hello and welcome to this course, in this course you will learn how to create an Admin App using Vue 3 Composition API with Typescript.
In this tutorial you will learn:
Use Vue with Typescript
Use Vuex
How to use Composition API
Create classes, interfaces
Create public and private routes
Restrict routes for unauthorized users
Upload Images
Export CSV's
Build a chart with c3.js (part of d3.js)
I'm a FullStack Developer with 10+ years of experience. I'm obsessed with clean code and I try my best that my courses have the cleanest code possible.
My teaching style is very straightforward, I will not waste too much time explaining all the ways you can create something or other unnecessary information to increase the length of my lectures. If you want to learn things rapidly then this course is for you.
I also update my courses regularly over time because I don't want them to get outdated. So you can expect more content over time from just one course with better video and audio quality.
If you have any coding problems I will offer my support within 12 hours when you post the question. I'm very active when trying to help my students.
So what are you waiting for, give this course a try and you won't get disappointed.