Tauri 정적 앱의 서버 capability 경계
Tauri의 output: export 빌드는 Next.js 서버 route와 redirect를 포함하지 않는다. 웹과 같은 코드를 공유한다는 사실이 같은 실행 능력을 보장하지 않는다.
React·Next.js·Tauri·Tailwind
Tauri의 output: export 빌드는 Next.js 서버 route와 redirect를 포함하지 않는다. 웹과 같은 코드를 공유한다는 사실이 같은 실행 능력을 보장하지 않는다.
목록이 풍부해질수록 사용자는 원하는 글을 다시 찾기 어려워집니다. 검색과 카테고리는 새 글을 발견하는 길이고, 최근 기록은 이미 읽던 글로 돌아오는 길입니다. 둘은 서로 대체하지 않습니다.
대시보드는 서비스가 가진 도메인의 거울 입니다. 도메인이 5 개인데 위젯이 3 개면 사용자는 "나머지 2 개 도메인은 미완성인가" 를 본능적으로 의심합니다. 통일성은 디자인 감수성의 문제가 아니라 기능 인지 의 문제입니다.
사내 관리자 페이지는 숫자로 보면 목록 페이지 수십 개의 합입니다. 유저 목록 · 게시글 목록 · 포인트 거래 목록 · 신고 목록 등. 이들이 각자 다른 모양으로 만들어지면 운영자가 페이지마다 UI 를 다시 배우고, 개발자는 같은 boilerplate 를 매번 복붙합니다. 한 컴포넌트에 모아두면 이런 두 비용이 동시에…
Next.js 는 React 위에 서버 렌더링·라우팅·번들링을 묶은 프레임워크입니다.
빠른 페이지에 스켈레톤이 깜빡이면 불쾌합니다. 느린 페이지에 빈 화면이 길면 불안합니다. 둘 다 같은 root cause — fallback 의 자리가 라우트 단위로만 있어서입니다.
데스크탑·모바일 앱이 웹 앱과 차별되는 자리는 보통 OS 통합에 있습니다. 토스트 알림·시스템 트레이·파일 다이얼로그·클립보드·자동시작·전역 단축키·딥링크가 그 목록의 자주 등장하는 항목입니다.
사람의 글자 (이미지의 텍스트), 사람의 말 (소리), 그리고 그 반대인 합성 음성을 다루는 세 영역은 서로 다른 기술 스택이지만 앱에서는 자주 함께 묶입니다.
SQLite 는 단일 파일에 SQL 데이터베이스를 담는 임베디드 DB 입니다. 데스크탑·모바일 앱의 로컬 저장소로 가장 자주 쓰이는 선택지 중 하나입니다.
Tauri 2 부터 Android · iOS 가 1 급 시민이 됐습니다. 모바일 앱은 데스크탑과 다른 배포·수익화 모델을 가집니다.
dev 와 prod 의 요구가 다릅니다. dev 에서는 빠른 시작과 HMR (Hot Module Replacement) 이, prod 에서는 작고 빠른 출력 코드가 중요합니다. 이 둘을 한 도구로 풀지, 다른 도구로 풀지가 갈래를 만들었습니다.
React state 가 진실의 출처. 키 입력마다 리렌더가 발생합니다.
Material Design 은 Google 이 2014 년에 발표한 디자인 시스템입니다. 2021 년 Material 3 (M3) 로 큰 갱신을 거쳤습니다.
국제화 (internationalization · i18n) 는 앱이 여러 언어·지역에서 자연스럽게 동작하도록 만드는 작업입니다.
HTML/CSS/JS 로 데스크탑 앱을 만든다는 발상은 새롭지 않습니다. 가장 큰 두 갈래가 Electron 과 Tauri 이고 비슷해 보이지만 아키텍처가 꽤 다릅니다.
Tailwind CSS 는 utility-first 라 불리는 스타일링 접근의 대표 격입니다.
React 앱의 상태 관리는 라이브러리가 많아 혼란을 부릅니다. 그러나 가장 큰 분기점은 라이브러리 선택이 아니라 상태가 클라이언트에 속하는가, 서버에 속하는가 입니다.
React 19 는 React 의 큰 변곡점 중 하나로 자주 거론됩니다. 그 가운데 React Compiler 는 그동안 손으로 적던 메모를 일부 자동화합니다.