Abdelrahman Awad
Lessons learned from building a thriving Vue.js SaaS application
#1about 3 minutes
Building a complex Vue.js SaaS application at scale
An overview of the Rasayel application, a feature-rich platform built for WhatsApp business communication by a small engineering team.
#2about 2 minutes
Why Vue.js and GraphQL were chosen for scalability
The decision to use Vue.js for its easy onboarding and GraphQL for end-to-end type safety was crucial for shipping features quickly.
#3about 5 minutes
Organizing a large codebase with a monorepo and flat components
A monorepo with isolated deployment targets and a flat component structure simplifies refactoring but can lead to component duplication at scale.
#4about 4 minutes
Using composables and barrel files to manage logic
Logic is isolated in Vue composables and organized with barrel files, which must avoid side effects to ensure proper tree shaking.
#5about 2 minutes
Building UI-agnostic composables for data management
Composables are designed to handle data fetching, transformations, and real-time updates without any knowledge of the UI rendering them.
#6about 8 minutes
Navigating state management patterns and their trade-offs
An analysis of different state management approaches, from simple refs to provide/inject, highlights challenges with ownership and developer experience.
#7about 3 minutes
Focusing on the right metrics for SPA performance
For a complex single-page application, focusing on Cumulative Layout Shift (CLS) and Interaction to Next Paint (INP) provides more value than raw Lighthouse scores.
#8about 2 minutes
Solving asset version skew in long-lived user sessions
To prevent 404 errors for users who keep the app open for days, asset files are versioned with consistent Git commit hashes.
#9about 1 minute
Managing API version skew between frontend and backend
By sending the frontend's version hash in API headers, the application can detect breaking changes and prompt users to reload.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
33:55 MIN
Audience Q&A on practical micro-frontend challenges
Micro-frontends anti-patterns
44:31 MIN
Q&A on GraphQL, team structure, and vendor software
Building high performance and scalable architectures for enterprises
10:49 MIN
The rise and trade-offs of single-page applications
Snappy UI needs no Single-Page Application
28:37 MIN
Q&A on refactoring SPAs and page transitions
The Lean Web
51:53 MIN
Q&A on shared systems and scaling productivity
Forget Developer Platforms, Think Developer Productivity!
32:22 MIN
Deciding when and how to decouple your projects
Decoupling 101 - Why decouple, when not to, progressive decoupling and success stories in decoupling
01:35 MIN
Understanding single page application architecture
A Primer in Single Page Application Security (Angular, React, Vue.js)
35:44 MIN
Answering questions on headless architecture
Fast & Furious - Going headless with Nuxt.js!
Featured Partners
Related Videos
Snappy UI needs no Single-Page Application
Clemens Helm
petite-vue - Progressively enhancing every application?
Alexander Lichter
Multiple Ships to the Island - Micro Frontends & Island Architectures
Florian Rappl
Common Mistakes in Vue.js and How to Avoid Them
Daniel Kelly
Independently together: how micro-applications improve developer experience + app performance
Bilal Cinarli
Building a large, complex product from the ground up with typescript & Atomic Design:lessons learned
Nathalia Rus
How to Build Truly Production-ready Apps - Modern JS-based SaaS Stack for Indie Devs and Small Teams
Dávid Lévai
Nuxt.js - Just Vue 3 and a bit of magic?
Alexander Lichter
From learning to earning
Jobs that call for the skills explored in this talk.

![Senior Software Engineer [TypeScript] (Prisma Postgres)](https://wearedevelopers.imgix.net/company/283ba9dbbab3649de02b9b49e6284fd9/cover/oKWz2s90Z218LE8pFthP.png?w=400&ar=3.55&fit=crop&crop=entropy&auto=compress,format)
Senior Software Engineer [TypeScript] (Prisma Postgres)
Prisma
Remote
Senior
Node.js
TypeScript
PostgreSQL

Senior Fullstack Engineer (all genders)
envelio
Köln, Germany
Remote
Senior
Python
JavaScript
Structured Query Language (SQL)

Lead Fullstack Engineer AI
Hubert Burda Media
München, Germany
€80-95K
Intermediate
React
Python
Vue.js
Langchain
+1




