Enterprise Vue

Learn to build a full-stack Vue.js CRUD app and authenticated Node.js API with unit testing, modern JavaScript and best practices.

A premium video training course by Anthony Gore, creator of Vue.js Developers and author of Full-Stack Vue 2 & Laravel 5.

What you'll learn

Unlike simple "to-do" apps, enterprise apps have numerous features with complex requirements, but must also balance high performance, stability in production and ease of maintenance.

Enterprise Vue is the course for learning to build fully-tested, production-ready Vue applications that are suitable for commercial purposes.

You simply will not find any other courses with the material depth and focus on best practices and enterprise development principles.

Technologies included

Vue CLI 3

Vue CLI 3

Project Scaffolding


UI Component Library


Modern JavaScript


Node Framework
Mongo DB

Mongo DB

NoSQL Database


API Development Environment


Authentication Standard


Deployment Pipeline


Test Runner
Vue Test Utils

Vue Test Utils

Component Testing Framework


Automated Browser Testing


Cloud Hosting Platform

Features of the course:

  • Single-page app development with Vuex
  • Modern JavaScript from ES2017 spec
  • Unit and E2E testing
  • Forms and input validation
  • Cloud deployment and CDN
  • RESTful API development
  • Token-based user authentication
  • Best-practice environment setup
  • CI/CD deployment pipeline
  • Material Design user interface with Vuetify

What you'll build

The case-study project for this course is PrintBay , an online store for buying prints of famous art works. Shoppers can create an account and then add their favorite prints to a cart. The site owner can create new prints or edit existing ones from the admin interface.

PrintBay has been specially designed to capture all the development challenges you'll face when building enterprise Vue apps for your organization including environment setup, database storage, API authentication, testing and production deployment.

You can try a live version of PrintBay here .

Join the presale!

Enterprise Vue is currently in production and will be officially launched in mid 2019. In order to receive feedback during production, I've opened Enterprise Vue for a limited presale.

Presale enrollments are available for $239, a 50% discount off the $479 launch price. Once officially launched, the course will no longer be attainable at this discounted price.

By joining the presale, you'll receive draft course content as it is completed. You'll also get extra support as this will help me work out any bugs or difficult spots in the course.

Who is this course for?

Enterprise Vue is for senior web developers (and aspiring senior web developers) looking to build the skill-set required for professional Vue.js application development. It's also perfect for startups or development teams looking for a guided blueprint of an enterprise-ready Vue application.

This course presumes that you're comfortable with the basics of Vue, Node, JavaScript and general web development. If you're at an advanced level in these fields, you'll be able to complete the course quicker.

Just starting with Vue?

If you're just starting out, I recommend you begin with my Vue.js Essentials course to build the foundational skills of single-page app development with Vue and Vuex.

What's included?

High-quality video lessons

Special attention has been given to ensure each video is paced fast enough to keep you interested without skipping important details.

English captions

I think my accent is cool, but I've provided human-created subtitles to ensure you never have trouble understanding.

Complete source code for every lesson

Access to the source code will help you understand the app more deeply and allow you to pickup the project from any lesson.

Full transcripts

Transcripts of the videos are provided for quick searching and for later reference.

Frequently asked questions

When can I access the videos?

As soon as you enroll in the presale you can access the draft modules. I will be releasing more videos each week until the full course is complete.

What's meant by the term "enterprise"?

Enterprise has many meanings in software development and covers a lot of subtopics.

In this course, enterprise means web apps that a small team of web developers might build for a business organization. I've further clarified this point in this blog post .

What about Vue 3 and TypeScript?

If I were releasing this course next year those technologies would be included, but as of today, Vue 3 is still being prototyped and TypeScript is not well integrated into Vue.

My plan is to release a free update to the course early next year once the dust settles on Vue 3 and its clear what the best practices are on TypeScript integration.

Course modules

Module # 1
Module # 1

Full-stack project scaffolding

Setting up a Vue project with best practices is pretty easy with Vue CLI 3. It becomes a little trickier if you're going to set up a full-stack app where the codebase is split between client and server.

In the first module, we'll look at how to modify a Vue CLI 3 project scaffold to accommodate a full-stack app configuration, including Webpack config and environment variables.

We'll also configure our full-stack development tools allowing us seamlessly run our API server and the Webpack dev server simultaneously.

vue-cli webpack eslint
Module # 2
Module # 2

Scaffolding an API with Express and Mongoose

In this module, we'll take the first steps in building our backend API. We'll begin by setting up Express and scaffold the API using the MVC structure.

To help us develop the API before we build the client app to consume it, we'll be using the Postman API development environment.

We'll be using MongoDB, and getting familiar with the Mongoose ORM makes CRUD operations with Mongo a breeze.

node express mongo mongoose
Module # 3
Module # 3

Creating tested API routes

Now that our API is scaffolded, we'll get stuck into creating our API routes in the third module, including the main CRUD endpoints, like GET items, POST items etc.

In addition to creating the routes, we'll also be creating tests for the routes to ensure the requests to our API endpoints provide the correct HTTP responses and database state.

mocha chai postman supertest
Module # 4
Module # 4

API authentication

In the fourth module, we'll authenticate API requests by passing JSON web tokens in our request header, allowing us to add user accounts and authentication routes like register, login, and logout etc.

