Capsule - 데이터를 SQLite에 저장하는 단일 파일 웹 앱
요약
본 글은 로컬 파일 시스템에 데이터를 저장하는 웹 앱 방식(Capsule)의 장단점을 분석합니다. 특히 상태 변화가 잦고 협업이 필요한 데이터베이스 기반 앱의 경우, 파일을 주고받는 방식보다 클라우드 호스팅이나 웹 배포가 훨씬 효율적임을 주장합니다.
핵심 포인트
- 상태 변경 및 동시 편집에는 로컬 파일 저장 방식이 부적합함.
- 웹 호스팅은 DB 상태를 동적으로 갱신하고 접근성을 높여 더 간단함.
- 개인 문서처럼 데이터를 유지하는 용도에서는 Capsule 방식의 장점이 있음.
- 에이전트가 데이터 읽기/쓰기를 통해 라이브러리 관리 및 공유에 유용함을 강조.
더 나아가 완전한 기능을 갖춘 VSCode도 가능함. File System Access API 덕분임. https://vscode.dev
브라우저가 허용하면 Google Drive나 iCloud Drive에도 똑같이 파일을 쓸 수 있게 되는 게 내 바람임.
정확히는 Chrome에서만 가능함.
개인적으로 .capsule 에서 관심이 식었음. 직접 만든 형식인 것 같은데, 개발자가 더는 없거나 가장 필요한 순간에 연락할 수 없다면 어떻게 되는 건지?
오픈소스화할 계획이 있는지? 앱과 명세 모두 비공개인 듯함.
특정 맥락에서만 통하는 아이디어를 원래 취지가 무색해질 정도로 일반화한 것 같음. 이 웹 앱을 실행하려고 별도 앱을 내려받아야 한다면, 애초에 그 앱을 바로 보내면 되지 않을지? 같은 결과에 도달하는 데 왜 굳이 Capsule이라는 우회 과정을 거쳐야 하는지 모르겠음.
거의 누구나 쓰는 앱이라면 이해되지만, 지금은 그렇지 않음. 그나마 그런 위치에 있는 게 브라우저인데, 브라우저는 이미 설명한 일을 하고 있지 않은지? 앱과 데이터를 묶는 방식도 타당한 용도가 꽤 제한적임. 웹 앱과 함께 데이터를 배포해도 된다면 HTML 파일에 넣으면 그만이고, 사용자가 데이터를 수정해야 한다면 이런 방식으로 배포하고 싶지 않음.
기업 환경에서는 꽤 유용해 보임. 바이브 코딩으로 만든 수많은 앱을 일일이 컨테이너화하고 관리하는 대신, 모든 직원의 컴퓨터에 실행 환경을 설치하면 됨. 실제 협업이 필요한 용도로는 웹 버전을 제공할 수 있음.
OneDrive 같은 클라우드 폴더에 저장된 파일까지 똑똑하게 관리해 준다면 더 좋겠음. 거기에 저장한 SQLite 파일은 손상되기 쉬움.
SQLite든 다른 DB든 상태를 갱신하고 보존해야 하는 앱이라면, 하나의 파일로 묶어 주고받는 방식은 적합하지 않을 가능성이 큼. 적어도 요즘 어렵지 않게 할 수 있는 웹 호스팅에 비하면 제약이 매우 큼.
상태가 바뀔 때마다 다른 사용자에게 새 Capsule 파일을 이메일로 보내야 함. 상태가 전혀 바뀌지 않는다면 DB를 쓸 이유도 별로 없음.
반면 웹에 호스팅하면 DB 상태가 동적으로 갱신되고, 앱 접근 권한이 있는 누구나 곧바로 이용할 수 있음. 이쪽이 훨씬 간단하지 않은지?
Dropbox 같은 공유 드라이브에 두면 되지 않을지? 다만 동시 편집은 안 될 것임.
호스팅의 지속적인 비용과 관리 부담, 데이터 보안을 너무 가볍게 넘기고 있음. 이 방식은 그냥 공유하면 되고 로컬에서 실행됨.
여러 사람이 데이터를 공유해야 한다면 맞는 말이지만, 이건 메모나 요리법 앱처럼 개인용 앱을 만드는 방식에 가까워 보임.
많은 사용자에게 앱을 배포하려면 그쪽이 더 나은 해법일 것임. Capsule의 핵심 장점은 개인 문서처럼 다루는 앱이라는 데 있음. Capsule을 만들어 USB 메모리로 옮기거나 클라우드 저장소에 저장해도 같은 문서로 남음. UI도 데이터도 바뀌지 않고 그대로 유지됨.
에이전트로 웹사이트와 앱을 만드는 일이 늘면서 결과물을 쉽게 옮기고 주고받는 일이 그 어느 때보다 중요해짐.
음악 관리용 SQLite 파일에 메타데이터와 데이터를 함께 넣는 방식으로 좋은 성과를 내고 있음. 스키마, 버전, 메타데이터, 바이너리 데이터를 하나의 파일에 담는 명세가 있으면 파일을 옮기고 주고받기가 매우 쉬워짐.
에이전트는 데이터를 읽고 쓰거나 명세에 맞는 도구를 만드는 일을 아주 잘함. 덕분에 음악 라이브러리의 백업, 공유, 중복 제거가 갑자기 착착 맞아떨어지기 시작함.
더 자세한 생각은 여기에 적어둠. https://deadca7.com/blog/deadca7-open-music-database-specifi...
AI 자동 생성 콘텐츠
본 콘텐츠는 GeekNews의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기