<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u" -->

---
title: Rethinking Data: Moving From the Traditional Three-Tier...
description: Johannes Schickling, founder of Prisma, discusses his journey from traditional three-tier web architecture to local-first development. He explains how he built...
canonical: https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Rethinking Data: Moving From the Traditional Three-Tier Web Stack to Client-Side Event Sourcing | daily.dev
og:description: Johannes Schickling, founder of Prisma, discusses his journey from traditional three-tier web architecture to local-first development. He explains how he built...
og:url: https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u
og:image: https://api.daily.dev/og/posts/aW8LUZp1U.png
og:image:alt: Rethinking Data: Moving From the Traditional Three-Tier Web Stack to Client-Side Event Sourcing
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Rethinking Data: Moving From the Traditional Three-Tier Web Stack to Client-Side Event Sourcing

**[InfoQ](https://daily.dev/sources/infoq)** · 38 min read · 0 upvotes · 0 comments

## Summary

Johannes Schickling, founder of Prisma, discusses his journey from traditional three-tier web architecture to local-first development. He explains how he built Overtone, a music curation app, using client-side event sourcing and SQLite via LiveStore — an open-source framework he co-developed. The conversation covers when to adopt local-first architecture, how to break down data models into smaller units for client-side storage, and the trade-offs between event sourcing and CRDTs. Key decision factors include offline capability requirements, data ownership priorities, and whether the user experience benefits justify the upfront architectural complexity. Schickling also contrasts local-first sync approaches like LiveStore and Automerge with query-based sync engines like ElectricSQL and PowerSync.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.infoq.com/podcasts/rethinking-data-client-event-sourcing>

---

Tags: [#architecture](https://daily.dev/tags/architecture), [#sqlite](https://daily.dev/tags/sqlite), [#local-first](https://daily.dev/tags/local-first)

[View this post on daily.dev](https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Rethinking Data: Moving From the Traditional Three-Tier Web Stack to Client-Side Event Sourcing","url":"https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u"},"datePublished":"2026-07-27T13:01:33.423Z","dateModified":"2026-07-27T13:02:00.065Z","description":"Johannes Schickling, founder of Prisma, discusses his journey from traditional three-tier web architecture to local-first development. He explains how he built...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/1c4227aced0e3ccd3b2c1fd244c63b1d?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/1c4227aced0e3ccd3b2c1fd244c63b1d?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"InfoQ","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"InfoQ","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/afc3bced3e1e4b188dd9127017a60e0c","url":"https://daily.dev/sources/infoq"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/rethinking-data-moving-from-the-traditional-three-tier-web-stack-to-client-side-event-sourcing-aw8luzp1u","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"architecture,sqlite,local-first","timeRequired":"PT38M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"InfoQ","item":"https://daily.dev/sources/infoq"},{"@type":"ListItem","position":3,"name":"Rethinking Data: Moving From the Traditional Three-Tier Web Stack to Client-Side Event Sourcing"}]}
```