We can then protect certain endpoints, requiring users to log in before they are allowed to create or modify items, for example.

To finish this module and our work on the API, we'll create unit tests that can check our authentication tokens are working.

jwt mongoose mocha
Module # 5
Module # 5

Frontend authentication with Vue Auth

With our authenticated API now up and running, we're now going to return to the frontend app in module 5, and apply frontend authentication.

The Vue Auth library integrates with our HTTP client in order to manage authentication tokens. This will allow users to log in and out in the frontend app and make authenticated requests to the API.

We'll then set up user roles and protected routes with Vue Auth, allowing us to have logged out users, regular users, and admin users using the same client app.

vue-auth vue-router vuex jwt
Module # 6
Module # 6

Forms & documentation

In module 6, we'll be using Vuetify to create elegant, testable authentication forms. We'll add validation using the Vuelidate library.

Finally, we'll add component documentation by autogenerating it with the Vuese library.

vuetify vuelidate vuese
Module # 7
Module # 7

Full-stack app deployment

Now that we've completed our app, it's time to deploy it for production. In this module, we prepare our app for production. We'll then create a free Heroku app and deploy the API. Finally, we set up a process to automatically deploy our static assets to a CDN.

Module # 8
Module # 8

Frontend unit tests

We'll now get an introduction to frontend testing. We'll set up Jest as a test runner and create our first component tests using Vue Test Utils.

Once we're comfortable with the basics of component testing, we look at some other methods like "snapshot" tests and create unit tests for the Vuex store to ensure its integrity.

jest vue-test-utils tdd
Module # 9
Module # 9

Automated browser testing

We've unit tested the frontend components and each API route. To be sure our app is stable, we need to implement E2E (end-to-end) testing. To do this, we'll use the Nightwatch JavaScript framework which automates browser actions allowing use to ensure our main use cases function perfectly.

nightwatch selenium e2e
Module # 10
Module # 10

Continous integration/continuous deployment

In the final module of the course, we'll be setting up a continuous integration and continuous deployment pipeline with Circle CI.

This will allow us to ensure the code changes we make will be blocked until unit and end-to-end tests are all passing.

Finally, we'll integrate Heroku into the pipeline so that if our tests pass, our code can get automatically pushed to Heroku.


Join the presale!

Enterprise Vue is currently in production and will be officially launched in mid 2019. In order to receive feedback during production, I've opened Enterprise Vue for a limited presale.

Presale enrollments are available for $239, a 50% discount off the $479 launch price. Once officially launched, the course will no longer be attainable at this discounted price.

By joining the presale, you'll receive draft course content as it is completed. You'll also get extra support as this will help me work out any bugs or difficult spots in the course.

Meet the instructor

I'm Anthony Gore and I'm here to teach you Vue.js! Through my books, online courses, and social media, my aim is to turn you into a Vue.js expert.

I'm a Vue Community Partner, curator of the weekly Vue.js Developers Newsletter , and the founder of Vue.js Developers , an online community for web professionals who love Vue.js.

This course is the culmination of everything I've learned while working heavily with Vue over the past three years. Join me in this course and I'll pass that knowledge on to you!


This course is still in production, but here are some nice things people said about my other courses:

"Anthony could make a course about how to make a good course. It is easy to follow, to understand and each short video covers a tiny, comprehensive feature, just as it should."

Hector Bella Ticoulat, student of Vue.js Essentials

"The instructor knows his stuff, and the way of gradually introducing new features and showing multiple projects from start to finish is a great way to bring students along."

Matthew Horvat, student of Vue.js Essentials

"This course is exactly what I was looking for, not much theory, more key concepts, and more hands on the code, really well-structured course"

Marco Munoz, student of Vue.js Essentials

"Super-clear, quality teaching. Easy to follow and to understand. Recommended."

Darren-Lee Joseph, student of Vue.js Essentials

"Excellent course. To the point - issues discussed are relevant only to the framework in question - no unnecessary tangents (like vanilla js, css, or unrelated backend concepts). Everything is explained in context of real world apps. 10/10 would buy again."

Andre M, student of Vue.js Essentials

"Anthony provided a great introduction to Vue.js! After completing the course, I feel like I understand the core foundation of Vue.js and can dive right in to building applications and learning additional features of the framework."

Michael Frank, student of Vue.js Essentials

"Excellent teacher. I just started today, and kept going, because the information is relayed smoothly, and in a fun way. Bonus points for returning to improve/fix small issues, instead of leaving them as they are. I don't feel confused, or left behind, and the subject matter is properly explained as we go. If you want to enjoy learning Vue.js, take this course."

Eric Stone, student of Vue.js Essentials

"The course is comprehensive and gives deep details on many Vuejs features, yet introduces them gradually and with thorough explanations. It helps to close a gap between reading Vuejs documentation and building real applications fast and easily."

Eugene Nikolayev, student of Vue.js Essentials

"Excellent coverage of Vue js framework, the steady increase in complexity as the course goes on helps you retain information and gain a deep understanding of Vue."

Vincent Pauley, student of Vue.js Essentials

"Very helpful. I learned I lot of new stuff and I thinks its doing projects like that is the best way to learn. Thank you"

Ibrahim Hasan Abtula, student of Vue.js Essentials

Enterprise Vue

© 2019 Vue.js Developers. All Rights Reserved.