# How We Built the Turso Shell in the Browser

DevFeed: [How We Built the Turso Shell in the Browser](<https://devfeed.tech/articles/how-we-built-the-turso-shell-in-the-browser-5971.md>)

Original publisher: [Read original article](<https://turso.tech/blog/how-we-built-the-turso-shell-in-the-browser>)

Author: Jamie Barton

Published: 2025-10-14T00:00:00Z

Content type: article

Language: en

Sources: [Turso Blog](<https://devfeed.tech/sources/turso-blog.md>)

Topics: [Turso](<https://devfeed.tech/topics/turso.md>), [SQLite](<https://devfeed.tech/topics/sqlite.md>), [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [Vite](<https://devfeed.tech/topics/vite.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Local-First](<https://devfeed.tech/topics/local-first.md>), [React](<https://devfeed.tech/topics/react.md>), [TypeScript](<https://devfeed.tech/topics/typescript.md>), [Tailwind CSS](<https://devfeed.tech/topics/tailwind.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [local-first](<https://devfeed.tech/tags/local-first.md>), [offline](<https://devfeed.tech/tags/offline.md>), [react](<https://devfeed.tech/tags/react.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sqlite](<https://devfeed.tech/tags/sqlite.md>), [sync](<https://devfeed.tech/tags/sync.md>), [tailwind-css](<https://devfeed.tech/tags/tailwind-css.md>), [turso](<https://devfeed.tech/tags/turso.md>), [typescript](<https://devfeed.tech/tags/typescript.md>), [vite](<https://devfeed.tech/tags/vite.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>)

## AI overview

This article explains how to build the Turso Shell, a full SQLite shell that runs entirely in the browser with Turso's WebAssembly build, Vite, OPFS storage, React, and TypeScript. It covers WASM loading, required COOP and COEP headers, database initialization, a SQL query interface, and upgrading the textarea to a syntax-highlighted code editor. The result is a local-first, offline-capable application that can operate without a backend and synchronize when needed.

## Source excerpt

Build a full SQLite shell that runs entirely in the browser using Turso's WebAssembly build, OPFS storage, and Vite. No backend, no server required.