Big news! We're updating the book for Vue 3, Nuxt 3, Laravel 10, and Capacitor 3. Learn More →
🚀 Available now

Develop web and mobile apps
from the same codebase.

All achieved using open source technologies.
Laravel, Nuxt and CapacitorJS logos
Sign up for our newsletter and get two free chapters:
    👉 Buy now if you're already convinced!
    The Ultimate Guide to Building APIs & Single Page Applications with Laravel + VueJS + Capacitor Book Cover
    Maintaining multiple codebases sucks.

    Hi, I am Dan Pastori, a certified Laravel developer who was frustrated with writing a beautiful web app only to realize I had to rewrite the app again if I wanted it on my mobile phone.

    I’ve been making web and mobile applications with my friend Jay Rogers for the last 10 years. Jay helps with the design, but I am the only developer.

    Working on a two-person team can be challenging when you cannot throw another person at the problem.

    Supporting three separate codebases for web, iOS and Android is overwhelming.

    Instead of hiring someone, we discovered a handful of tools that allow us to create web and mobile applications from the same codebase. Best of all, everything communicates back to a single API.

    We’re now able to deliver and maintain apps faster than ever before.

    Don't just take our word for it...
    "This book does a tremendous job of explaining the ins and outs of modern development with an eye on clarity and simplicity. And now, if you'll excuse me, I have a TON of refactoring to do on my app!"
    Avatar for James Hull testimonial James Hull / Chief Narrative Officer, Narrative First
    This isn't just a book.
    It's everything you need to start building more with less code.
    500+ page eBook

    Everything is organized in easy to consume chapters with a ton of code examples.

    The book is available in PDF, EPUB, and MOBI formats so you can follow along no matter what device you choose. We give you the perfect amount of knowledge you need to know.

    Screenshot of source code repository
    Instant source code repository access

    Don’t just guess how the code works, see it all in action — in realtime. You’ll even be able to see how we run things on our production branch.

    Private community access

    Don’t learn by yourself. Get instant access to an online community.

    Have your questions answered by the community and meet others who are on the same journey as you.

    Screenshot of community forum granted access with purchase
    Icon for videos included with the book
    In-depth video tutorials

    Sometimes reading just isn’t enough. We created over 10 video tutorials that show you how to set up your development environment, configure your routes, and more.

    Learn from an app that’s actually running in production

    This isn’t another “To-Do List” app. We created an app called ROAST that has many different user permissions levels. This app has real-world problems, with real-world solutions.

    Optimized Sketch & Figma templates for Capacitor

    Designing icons for mobile apps should not be difficult.

    These templates are specifically optimized for Capacitor and will save you hours from fighting the nitpicky requirements for app icons and splash screens. You'll be able to export your graphics in minutes.

    Here's what's inside...
    Nuxt 3 + Laravel 10
    Nuxt 2 + Laravel 9
    Introduction Understand what you'll be learning.
    Preface Why build an API? Pre-Requisites What We're Building Why We Chose Laravel 10 and Nuxt 3
    Configuring Laravel 10 as an API Build a solid & flexible foundation for your app.
    Configuring your development environment Installing Laravel 10.x Configure Laravel as an API Only with Laravel Breeze Preparing your API for Automated Testing On to the Frontend
    Using Nuxt 3 for Web & Mobile Learn how we will design our frontend using Nuxt 3
    Installing and Configuring Nuxt 3 Understanding Nuxt 3's Structure Installing Extra Packages (Optional) Building your first Layout Working with Pages
    Using Laravel Sanctum for API Authentication Prepare your Laravel API for secure authentication.
    Laravel Sanctum Overview Authentication Routes provided by Laravel Breeze Set up API Versioning Configuring our User Route Laravel Passport vs Laravel Sanctum Wrapping Up Set Your Session Domain
    Set Up Nuxt to Properly Authenticate with Your API Securely connect Nuxt to Laravel.
    Using Laravel Sanctum with Nuxt Configuring Nuxt 3 Auth Module + Laravel Sanctum Building Authentication & Registration Components Handling Guest Users with Nuxt 3 Middleware Implementing an Email Validation System for New Registrations On to "Fun"-ctionality
    The Full-Stack Feature Approach Learn how to create a feature from start to finish.
    Using the Proper Methods for API Requests Building a Feature From Start to Finish
    Managing App Resources Through an API Learn how to design RESTful resources.
    Efficiently Building API Endpoints Using our API Endpoints with Nuxt 3 Accessing Resources With Human-Readable API Endpoints Uploading Files Handling "Parent - Child" Relationships Implementing Many-To-Many Relationships Using API Laravel Resources (Routes & Eloquent)
    Permissions, Validations, and Security Prevent users from accessing other parts of your app.
    Permissions Overview Preventing Unauthorized Access Using Middleware Securing API Endpoints With Laravel Gates & Policies Implementing Laravel's Custom Validation Rules Securing Our Front-End With Nuxt Middleware Handling Unauthorized Actions on the Front-End Displaying API Errors to Your Users
    Build iOS & Android Apps with CapacitorJS Create two mobile apps in one command from the same codebase.
    Installing and Configuring CapacitorJS SSR vs SPA Speeding up Builds with a Single Command Token-Based Authentication with Laravel Sanctum Using Native Phone Features In Your App Deep-Linking: Open Your App From the Web
    Implementing Social Logins Allow users to sign in with their social profiles.
    Installing & Configuring Laravel Socialite Allowing logins from Facebook, Google, and Apple Securely Exchanging Tokens With an oAuth Provider
    Opening Your API to Others Allow other developers to integrate with your app.
    Configuring Laravel Sanctum for 3rd Party Access Determining What API Endpoints should be available to 3rd Parties Create Endpoints to Manage Tokens Rate Limiting Requests Nuxt Interface and Settings Using a Personal Access Token Scoping Access Tokens Limiting Access
    API Tips, Tricks, and Gotchas Don't learn this the hard way.
    RESTful Response Codes: How to Use Them How Cross-Origin Resource Sharing (CORS) Works Handling "Imperfect" RESTful Endpoints Benefits of API Versioning Tips & Tricks for Testing APIs Configure Postman REST Client Configure Insomnia REST Client Securing Sensitive Data
    Single-Page Application Tips, Tricks, and Gotchas Prevent yourself from getting a headache.
    When to Use Pinia The Truth about SPA Security Composables vs Mixins Data Fetching Techniques Helpful VueUse Methods When to use EventBus vs $emits Convert to Form Data composable Additional Registration Security with ZXCVBN
    Appendix A few features we used along the way
    Artisan Commands Helpful Eloquent Relationships Installing Laravel Telescope Adding Gravatar as a Computed Eloquent Property
    This is for you if...
    😩 You feel overwhelmed trying to support web and mobile apps 😕 You don't know where to get started with an API-driven application 😅 You are concerned about SPA + API authentication and security 😎 You want to learn concepts from an app that you can actually use
    This isn't for you if...
    Do not buy book if This is the first app you are trying to build Do not buy book if Your app does not need to run in the web and also on native mobile Do not buy book if You have no interest in learning concepts from Laravel or Vue.js Do not buy book if You're trying to build a 3D game or application
    Get the book and more
    Choose the package right for you.
    🚀 This is our Nuxt 3 Launch Sale You'll get our completed Nuxt 2 book and materials today with free lifetime updates to our Nuxt 3 edition. Follow along as we upgrade ROAST from Nuxt 2 -> Nuxt 3!
    The Essentials
    $45 $35 USD
    The Ultimate Guide to Building APIs & Single Page Applications with Laravel + VueJS + Capacitor Book Cover Vue 3/Nuxt 3, Laravel 10, Capacitor 3 The Ultimate Guide to Building APIs & Single Page Applications with Laravel + VueJS + Capacitor Book Cover Vue 2/Nuxt 2, Laravel 8, Capacitor 2
    Green check mark for features included with purchase BOTH Editions of the 500+ page book (for Nuxt 2 and Nuxt 3)
    Green check mark for features included with purchase Sketch & Figma icon templates optimized for Capacitor
    Green check mark for features included with purchase Lifetime access & updates
    Buy Now
    The Complete Package
    $295 $145 USD
    Icon for videos included with book The Ultimate Guide to Building APIs & Single Page Applications with Laravel + VueJS + Capacitor Book Cover Vue 3/Nuxt 3, Laravel 10, Capacitor 3 The Ultimate Guide to Building APIs & Single Page Applications with Laravel + VueJS + Capacitor Book Cover Vue 2/Nuxt 2, Laravel 8, Capacitor 2 Icon for source control and community access included with the book
    Green check mark that includes the book with purchase BOTH Editions of the 500+ page book (for Nuxt 2 and Nuxt 3)
    Green check mark that includes the source code with purchase Production source code access to an app called ROAST
    Green check mark that includes private forum access with purchase Private forum access where you can meet & get help from others
    Green check mark that includes in depth video tutorials with purchase In-depth video tutorials
    Green check mark that includes Sketch & Figma icon templates optimized for Capacitor with purchase Sketch & Figma icon templates optimized for Capacitor
    Green check mark that includes lifetime access with purchase Lifetime access & updates
    Buy Now
    ❤️ Github Sponsors get an additional 20% off the book! Learn more →
    Get a free sample Enter your email below and we'll send you two free chapters.
      Frequently Asked Questions
      How long do I have to wait to get my forum and source code access?

      You'll get instant access after your purchase. Here’s how it works.

      What formats are the files in?
      • Book: PDF, MOBI, EPUB
      • Videos: MP4
      Are physical copies available?

      The book is only available in digital form (ePub, MOBI, and PDF).

      Can I get an invoice?

      After your purchase, Lemon Squeezy will email a receipt with where you can click "generate an invoice".

      Can I upgrade from the "Essentials" to the "Complete Package"?

      Yes! You can do this at anytime. Click here to instantly upgrade and you'll only pay the difference of the packages.

      I originally purchased the content with Gumroad. How do I access the new content?

      Follow our migration guide on how to access our content on Lemon Squeezy.

      Is the book available in multiple languages?

      The book is available in English, but you can use Google Docs to translate the PDF into your native language.

      How can I contact you?

      Just shoot us an email at [email protected]