AboutPostsContact

Local First Applications

Oleg Korol,•devdatabases

(Last updated on 22 Feb 2026)

In this post, I’ll try to delve into different possibilities to build a local-first application.

First, we’ll dive into what local-first applications are and why you would want to build one.

But even before getting to that, let’s take a very quick & I promise & look at how we used to host databases in the past (and present).

Ye olde way

image01

Traditionally, you had a centralised server, which stored all the data.

This obviously comes with a set of drawbacks, most notably:

Distributed replicas

image02

To address these issues, distributed database systems were introduced. These systems maintain multiple replicas of the data across different servers, providing:

However, this approach still has some limitations:

Local-first approach

image03

The local-first approach takes distributed systems a step further by bringing the data directly to the user’s device. This paradigm shift offers several key advantages:

However, implementing local-first applications comes with its own set of challenges:

  1. Data Synchronization: Keeping data consistent across devices requires sophisticated conflict resolution strategies
  2. Storage Management: Local storage limitations must be carefully considered
  3. Security: Protecting local data from unauthorized access is crucial

There are a few different ways to implement local-first applications.

And then you use some sort of sync algorithm to keep the data in sync between the devices.

I found a couple of interesting projects that implement local-first applications, which I’ll cover in a future post.

CC BY-NC 4.0 2026 © Oleg Korol.RSS