Open
Conversation
fetch('/api/directories')를 ipcProject.listSubdirectories()로 교체
esbuild define이 process.env.NODE_ENV를 "production"으로 하드코딩하여 dev 모드에서도 isProd=true가 되어 app://./home 프로토콜로 로드하는 문제를 수정한다. app.isPackaged를 사용하여 패키징 여부로 정확히 감지한다.
window.ipc가 준비되기 전에 invoke 호출이 발생할 수 있는 타이밍 이슈를 방어한다. 최대 3초간 폴링으로 대기하며, SSR 환경에서는 즉시 reject한다. preload 실행 확인 로그와 IPC 에러 로깅도 함께 추가한다.
동적 라우트 [id] 제거 후 쿼리 파라미터 기반(?id=)으로 전환했으나
5곳의 네비게이션 링크가 이전 /task/${id} 패턴을 사용하여 404 발생
hiddenInset/titleBarOverlay 방식 대신 nativeTheme.themeSource를 light로 설정하여 시스템 다크 모드에서도 네이티브 타이틀 바가 앱 테마와 일치하도록 변경
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
관련 자료
어떤 작업인가요?
어떻게 해결했나요?
Electron Main Process 구축
main/디렉토리에 Electron main process 코드 구성 (background, preload, IPC 핸들러)SQLite 전환
IPC 통신 레이어 구축
src/lib/ipc.ts에 타입 안전한 IPC 클라이언트 래퍼 제공기존 서버 코드 제거
server.ts,boot.js,docker-compose.yml등 서버 관련 코드 삭제중요한 변경 사항은 무엇인가요?
Electron Main Process
IPC 핸들러 체계
main/ipc/kanban.ts,main/ipc/project.ts,main/ipc/diff.ts,main/ipc/appSettings.ts,main/ipc/paneLayout.ts,main/ipc/hooks.ts,main/ipc/terminal.ts프로덕션 감지 방식
main/background.ts(app.isPackaged사용),scripts/build-main.mjs(define 제거)렌더러 IPC 클라이언트
IPC 래퍼 및 타이밍 방어
src/lib/ipc.ts,src/components/FolderSearchInput.tsxDB 전환
SQLite 마이그레이션
main/database.ts,src/migrations/0001-InitialSqliteSchema.ts라우트 구조 변경
동적 라우트 제거
output: "export")와 호환되도록[id]동적 세그먼트 제거src/app/[locale]/task/page.tsx,src/app/[locale]/task/diff/page.tsx(쿼리 파라미터 기반으로 전환)