Abdelrahman Awad

Lessons learned from building a thriving Vue.js SaaS application

How do you handle API version skew when users don't reload your app for over 70 days?

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.

job ad

Saby Company
Delebio, Italy

Intermediate

d

Saby Company
Delebio, Italy

Junior

Featured Partners

Related Articles

View all articles
CH
Chris Heilmann
All the videos of Halfstack London 2024!
Last month was Halfstack London, a conference about the web, JavaScript and half a dozen other things. We were there to deliver a talk, but also to record all the sessions and we're happy to share them with you. It took a bit as we had to wait for th...
All the videos of Halfstack London 2024!
EM
Eli McGarvie
Stop Wasting Time: How to Lead a Stand-Up Meeting & Get Results
We all know the feeling: your stand-up meeting starts… and the energy in the room slowly deflates. Eyes glaze over, minds wander. Maybe you can even see their attention drop on smartphones or laptops.Within minutes or even seconds, instead of a quick...
Stop Wasting Time: How to Lead a Stand-Up Meeting & Get Results
LM
Luis Minvielle
Developers share the most interesting tech they ever built
Most people's first thoughts about Hacker News revolve around venture capital, stock prices, company valuations, and $1499 dongles. But what if we told you that Hacker News could also be a place for pure, consummate, wholesome content that tackles ho...
Developers share the most interesting tech they ever built
LM
Luis Minvielle
10 Developer Websites in 2023
As a web developer, you're always investigating how to level up your skills and streamline your workflow. That's why we've gathered a collection of 10 innovative tools that are guaranteed to boost your productivity, enhance your coding abilities, ele...
10 Developer Websites in 2023

From learning to earning

Jobs that call for the skills explored in this talk.