macOS 앱에 사용자가 직접 설정할 수 있는 전역 키보드 단축키와 바로 사용할 수 있는 녹화 UI를 추가하는 Swift 패키지입니다.
JohnEstropia/CoreStore
iOS, macOS, watchOS, tvOS 앱에서 Apple Core Data를 타입 안전하고 동시성 안전한 API로 사용할 수 있게 해주는 Swift 라이브러리입니다.
- 스타
- 4,048
- 포크
- 257
- 열린 이슈
- 98
- 마지막 커밋
- 지난달
어떤 프로젝트인가요?
CoreStore는 Apple의 Core Data 프레임워크를 감싼 Swift 래퍼입니다. NSManagedObjectContext, NSFetchedResultsController, KVO를 사용할 때 필요한 반복적인 코드를 줄이고, 데이터를 가져오고 조회하고 저장하고 관찰할 수 있는 상위 수준의 API를 제공합니다.
모든 쓰기 작업은 직렬 트랜잭션(비동기, 동기 또는 unsafe)을 거치며, 메인 컨텍스트는 읽기 전용으로 유지됩니다. .xcdatamodeld 파일 대신 CoreStoreObject와 타입이 지정된 @Field 프로퍼티를 사용해 순수 Swift로 모델을 정의할 수 있으며, 버전 체인을 기반으로 점진적 마이그레이션을 수행합니다. Combine publisher와 SwiftUI 프로퍼티 래퍼도 제공합니다.
이 라이브러리는 Swift 5.9와 함께 iOS 16 이상, macOS 13 이상, watchOS 9 이상, tvOS 16 이상을 대상으로 하며, CocoaPods, Carthage 또는 Swift Package Manager로 설치할 수 있습니다.
핵심 기능
- 01모든 쓰기 작업에 직렬 트랜잭션을 사용하며, 메인 컨텍스트는 읽기 전용으로 유지합니다.
- 02.xcdatamodeld 파일 없이 CoreStoreObject를 사용해 Swift에서 타입 안전한 모델을 선언할 수 있습니다.
- 03모델 버전 마이그레이션 체인을 기반으로 점진적 마이그레이션을 수행합니다.
- 04where, orderBy, 집계 조건을 제공하는 유연한 fetch 및 query API입니다.
- 05목록과 객체를 관찰할 수 있으며, diffable 목록도 지원합니다.
- 06Combine publisher와 SwiftUI 프로퍼티 래퍼를 제공합니다.
활용 사례
- 쓰기 작업의 동시성을 더 안전하게 관리해야 하는 Core Data 기반 iOS 앱 개발.
- Xcode 모델 파일 대신 순수 Swift 코드로 Core Data 모델 정의.
- diffable 스냅샷을 사용해 영구 저장 데이터에 따라 UITableView 또는 UICollectionView 업데이트.
- 여러 차례 출시된 앱 버전에 걸친 스키마 마이그레이션 관리.
사용 전 알아둘 점
- Swift 5.9 및 최신 OS 버전이 필요합니다: iOS 16.0 이상, macOS 13.0 이상, watchOS 9.0 이상, tvOS 16.0 이상.
포함된 컬렉션
토픽
자주 묻는 질문
- CoreStore은(는) 무엇인가요?
- iOS, macOS, watchOS, tvOS 앱에서 Apple Core Data를 타입 안전하고 동시성 안전한 API로 사용할 수 있게 해주는 Swift 라이브러리입니다. CoreStore는 Apple의 Core Data 프레임워크를 감싼 Swift 래퍼입니다. NSManagedObjectContext, NSFetchedResultsController, KVO를 사용할 때 필요한 반복적인 코드를 줄이고, 데이터를 가져오고 조회하고 저장하고 관찰할 수 있는 상위 수준의 API를 제공합니다.
- CoreStore은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- CoreStore은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- CoreStore은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. CoreStore의 마지막 커밋은 2026년 10월 2일입니다.
- CoreStore은(는) 어디에 사용할 수 있나요?
- 쓰기 작업의 동시성을 더 안전하게 관리해야 하는 Core Data 기반 iOS 앱 개발. Xcode 모델 파일 대신 순수 Swift 코드로 Core Data 모델 정의. diffable 스냅샷을 사용해 영구 저장 데이터에 따라 UITableView 또는 UICollectionView 업데이트. 여러 차례 출시된 앱 버전에 걸친 스키마 마이그레이션 관리.
- CoreStore은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/JohnEstropia/CoreStore
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
macOS, iOS, tvOS, watchOS, visionOS 등 Apple 플랫폼용 로깅 프레임워크로, 콘솔·파일·커스텀 백엔드 같은 여러 로거에 로그 메시지를 전달합니다.
그래픽 인터페이스에서 여러 Xcode 버전을 설치하고 전환할 수 있는 macOS 앱입니다.
URLSession을 기반으로 체이닝 가능한 요청, 인코딩, 업로드, 다운로드, 응답 검증을 제공하는 Swift용 우아한 HTTP 네트워킹 라이브러리입니다.