Google 캘린더(또는 iOS 캘린더의 다른 계정) 일정을 한 달 grid로 보여주는 large 사이즈 홈 위젯.
App Store 에서 “Xcode” 검색 후 설치 (~10–15GB, ~30분).
설치 후 한 번 실행하여 라이선스 동의 + 추가 컴포넌트 설치.
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
xcodebuild -version # 버전 확인
brew install xcodegen
cd ~/projects/CalWidget
xcodegen generate
open CalWidget.xcodeproj
com.jack.calwidget 으로 되어 있으면 본인 ID 로 바꿈 (예: com.본인이름.calwidget)<앱 번들ID>.widgetCalWidget/
├── project.yml # xcodegen 설정
├── CalWidget/ # 메인 앱 (권한 요청 화면)
│ ├── CalWidgetApp.swift
│ └── ContentView.swift
├── CalWidgetExtension/ # 위젯 extension
│ ├── CalWidgetBundle.swift
│ ├── MonthWidget.swift # TimelineProvider + Widget config
│ └── MonthWidgetView.swift # SwiftUI grid UI
└── README.md
| 위젯 | 사이즈 | 내용 |
|---|---|---|
| 월간 캘린더 | Large | 한 달 grid + 셀당 일정 2개 |
| 일정 목록 | Medium / Large | 다가오는 5일 agenda |
| 다음 일정 | Lock screen (rectangular / circular / inline) | 가장 가까운 일정 |
googlecalendar://?action=showRange&start=YYYYMMDD)위젯 길게 눌러 Edit Widget 을 탭하면 표시할 캘린더를 선택할 수 있음. 비워두면 모든 캘린더가 표시됨. 모든 위젯이 같은 필터를 공유.
MonthWidgetView.swift 의 .font(.system(size: 7)) 등 조정cell.events.prefix(2) 의 숫자 변경Calendar.current.firstWeekday)DayCellView.eventChip 배경 opacity 조정Link 또는 widgetURL 로 캘린더 앱 deep link 가능)