OPFS와 함께 브라우저에 진정한 SQLite를 도입 🚀
발행: (2025년 12월 22일 오전 12:47 GMT+9)
2 min read
원문: Dev.to
Source: Dev.to

문제점
수년간 우리는 localStorage(5 MB 제한) 위에 SQL을 에뮬레이트하거나 IndexedDB(복잡한 API)를 사용해 왔습니다. 현대 웹 애플리케이션은 더 많은 성능이 필요합니다.
해결책: web-sqlite-js
web-sqlite-js는 SQLite WASM과 Origin Private File System (OPFS) 위에 얇게 래핑한 라이브러리입니다. 브라우저 안에 영구적이고 고성능의 데이터베이스를 제공합니다.
주요 기능
- 진정한 SQLite – JOIN, 트랜잭션, 트리거를 완전 지원합니다.
- 영구 저장 – 데이터가 브라우저 파일 시스템(OPFS)에 저장됩니다.
- 비동기 처리 – Web Worker에서 실행되어 UI를 60 fps로 유지합니다.
- 타입 안전 – TypeScript를 기본적으로 지원합니다.
빠른 시작
npm install web-sqlite-js
import openDB from "web-sqlite-js";
const db = await openDB("my-app.sqlite3");
// 표준 SQL
await db.exec("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT)");
await db.exec("INSERT INTO users (name) VALUES (?)", ["Alice"]);
// 복잡한 쿼리
const users = await db.query("SELECT * FROM users ORDER BY name ASC");
await db.close();
GitHub에서 확인해 보세요:
Tags: javascript typescript webdev sqlite