I reviewed one of the latest work by Packt; Frontend Development Projects with Vue.JS. I was supposed to finish the book before now but I was handling a client's project at the time the book came in and I wanted to finish the book and give my honest feedback. I'll be giving my honest feedback, let's get started!
I have read books about Vue JS and have also practiced Vue JS, in fact, Vue JS is my favorite frontend development framework considering that I've worked with other frameworks/libraries. I've used React JS, I chose Vue because of everything! I love the community, it's so welcoming, the documentation, the design and architecture. You must have felt any of these things before deciding to learn Vue, it's the future!
This book is completely designed to help people who wants to get started building Vue.js projects learn and start building with the framework, the book has the essential theories and exercises. It can also be used by mid-level Vue.js developers and advanced Vue.js developers for reference purposes and to discover new and better ways to write Vue. The knowledge packed in this work can be benefitted by anyone who has interest in learning and getting better at Vue.js.
This book is a fourteen chapters book with a total of 775 pages (including Appendix and Index) covering Vue.js from beginner to advanced level, the book contains comparisons and basic to advanced Vue.js concepts. The summary is as follows.
Introduction to Vue.js
Setting up a development environment for Vue.js development.
Comparing Vue.js with other frameworks/libraries.
Introduction to components in Vue.js.
Styling and using template in Vue.js components.
Two-way data binding (working with forms).
Methods in Vue components.
Vue lifecycle hooks.
Working with data, computed props, watchers and methods.
Asynchronous data fetching using methods.
Creating Vue projects using Vue CLI and Vue UI.
Debugging Vue.js application using Vue.js Devtools.
Advanced Vue.js concepts; Component Modularity (props, slots, filters, refs, emitting parent components events from child components), Mixin, Plugin and a bunch of other concepts.
Animating and transitioning State and route using CSS and GSAP.
State management with Vuex (beginner and advanced level).
Unit and End-To-End testing.
Deployment, preparing you app for deployment, continuos deployment using git and how to deploy using platforms like Netlify, AWS using S3 and Cloudfront.
Each chapters in this book contains an introduction to the topic being discussed in the chapter, the content itself, screenshots, code samples, exercise, activity and summary.
There are bunch of exercises used for the purpose of demonstrations in this book, making the book more of a practical one. The code bundles can be downloaded online so you can practice and follow along. There are also advanced projects used to demonstrate advanced topics like:
Exercise 2.01 and 2.02: Working with data, computed props and two way data binding.
Exercise 2.03 (Shop Watcher) and 2.04: Using Watchers in Vue.js.
Exercise 2.05: Handling search functionalities using a Vue Method, a Watcher, and Computed Props in Vue.js:.
Exercise 2.06: Asynchronously fetching data from an API using axios and displaying it using computed props in Vue.js.
Exercise 3.01 and 3.02: Setting up a Vue.js project using Vue CLI.
Exercise 3.03: Setting up a Vue.js project using Vue UI.
Exercise 3.04: How to debug a Vue.js application using Vue.js Devtools.
Exercise 4.01: Building your a modular component.
Exercise 4.02: Passing dynamic props to a component.
Exercise 4.03: Props validation.
Exercise 4.04: Implementing a card component using named slots.
Exercise 4.05: Implementing filter in Vue.js.
Exercise 4.06: Wrapping CountableJS with Vue.js (using Refs in Vue).
Exercise 5.01: Creating a Mixin.
Exercise 5.02: Creating a custom Axios Plugin.
Exercise 6.01: Implementing and adding a message feed page using Vue Router.
Exercise 6.02: Adding a navigation link to the message feed route.
Exercise 6.03: Passing the content of the selected message to a new message page and having it displayed on the page.
Exercise 6.05: Implementing route for each message with a dynamic routing pattern.
Exercise 6.06: Building navigation tabs within the message Vue.
Exercise 7.01: Adding a new message with an animation effect.
Exercise 7.02: Sorting a list of messages with an animation.
Exercise 7.03: Creating a transition effect for each route navigated.
Exercise 7.04: Tweens with GSAP.
And many other exercises.
This body of work is just another great effort made in teaching Vue.js the right and effective way. This work and works like Vue.js Up and Running by Callum Macre (O'Reilly Media) are the kind of books that really teaches you instead of wasting your time, you know those kind of books that keeps you focused on reading them and then after the whole journey you find out that you can't even do a thing or two and that's because they were more of interesting theories and less exercises.
This book is worth trying out and it cost around 39.99 USD (Print + eBook) and 27.99 USD (eBook) on Amazon. I recommend it for beginners, professionals and backend developers looking to get their hands on frontend development.