🍎 Ainote for Mac - macOS 네이티브 캘린더 앱의 새로운 경험
Apple Calendar와 지능형 메모 기능을 통합한 macOS 네이티브 데스크탑 앱 Ainote for Mac을 소개합니다. “Mac의 캘린더와 Ainote의 지능형 메모가 만나는 곳"이라는 컨셉으로, Mac 사용자를 위한 완전히 새로운 생산성 경험을 제공합니다.
🎯 왜 Mac 앱인가?
네이티브 성능의 힘
- EventKit 완벽 통합: macOS 시스템 캘린더와 완벽하게 연동
- CoreML AI: 온디바이스 인공지능으로 빠르고 안전한 메모 요약
- SwiftUI: macOS에 최적화된 네이티브 UI/UX
생산성 중심 설계
Mac을 주 업무 도구로 사용하는 지식 근로자를 위한 최적화:
- ⌨️ 키보드 중심 워크플로우
- 🖥️ 멀티 윈도우 & 멀티 디스플레이 지원
- 📊 데스크탑 환경에 최적화된 정보 밀도
생태계 연결
Mac에서 생성한 고가치 데이터를 Ainote Cloud를 통해 모바일/웹과 실시간 동기화
✨ 주요 기능
Phase 1: 현재 구현 중 🚧
📅 1. 통합 캘린더 타임라인
EventKit 완벽 연동
- macOS 시스템 캘린더와 100% 호환
- Google Calendar, iCloud Calendar 자동 동기화
- 외부 캘린더 앱 변경사항 실시간 반영
Daily Timeline View
09:00 ━━━━━━━━━━ 팀 미팅
10:00
11:00 ━━━━━━━━━━ 클라이언트 미팅
12:00 ━━━━━━━━━━ 점심
13:00
14:00 ━━━━━━━━━━ 개발 시간
자연어 입력
⌘K를 눌러 “내일 오후 2시 디자인 리뷰” 입력하면 즉시 일정 생성!
🎨 2. Liquid Glass 디자인 (macOS Sonoma+)
최신 macOS 디자인 시스템 적용:
- Floating Toolbars: 유리 표면 위에 떠있는 툴바
- Glass Button Styles: 반투명 글래스 효과
- Vibrancy: macOS 배경에 자연스럽게 녹아드는 디자인
📌 3. Menu Bar Extra
┌─────────────────────────┐
│ ⏰ 다음 일정 │
│ 14:00 - 디자인 리뷰 │
│ 15분 후 시작 │
│ │
│ [오늘 일정 보기] │
└─────────────────────────┘
- 메뉴바에서 빠른 일정 확인
- 앱 실행 없이도 일정 파악 가능
- 다음 일정까지 남은 시간 표시
🔲 4. 반응형 3-Column 레이아웃
┌──────────┬─────────────────────┬──────────────┐
│ │ │ │
│ Sidebar │ Main Calendar View │ Inspector │
│ │ │ │
│ • Today │ [Timeline View] │ 📝 Note │
│ • Week │ │ 📊 AI │
│ • Tasks │ │ ℹ️ Info │
│ │ │ │
└──────────┴─────────────────────┴──────────────┘
화면 크기별 자동 적응
- Large (>1200px): 3단 모두 표시
- Medium (800-1200px): Sidebar 접힘, Main + Inspector
- Small (<800px): Single Stack, Inspector는 오버레이
🔍 5. Context-Aware Inspector (우측 패널)
Seamless Interaction
- 일정 클릭 시 화면 전환 없이 우측 패널에 상세 정보
- 화상 회의 링크, 참석자, 위치 정보 한눈에
Multi-Tab
| 탭 | 기능 |
|---|---|
| 📝 Note | 일정에 연결된 메모 작성 |
| 🤖 AI | AI 기반 회의록 요약 |
| ℹ️ Info | 일정 상세 정보 |
Detachable Window
Main Window Floating Note Window
┌──────────────┐ ┌─────────────┐
│ Calendar │ ⇢ │ 📝 Meeting │
│ │ │ Notes │
└──────────────┘ └─────────────┘
Zoom 회의 중 노트 작성 시 유용!
Phase 2: 예정 기능 🔮
🤖 1. AI 통합 메모
Context-Aware Notes
- 일정과 강하게 연결된 메모 시스템
- “주간 회의” 클릭 → 지난주 회의록 + 액션 아이템 자동 로드
로컬 LLM 요약
// CoreML 기반 온디바이스 AI
let summary = await aiClient.summarize(meetingNotes)
// "핵심 결정사항 3가지, 액션 아이템 5개"
- 프라이버시 보호 (서버 전송 없음)
- 빠른 응답 속도 (네트워크 불필요)
- 오프라인 동작
Deep Linking
- 특정 날짜/이벤트와 메모 연결
- 관련 메모 자동 제안
- 과거 유사 이벤트 참고
✅ 2. 할일 & 루틴 관리
Inbox & Projects
📥 Inbox (12)
├─ 디자인 시안 검토
├─ 클라이언트 이메일 답장
└─ 주간 보고서 작성
📂 Projects
├─ 🎨 Design System
│ ├─ 컴포넌트 설계 ✓
│ └─ 문서화
└─ 💻 Mac App Development
├─ Timeline View ✓
└─ AI Integration
Drag & Drop
Inbox → Calendar Timeline
"디자인 시안 검토" ⤳ [14:00 빈 시간]
→ 자동으로 일정화!
Routines Suite
| 기능 | 설명 |
|---|---|
| 📋 Habit List | 매일 반복 습관 체크리스트 |
| ⏱️ Flow Timer | 뽀모도로 타이머 + 몰입 시간 시각화 |
| 📅 Countdown | D-Day 카운트다운 위젯 |
☁️ 3. Ainote Cloud 동기화
하이브리드 아키텍처
Mac App
├─ Calendar Data → Apple EventKit/iCloud
└─ Note Data → Ainote Cloud API
- 캘린더: 기존 Apple 생태계 존중
- 노트/메모: Ainote Cloud로 크로스 플랫폼 동기화
Seamless Auth
- QR 코드 로그인 (모바일 앱으로 스캔)
- Passkey 인증
- Apple ID 로그인
크로스 플랫폼
Mac App ⟷ Ainote Cloud ⟷ Mobile App
⟷ Web App
🖥️ 위젯 시스템 (예고)
macOS 위젯으로 앱 실행 없이 핵심 기능 사용!
📅 Calendar & Timeline
| 위젯 | 크기 | 기능 | 인터랙션 |
|---|---|---|---|
| Up Next | Small | 다음 일정 + 프로그레스 바 | [Join] 회의 링크 바로 열기 |
| Timeline | Large | 하루 전체 타임라인 | [+] 빈 시간에 일정 생성 |
| Month View | Medium | 월간 달력 히트맵 | 날짜 클릭으로 일일 뷰 |
✅ Focus & Tasks
| 위젯 | 크기 | 기능 | 인터랙션 |
|---|---|---|---|
| Today’s Top 3 | Medium | 오늘의 중요 할일 3개 | [✓] 앱 실행 없이 완료 처리 |
| Quick Capture | Small | 빠른 메모 입력 | Spotlight 스타일 입력창 |
| Inbox Count | Small | 미처리 아이템 배지 | 클릭으로 Inbox 이동 |
⏳ Routine & Utilities
| 위젯 | 크기 | 기능 | 인터랙션 |
|---|---|---|---|
| Flow Timer | Small | 뽀모도로 타이머 | [▶️/⏸️] 타이머 제어 |
| Habit Streak | Medium | 습관 달성 현황 (잔디 심기) | 아이콘 클릭으로 체크 |
| D-Day | Small | 마일스톤 카운트다운 | - |
위젯 예시
┌─────────────────┐ ┌──────────┐
│ Up Next │ │ Timer │
│ │ │ │
│ 14:00 Design │ │ 🍅 25:00 │
│ Review │ │ │
│ ━━━━━━━━━━ 40% │ │ [⏸️] [⏹️]│
│ [Join Meeting] │ └──────────┘
└─────────────────┘
🛠️ 기술 스택
Core Technologies
Language: Swift 6
UI: SwiftUI (macOS 14 Sonoma+)
Architecture: TCA (The Composable Architecture) 1.14+
Calendar: EventKit
Storage: SwiftData
AI/ML: CoreML + Swift Transformers
🏗️ 왜 TCA를 선택했나?
The Composable Architecture - Point-Free 개발
@Reducer
struct CalendarFeature {
@ObservableState
struct State {
var selectedDate: Date = .now
var events: IdentifiedArrayOf<CalendarEvent> = []
var isLoading: Bool = false
}
enum Action {
case onAppear
case dateSelected(Date)
case eventsLoaded(Result<[CalendarEvent], Error>)
}
@Dependency(\.eventKitClient) var eventKitClient
var body: some ReducerOf<Self> {
Reduce { state, action in
switch action {
case .onAppear:
state.isLoading = true
return .run { send in
let events = try await eventKitClient.fetchEvents()
await send(.eventsLoaded(.success(events)))
}
// ...
}
}
}
}
선택 이유
- ✅ 복잡한 상태 관리: 캘린더 + 노트 + 동기화를 단방향으로 안전하게
- ✅ 테스트 용이성: 비즈니스 로직을 View와 완전 분리
- ✅ 모듈화: Feature 단위 독립 개발로 빌드 속도 향상
- ✅ Side Effect 관리: EventKit, 네트워크 등을 명시적으로 처리
⌨️ 키보드 중심 UX
생산성을 위한 강력한 단축키 시스템:
| 단축키 | 기능 |
|---|---|
⌘T |
오늘로 이동 |
⌘← / ⌘→ |
이전/다음 날 |
⌘K |
Quick Input (자연어 일정 생성) |
⌘N |
새 이벤트 |
⌘/ |
검색 |
⌘, |
설정 열기 |
⌘1-5 |
뷰 모드 전환 (Day/Week/Month…) |
🚀 개발 현황
✅ 완료
- TCA 기반 프로젝트 구조 설정
- EventKit Client 구현 및 권한 처리
- 3-Column 레이아웃 (NavigationSplitView)
- Menu Bar Extra 기본 구조
- Authentication 시스템 (QR/Passkey)
🔄 진행 중
- Daily Timeline View UI/UX 개선
- 캘린더 이벤트 CRUD 완성
- 실시간 캘린더 변경 감지 (.EKEventStoreChanged)
- Inspector Panel 상세 구현
📋 예정 (Phase 2)
- Context-Aware Notes 시스템
- CoreML 기반 로컬 AI 메모 요약
- WidgetKit 인터랙티브 위젯
- Ainote Cloud 동기화 연동
- Drag & Drop 할일 → 캘린더
- Habit Tracker & Flow Timer
🎨 디자인 철학
Liquid Glass Design System
macOS Sonoma부터 도입된 최신 디자인 언어 적용:
// Liquid Glass 버튼
Button("Action") { }
.buttonStyle(.glass)
.buttonStyle(.glassProminent)
// Vibrancy 배경
VStack {
// Content
}
.containerBackground(.thinMaterial, for: .widget)
핵심 원칙
- 🪟 Floating Toolbars: 유리 표면 위에 떠있는 툴바
- ✨ Glass Effects: 반투명 글래스 효과
- 🎨 Vibrancy: 배경에 자연스럽게 녹아드는 디자인
- 📐 Corner Concentricity: 컨테이너 내 자연스러운 정렬
🎯 비즈니스 모델
Freemium 전략
🆓 Basic (무료)
- ✅ EventKit 기반 캘린더 연동
- ✅ 로컬 메모 기능
- ✅ Menu Bar Extra
- ✅ Daily Timeline View
- ✅ 키보드 단축키
💎 Pro (유료)
- ✨ Ainote 모바일/웹 연동
- ✨ 멀티 디바이스 실시간 동기화
- ✨ 고급 AI 모델 사용권 (회의록 요약)
- ✨ 위젯 시스템 전체 기능
- ✨ 무제한 노트 저장
- ✨ 우선 지원
📚 벤치마킹
성공적인 macOS Calendar/Productivity 앱들의 장점을 학습:
| 앱 | 참고 포인트 | Ainote 적용 |
|---|---|---|
| Fantastical | 자연어 입력 | ⌘K Quick Input |
| Dato | 미니멀 Menu Bar | 깔끔한 Menu Bar Extra |
| Cron | Keyboard-first | 강력한 단축키 시스템 |
| Notion Calendar | Context Note | Deep Linking Notes |
| Raycast | Quick Command | Spotlight 스타일 UX |
| Itsycal | 가벼움 | 빠른 로딩 & 반응속도 |
🔗 Ainote 생태계
크로스 플랫폼 통합
┌──────────────┐
│ Ainote Mac │ ─┐
└──────────────┘ │
├─→ Ainote Cloud API
┌──────────────┐ │ (PostgreSQL)
│Ainote Mobile │ ─┤
└──────────────┘ │
│
┌──────────────┐ │
│ Ainote Web │ ─┘
└──────────────┘
↓
Apple EventKit ← Mac App (로컬 캘린더)
CoreML AI ← Mac App (온디바이스 AI)
연결 포인트
- ✅ Mac App: 로컬 캘린더 + 지능형 메모 허브
- 📱 Mobile App: 이동 중 빠른 접근 & 알림
- 🌐 Web App: 브라우저 어디서나 접근
- ☁️ Cloud Sync: 모든 디바이스에서 동일한 경험
💡 사용 시나리오
시나리오 1: 업무 생산성 향상
오전 9시 - 하루 시작
1. Menu Bar 클릭 → 오늘 일정 한눈에 확인
2. ⌘K → "오후 2시 클라이언트 미팅" 입력
3. 자동으로 캘린더에 등록 + 알림 설정
회의 중 - 메모 작성
1. 캘린더에서 "클라이언트 미팅" 클릭
2. Inspector Panel → Note 탭
3. 회의 내용 작성 (일정과 자동 연결)
4. 회의 종료 후 AI 요약 버튼 클릭
→ "핵심 결정 3가지, 액션 아이템 5개"
저녁 - 복기 & 계획
1. Today's Top 3 위젯에서 완료 항목 체크
2. 내일 할 일을 Inbox에 추가
3. Drag & Drop으로 캘린더에 배치
시나리오 2: 크로스 플랫폼 활용
Mac에서 작성 → 모바일에서 확인
Mac App (오전)
└─ "주간 회의" 일정 생성
└─ 회의록 + 액션 아이템 작성
└─ Ainote Cloud 자동 동기화
Mobile App (이동 중)
└─ 푸시 알림: "주간 회의 15분 전"
└─ 회의록 확인
└─ 액션 아이템 체크리스트
🔐 프라이버시 & 보안
데이터 보호 원칙
로컬 우선 (Local-First)
- 📅 캘린더 데이터: Apple EventKit (iCloud)
- 📝 메모 데이터: 로컬 SwiftData → 선택적 Cloud 동기화
- 🤖 AI 처리: 100% 온디바이스 (CoreML)
투명한 동기화
사용자 선택:
├─ [x] 캘린더: Apple iCloud 사용 (기본)
├─ [x] 노트: Ainote Cloud 동기화
└─ [ ] AI 요약: 서버 전송 안 함 (로컬 처리)
권한 최소화
- ✅ 캘린더 권한: 기능 사용 시점에만 요청
- ✅ 네트워크 권한: 동기화 활성화 시에만
- ❌ 불필요한 권한 요청 없음
📦 시스템 요구사항
최소 사양
- macOS: 14.0 (Sonoma) 이상
- RAM: 8GB 이상
- 저장공간: 100MB
권장 사양
- macOS: 15.0 (Sequoia) 이상
- RAM: 16GB 이상
- 디스플레이: 13인치 이상 (1280x800)
지원 기능
- ✅ Apple Silicon (M1/M2/M3/M4)
- ✅ Intel Mac (2018년 이후)
- ✅ Retina Display 최적화
- ✅ 다크 모드 / 라이트 모드
- ✅ VoiceOver 접근성
🚀 출시 예정
2025년 1분기 (Q1)
- ✅ Phase 1 기본 기능 완성
- 🔄 비공개 베타 테스트 (TestFlight)
- 📋 피드백 수렴 & 개선
2025년 2분기 (Q2)
- 📋 Phase 2 AI 기능 추가
- 📋 Public 베타 출시
- 📋 App Store 심사 제출
2025년 하반기
- 📋 정식 출시 (Mac App Store)
- 📋 Direct 다운로드 지원 (Developer ID)
- 📋 위젯 시스템 완성
💭 마무리
Ainote for Mac은 단순한 캘린더 앱이 아닙니다.
핵심 가치
- ✨ 생산성 허브: 일정 + 할일 + 메모 + AI를 하나로
- 🎯 컨텍스트 중심: 시간과 장소에 맞는 정보 자동 제공
- 🔗 생태계 통합: Mac에서 시작해 모든 디바이스로 확장
- 🚀 네이티브 성능: macOS 전용 기능 최대 활용
“Mac의 캘린더와 Ainote의 지능형 메모가 만나는 곳”
곧 여러분을 만나뵙겠습니다!
🔗 관련 링크
Ainote 생태계
- 🌐 공식 웹사이트: ainote.dev
- 📱 웹앱: app.ainote.dev
- 🍎 iOS 앱: App Store
- 📧 이메일: dorado.mako.0v@icloud.com
개발자 리소스
- 💻 GitHub: github.com/ainote
- 📖 개발 블로그: 기술 스택 & 개발 과정 공유 예정
- 🎥 데모 영상: 출시 전 공개 예정
커뮤니티
- 💬 피드백: 앱 내 “피드백 보내기”
- 🐛 버그 리포트: GitHub Issues
- 💡 기능 제안: GitHub Discussions
베타 테스터 모집 예정! 관심 있으신 분들은 dorado.mako.0v@icloud.com로 연락주세요.
#Ainote #MacApp #Productivity #Calendar #AI #macOS #SwiftUI #TCA