흔한 배치에서는 서버가 진짜 사본을 쥐고 휴대폰은 캐시를 쥡니다. 연결이 나쁜 곳에서 앱을 열면 도는 표시가 보이는데, 지금 보고 있는 것이 사실은 거기 없기 때문입니다. Local-first는 그것을 뒤집습니다. 진짜 사본은 기기에 있고, 계산도 거기서 일어나며, 네트워크는 의지하는 대상이 아니라 의도해서 쓰는 도구가 됩니다.
운동에는 이 방식이 유난히 잘 맞습니다. 세션은 그것이 수행된 자리에서 생기고, 작고, 두 사람이 동시에 편집하는 일이 거의 없습니다. 그러니 분산 시스템에서 가장 어려운 문제인 동시 편집 병합이 거의 일어나지 않습니다. 남는 것은 즉시 열리고 지하에서도 도는 빠른 앱입니다.
대가는 동기화가 명시적이 된다는 점입니다. 기기들을 조율하는 보이지 않는 과정은 없습니다. 있는 것은 당신이 내보내는 암호화 파일이거나, 당신이 시작하는 전송입니다. 더 정직하고 조금 더 손이 갑니다. cronoWiz가 택한 맞바꿈입니다.
-
원본은 기기가 쥔다
IndexedDB에 있는 것은 진짜 데이터이지, 어딘가 먼 곳의 캐시가 아닙니다.
-
즉시 열린다
첫 화면이 쓸 만해지기까지 아무것도 요청을 기다리지 않습니다.
-
동기화는 결정이다
암호화 파일이나 직접 전송을, 당신이 시작합니다.
-
이 모델은 계정을 요구하지 않는다
원본을 쥔 서버가 없다면 신원이 쓰일 자리도 없습니다.
무료. 사적. 당신의 것.
계정 없음. 서버 없음. 쿠키 없음. 당신과 당신의 휴대폰, 그리고 제 할 일만 하는 앱뿐입니다. cronoWiz는 기기 안에서 전부 돌아가는 무료 PWA입니다 — 데이터는 밖으로 나가지 않습니다. 한 번도.
실제로 많이 받는 질문
Local-first가 인터넷을 아예 안 쓴다는 뜻인가요?
아닙니다. 지도, 웹 라디오, 한 번뿐인 모델 내려받기는 네트워크를 씁니다. 차이는 그것들이 없어도 앱이 계속 작동한다는 점입니다. 어느 것도 당신의 데이터를 쥐고 있지 않기 때문입니다.
두 번째 기기에서는 어떻게 되나요?
그 기기는 자기 사본을 갖습니다. 백업을 옮기거나 직접 전송을 열어 맞추고, 가져오기는 식별자로 대조되므로 같은 세션이 두 번 나타나지 않습니다.
offline-first와 같은 말인가요?
가깝지만 같지는 않습니다. offline-first는 연결이 끊겨도 살아남는 것이고, local-first는 어느 사본이 원본인지에 관한 것입니다. cronoWiz는 둘 다이고, 계정을 필요 없게 만드는 쪽은 후자입니다.
