프로젝트 소개

Deep Dive는 GTK4와 Libadwaita를 사용하여 GNOME 데스크톱 환경에 네이티브로 구축된 집중 생산성 애플리케이션입니다. 표준 포모도로 타이머를 넘어, 부정 행위를 방지하고 진정한 딥 워크를 강제하는 엄격한 메커니즘을 도입합니다. ## 왜 Deep Dive인가? 대부분의 포모도로 타이머는 단순한 카운트다운에 불과합니다. Deep Dive는 'Submerge' 생산성 철학을 염두에 두고 설계되어, 집중 시간을 스스로 속이는 것을 방지합니다. - **Submerge 규율**: 궁극의 '커밋 또는 포기' 설정입니다. 활성화되면 세션을 일시 중지하거나 건너뛸 수 없습니다. 25분을 완료하거나 '포기'를 눌러 전체 세션을 완전히 폐기해야 합니다. - **원활한 방해 요소 차단**: Deep Dive는 포모도로가 시작되는 즉시 방해가 되는 웹사이트에 대한 접근을 자동으로 제한하고, 휴식 시간에 즉시 차단을 해제할 수 있습니다. - **깊은 GNOME 통합**: Deep Dive는 Linux에서 자연스럽게 작동합니다. 집중할 때 데스크톱을 자동으로 방해 금지 모드로 전환하고, 휴식 시간에 전체 화면 휴식 오버레이를 생성하여 물리적으로 화면에서 멀어지게 합니다. ## 핵심 기능 - **Submerge 모드**: 건너뛰기와 일시 중지가 비활성화되어 중단 없는 집중을 보장하는 엄격한 맞춤형 심해 테마 모드입니다. - **휴식 오버레이**: 휴식이 시작되면 전체 화면 오버레이가 작업을 강제로 중단시킵니다. 다중 모니터 설정을 완벽하게 지원하며 동기 부여 인용구를 표시합니다. - **컴팩트 미니 플레이어**: 작업 중에 창을 슬림한 플로팅 미니 플레이어로 최소화하여 라이트/다크 시스템 테마에 동적으로 적응합니다. - **프로젝트 추적**: 전용 환경 설정 탭에서 다양한 프로젝트를 관리하고 각 프로젝트의 집중 시간을 자동으로 기록하며, 로컬 SQLite 데이터베이스로 백업됩니다. - **방해 금지 동기화**: 집중 세션 중 시스템 알림을 자동으로 음소거하고 휴식 중에 복원합니다. ## 설치 Deep Dive는 Flathub를 통해 공식 배포되므로 모든 Linux 배포판에 쉽게 설치할 수 있습니다. ```bash flatpak install flathub io.github.tanaybhomia.DeepDive ``` ## 기여 및 개발 Deep Dive에 기여하거나 자체 버전을 빌드하려면 로컬 개발을 원활하게 하는 스크립트를 준비했습니다. ### 로컬 테스트 Python 코드 변경 사항을 테스트하기 위해 앱을 설치하거나 Meson으로 컴파일할 필요가 없습니다. 프로젝트 루트에서 다음 명령을 실행하여 소스 코드에서 앱을 즉시 실행하세요: ```bash ./run.sh ``` ### 개발 환경 설정 일상 작업에 공식 Flathub 릴리스를 사용하면서 테스트용 별도 개발 버전의 Deep Dive를 앱 런처에 추가하려면 다음을 실행하세요: ```bash ./install-dev.sh ``` 이 스크립트는 GNOME 앱 그리드에 별도의 'Deep Dive (Development)' 항목을 생성합니다. 사용자 지정 개발 아이콘을 사용하며 테스트 데이터베이스를 완전히 격리된 폴더에 저장하여 공식 Flatpak 데이터를 안전하게 보호합니다. IDE에서 코드를 변경하면 다음에 개발 앱 아이콘을 클릭할 때 즉시 반영됩니다. ## 아키텍처 Deep Dive는 GNOME 휴먼 인터페이스 가이드라인(HIG)을 완벽하게 따릅니다. 네이티브 Libadwaita 위젯, Adwaita 환경 설정 창을 사용하며 Polkit을 활용하여 안전하고 비밀번호 없는 `/etc/hosts` 조작을 수행합니다. ## 라이선스 Deep Dive는 **GNU 일반 공중 사용 허가서 v3.0**(GPL-3.0)에 따라 라이선스된 무료 오픈 소스 소프트웨어입니다. 자세한 내용은 [LICENSE](LICENSE) 파일을 참조하세요. ## 스타게이저 저장소에 별표를 달고 프로젝트를 지원해 주신 모든 분들께 감사드립니다! ## 지원 Deep Dive가 유용하다고 생각되고 개발을 지원하려면 커피 한 잔 사주실 수 있습니다.