Skip to content
sbjwinPublic

About

내 일상 수업 다이어리

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

204 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyDiary (내 일상 수업 다이어리) - v2.6.0

Release Platform React Native License: MIT

MyDiary는 방문 강사 및 교사를 위해 제작된 통합 수업 관리 모바일 애플리케이션입니다.
단순한 사후 기록을 넘어 **"주간 수업 계획(스케줄링) ➔ 방문 수업 이동 ➔ 수업 일지 기록 ➔ 주간 업무 보고서(PDF / 한글 문서 .hwpx / 구글 문서 .docx) 자동 출력"**에 이르는 전 과정을 하나로 완벽하게 일원화한 올인원 솔루션입니다.


📱 최신 정식 버전 다운로드

최신 정규 릴리즈 APK는 아래 링크의 GitHub Releases 페이지에서 즉시 다운로드하여 안드로이드 기기에 설치하실 수 있습니다.

👉 GitHub Releases에서 최신 MyDiary 다운로드


🌟 v2.6.0 주요 기능 및 특징

  • 전 화면 동적 테마 반응성 복구 및 오프라인 배너 적용 (신규 v2.6.0):

    • 8개 화면 및 공용 컴포넌트의 스타일을 useMemo 기반 동적 생성 구조로 전환하여 [설정]에서 테마 프리셋 변경 시 모든 화면에 즉시 반영되도록 개선했습니다.
    • 학생 상세 화면 상단 배너를 외부 네트워크 이미지 대신 오프라인 테마 반응형 배너 카드로 교체했습니다.
  • 주간시간표·수업일지·학생상세 모바일 UX 및 안정성 강화 (신규 v2.6.0):

    • 주간시간표 타임라인 진입 시 오늘 요일로 자동 포커스되고 표/탭에 오늘 날짜 강조를 적용했으며, 표 열 너비와 셀 글자 크기를 확대해 모바일 가독성을 높였습니다.
    • 다중 연락처 매칭 시 통화할 번호 선택창을 제공하며, 학생 상세 화면에서 미저장 변경사항이 있을 경우 이탈 방지 확인 모달을 표시합니다.
  • 공통 모달 2종 분리 및 시간 피커 통합 (신규 v2.6.0):

    • RecordPrintModal과 ScheduleEditModal을 공용 모달로 분리하고, 수업 일지의 인라인 시간 피커를 TimePickerModal로 통합해 오전 12시 선택 버그를 수정했습니다.
  • 공통 시간 선택 모달(TimePickerModal) 신설 및 GUI 피커 도입 (신규 v2.5.0):

    • src/components/modals/TimePickerModal.js를 신설하여 빠른 시간 프리셋, 오전/오후 탭, 12시/오후 자동 전환, 시/분 그리드 선택 GUI를 제공하고 주간시간표 컴포넌트의 복잡도를 329줄 감축했습니다.
  • 날짜·시간 입력 인터페이스 전면 개편 (신규 v2.5.0):

    • 학생 상세 화면의 최초 수강 시작일(입회일)과 학생 상태 관리 모달의 휴회/재수강 날짜에 인라인 달력(Calendar) 피커를 연동하여 오타를 원천 방지했습니다.
    • 정규 수업 일정 등록 시 TimePickerModal을 연동하여 편리하게 수업 시간을 지정할 수 있도록 개선했습니다.
  • 주간시간표 다중 학생 셀 개별 터치 인터랙션 지원 (신규 v2.5.0):

    • 주간 전체 표(Table 뷰)에서 동일 시간대에 2명 이상의 학생이 배정된 경우, 각 학생 카드를 개별 터치하여 즉시 해당 학생 일정을 편집할 수 있도록 분리했습니다.
  • 전체 화면 키보드 가림 5곳 완전 해결 (신규 v2.5.0):

    • 키보드 활성화 시 하단 탭바 자동 숨김(tabBarHideOnKeyboard: true)을 적용하고, 주간시간표 부가업무/수업편집, 학생상세 정규수업/비고, 일정검색, 상담기록, 상태변경 모달 전반의 입력창 가림 문제를 완벽히 해결했습니다.
  • 접근성 및 터치 영역 강화 (신규 v2.5.0):

    • 피커 및 버튼의 최소 터치 영역을 44dp 이상 확보하고 달력 선택 가독성을 대폭 개선했습니다.
  • 주간시간표 학생 선택 모달 반응형 레이아웃 및 검색 UX 개선 (신규 v2.4.2):

    • 소프트웨어 키보드 노출 시 학생 검색창과 목록이 가려지던 문제를 해결하고, 실시간 키보드 높이를 추적하여 화면 중앙 다이얼로그와 상단 스크롤 뷰로 부드럽게 동적 전환되는 반응형 레이아웃을 도입했습니다.
    • 검색창 내 원클릭 검색어 즉시 삭제(x-circle) 버튼 및 자동 초기화 기능을 추가하여 더욱 쾌적한 입력 환경을 제공합니다.
  • 공통 UI 컴포넌트 3종 신설 및 화면 간 중복 스타일 대규모 슬림화 (신규 v2.4.2):

    • src/components/에 액션 메뉴 아이템(ActionMenuItem), 시맨틱 상태 뱃지(StatusBadge), 플로팅 버튼(FloatingActionButton)을 신규 구축하여 화면별 중복 코드 586줄을 제거하고 컴포넌트 일관성을 완성했습니다.
  • 홈 화면 상하단 레이아웃 및 여백 최적화 (v2.4.1):

    • 상단 헤더와 환영 문구 사이 및 최하단 스크롤 영역의 중복 시스템 안전영역(SafeArea) 패딩을 제거하고 스크롤 여백을 정돈하여, 시각적 균형감과 매끄러운 스크롤 경험을 제공합니다.
  • 동적 테마 시스템 전면 연동 (v2.4.0):

    • 앱 설정의 5가지 테마 프리셋(클래식 슬레이트, 오션 블루, 포레스트 세이지, 로열 라벤더, 웜 선셋)이 앱 내 모든 화면(홈, 시간표, 학생, 일지, 달력, 설정, 도움말)에 실시간으로 완벽하게 동기화 반영됩니다.
  • 공통 유틸리티 및 컴포넌트 아키텍처 모듈화 (v2.4.0):

    • src/utils/dateUtils.js 및 src/utils/stringUtils.js를 신설하여 산재해 있던 날짜·시간 포맷팅 및 XML/HTML 이스케이프 함수를 완벽히 일원화했습니다.
    • src/components/에 공통 구분선(Separator), 확인 다이얼로그(ConfirmModal)를 구축하여 일관된 UI/UX를 제공합니다.
  • 정기 프로젝트 건전성 정밀 감사 하네스 도입 (v2.4.0):

    • npm run audit 명령어로 ESLint, 단위 테스트, 파일 규모, 디자인 토큰 준수, 공통 함수 중복 여부를 원클릭으로 점검하고 종합 건전성 점수(96점 달성)를 산출하는 감사 하네스를 구축했습니다.
  • 주간 시간표 & 수업 계획:

    • 시간표 터치 즉시 수업예정 작성: [주간 전체 표]의 원하는 요일·시간대 칸을 터치하는 것만으로 그날의 수업예정 시간표를 손쉽게 등록 및 수정할 수 있습니다.
    • 학생별 '정규 수업 일정(요일/시간)'을 등록해 두면 매주 자동으로 주간 시간표가 생성됩니다.
    • 불규칙한 일정 변동 완벽 지원: 이번 주만 시간 변경, 임시 보강, 휴일/결석 처리, 특이사항 메모(=> 이번주만, => 8/15일 수업함, => 아픔 등)를 터치 몇 번으로 손쉽게 조율합니다.
    • 주간 전체 타임테이블(PDF 서식 뷰) 및 요일별 상세 타임라인 뷰 동시 지원.
  • 주간 업무 보고서 한글 문서(.hwpx), 구글 문서(.docx) & PDF 원클릭 출력:

    • 한글 문서 (.hwpx / OWPML 표준) 내보내기 지원: 한컴오피스 한글 표준 OWPML 양식의 .hwpx 파일을 생성하여 스마트폰 및 PC의 한글 프로그램에서 자유롭게 편집 및 출력이 가능합니다.
    • 구글 문서 / MS 워드 (.docx) 내보내기 지원: 정규 A4 양식 그대로 .docx 워드 파일을 생성하여 **구글 드라이브(Google Drive) 및 구글 문서(Google Docs)**로 열어 PC나 스마트폰에서 자유롭게 내용을 수정·편집하고 카카오톡/이메일로 공유할 수 있습니다.
    • 정규 A4 PDF 출력 & 인쇄: 월~토 6열 방문 수업 타임테이블 + 일요일 시간표 분리 블록 + 하단 전화 관리 & 주요사항 메모가 포함된 정규 A4 주간 업무 보고서 양식을 100% 동일하게 자동 렌더링하여 Wi-Fi 무선 프린터 인쇄 및 고화질 PDF 공유를 지원합니다.
  • 계획 ➔ 수업 일지 원클릭 연동:

    • 주간 시간표에서 수업 카드를 누르면 즉시 [수업 일지 작성] 화면으로 연결되어 학생/날짜/시간/과목이 자동 입력됩니다.
  • 학생 주소록 및 학생 관리 카드 출력:

    • 수강생 인적사항, 학부모 연락처, 거주지 주소, 학습 방법, 정규 수업 일정을 관리하며 학생 관리 카드 PDF 출력을 지원합니다.
  • 달력 기반 일지 & 이력 조회:

    • 월간 달력을 통해 날짜별 수업 일정을 확인하고, 학생별 전체 수업 이력을 필터링하여 조회합니다.
  • 구글 드라이브 클라우드 백업 및 복원:

    • 소중한 학생 주소록, 수업 일지, 주간 계획 데이터를 개인 구글 드라이브에 안전하게 보관하여 기기 변경 시에도 완벽하게 복구합니다.
  • 오프라인 로컬 저장 (안전성):

    • AsyncStorage 기반 로컬 DB로 구동되어 네트워크가 없는 환경에서도 초고속으로 작동합니다.

🚀 빠른 시작 (Quick Start for Developers)

이 프로젝트를 로컬 개발 환경에서 빠르게 실행해 보려면 아래 명령어를 순서대로 실행하세요:

# 1. 저장소 클론 및 패키지 설치
git clone https://github.com/sbjwin/mydiary.git
cd mydiary
npm install

# 2. Metro 번들러 서버 실행 (별도 터미널)
npm run start

# 3. Android 앱 구동
npm run android

📖 상세 개발 및 빌드 가이드:
로컬 기기 디버깅, Android APK/AAB 수동 빌드, iOS 빌드, 서명 키(Keystore) 설정, GitHub Actions CI/CD 자동 배포 등에 대한 모든 상세 엔지니어링 가이드는 BuildGuide.md 문서에 체계적으로 정리되어 있습니다.


👨‍💻 개발자 정보

About

내 일상 수업 다이어리

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages