▶Book Description
Vue is a JavaScript framework that can be used for anything from simple data display to sophisticated front-end applications and Laravel is a PHP framework used for developing fast and secure web-sites. This book gives you practical knowledge of building modern full-stack web apps from scratch using Vue with a Laravel back end.
In this book, you will build a room-booking website named "Vuebnb". This project will show you the core features of Vue, Laravel and other state-of-the-art web development tools and techniques.
The book begins with a thorough introduction to Vue.js and its core concepts like data binding, directives and computed properties, with each concept being explained first, then put into practice in the case-study project.
You will then use Laravel to set up a web service and integrate the front end into a full-stack app. You will be shown a best-practice development workflow using tools like Webpack and Laravel Mix.
With the basics covered, you will learn how sophisticated UI features can be added using ES+ syntax and a component-based architecture. You will use Vue Router to make the app multi-page and Vuex to manage application state.
Finally, you will learn how to use Laravel Passport for authenticated AJAX requests between Vue and the API, completing the full-stack architecture. Vuebnb will then be prepared for production and deployed to a free Heroku cloud server.
▶What You Will Learn
⦁ Core features of Vue.js to create sophisticated user interfaces
⦁ Build a secure backend API with Laravel
⦁ Learn a state-of-the-art web development workflow with Webpack
⦁ Full-stack app design principles and best practices
⦁ Learn to deploy a full-stack app to a cloud server and CDN
⦁ Managing complex application state with Vuex
⦁ Securing a web service with Laravel Passport
▶Key Features
⦁ End-to-end guide on full-stack development with Vue.js 2 and Laravel 5
⦁ Developing modern user interfaces with a reusable component-based architecture
⦁ Use Webpack to improve applications performance and development workflow
⦁ Explore the features of Vuex to build applications that are powerful, consistent, and maintainable
▶Who This Book Is For
This book targets developers who are new to Vue.js, Laravel, or both, and are seeking a practical, best-practice approach to development with these technologies.
They must have some knowledge of HTML, CSS and Javascript.
▶What this book covers
⦁ Chapter 1, Hello Vue - An Introduction to Vue.js, presents an overview of Vue.js, and the book's case-study project, Vuebnb.
⦁ Chapter 2, Prototyping Vuebnb, Your First Vue.js Project, provides a practical introduction to the essential features of Vue.js, including installation, template syntax, directives, lifecycle hooks and so on.
⦁ Chapter 3, Setting Up a Laravel Development Environment, shows how to set up a new Laravel project for inclusion in a full-stack Vue.js app.
⦁ Chapter 4, Building a Web Service with Laravel, is about laying the foundations of the backend of our case-study project, by setting up the database, models, and API endpoints.
⦁ Chapter 5, Integrating Laravel and Vue.js with Webpack, explains how a sophisticated Vue app will require a build step, and introduces Webpack for bundling project assets.
⦁ Chapter 6, Composing Widgets with Vue.js Components, teaches how components are an essential concept of modern UI development and one of the most powerful features of Vue.js.
⦁ Chapter 7, Building a Multi-Page App with Vue Router, introduces Vue Router and shows how we can add virtual pages to a frontend app.
⦁ Chapter 8, Managing Your Application State with Vuex, explains how state management is a must-have feature for managing complex UI data. We introduce the Flux pattern and Vuex.
⦁ Chapter 9, Adding a User Login and API Authentication With Passport, focuses on one of the trickiest aspects of full-stack app-.authentication. This chapter shows how to use Passport for secure AJAX calls to the backend.
⦁ Chapter 10, Deploying a Full-Stack App to the Cloud, describes how to build and deploy our completed project to a cloud-based server and use a CDN for serving static assets.