Swift-пакет для добавления в приложения macOS глобальных настраиваемых пользователем клавиатурных сочетаний с готовым интерфейсом для их записи.
JohnEstropia/CoreStore
Swift-библиотека, которая предоставляет безопасный по типам и потокам API для Apple Core Data в приложениях для iOS, macOS, watchOS и tvOS.
- Звёзды
- 4,048
- Форки
- 257
- Открытые issues
- 98
- Последний коммит
- в прошлом месяце
Что это?
CoreStore — Swift-обёртка над фреймворком Apple Core Data. Она избавляет от большей части шаблонного кода для NSManagedObjectContext, NSFetchedResultsController и KVO, предоставляя API высокого уровня для выборки, запросов, сохранения и наблюдения за данными.
Все операции записи выполняются через последовательные транзакции (асинхронные, синхронные или небезопасные), а главный контекст остаётся доступным только для чтения. Модели можно описывать на чистом Swift с помощью CoreStoreObject и типизированных свойств @Field вместо файлов .xcdatamodeld, а поэтапные миграции задаются цепочкой версий. Также доступны Combine-паблишеры и property wrappers для SwiftUI.
Библиотека рассчитана на iOS 16+, macOS 13+, watchOS 9+ и tvOS 16+ и требует Swift 5.9. Установить её можно через CocoaPods, Carthage или Swift Package Manager.
Ключевые возможности
- 01Последовательные транзакции для всех операций записи при доступном только для чтения главном контексте.
- 02Типобезопасные модели, описываемые на Swift с помощью CoreStoreObject без файлов .xcdatamodeld.
- 03Поэтапные миграции, управляемые цепочкой версий модели.
- 04Удобный API для выборок и запросов с условиями where, сортировкой orderBy и агрегатными выражениями.
- 05Наблюдатели за списками и объектами, включая поддержку diffable-списков.
- 06Combine-паблишеры и property wrappers для SwiftUI.
Сценарии использования
- Разработка приложения для iOS на Core Data, которому нужна более безопасная работа с потоками при записи данных.
- Описание моделей Core Data на чистом Swift вместо файлов моделей Xcode.
- Обновление UITableView или UICollectionView на основе постоянных данных с помощью diffable-снимков.
- Управление миграциями схемы между многочисленными выпущенными версиями приложения.
Что важно знать
- Требуются Swift 5.9 и актуальные версии ОС: iOS 16.0 и новее, macOS 13.0 и новее, watchOS 9.0 и новее, tvOS 16.0 и новее.
В подборках
Темы
Частые вопросы
- Что такое CoreStore?
- Swift-библиотека, которая предоставляет безопасный по типам и потокам API для Apple Core Data в приложениях для iOS, macOS, watchOS и tvOS. CoreStore — Swift-обёртка над фреймворком Apple Core Data. Она избавляет от большей части шаблонного кода для NSManagedObjectContext, NSFetchedResultsController и KVO, предоставляя API высокого уровня для выборки, запросов, сохранения и наблюдения за данными.
- CoreStore можно использовать бесплатно? Какая у него лицензия?
- CoreStore распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- CoreStore всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в CoreStore — 2 окт. 2026 г..
- Для чего можно использовать CoreStore?
- Разработка приложения для iOS на Core Data, которому нужна более безопасная работа с потоками при записи данных. Описание моделей Core Data на чистом Swift вместо файлов моделей Xcode. Обновление UITableView или UICollectionView на основе постоянных данных с помощью diffable-снимков. Управление миграциями схемы между многочисленными выпущенными версиями приложения.
- Где скачать CoreStore?
- Исходный код и инструкции по установке — на GitHub: https://github.com/JohnEstropia/CoreStore
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Библиотека для Swift, которая упрощает разбор и создание JSON благодаря типобезопасному API для работы с исходными JSON-объектами без цепочек optional.
Фреймворк логирования для платформ Apple (macOS, iOS, tvOS, watchOS, visionOS), который направляет сообщения в несколько логгеров: консоль, файлы и пользовательские бэкенды.
Приложение для macOS, которое позволяет устанавливать несколько версий Xcode и переключаться между ними через графический интерфейс.
Удобная HTTP-библиотека для Swift на основе URLSession: цепочки запросов, кодирование данных, загрузка файлов и проверка ответов.
Более 500 нативных расширений Swift с полезными методами для типов стандартной библиотеки, Foundation и UIKit/AppKit.