A Swift library for iOS that provides quick access to system information like disk, network, battery, hardware, and locale.
Luminous is a Swift library for iOS that provides a clean, static API to access detailed system information. It centralizes data about disk space, network connectivity, battery status, hardware specifications, screen properties, and locale settings, solving the problem of scattered and boilerplate-heavy system API calls.
iOS developers building apps that need to monitor system resources, adapt to device conditions, or display system information without dealing with low-level API complexities.
Developers choose Luminous for its modern Swift design, type-safe API, removal of deprecated iOS APIs, and convenience in accessing reliable system data with minimal code.
Luminous provides you a lot of information about the system and a lot of handy methods to quickly get useful data on the iOS platform.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Centralizes disk, network, battery, hardware, and locale data under a single Luminous namespace, eliminating scattered calls across multiple iOS frameworks as shown in the API reference.
Annotates battery, screen, and device properties with @MainActor, ensuring safe UIKit access and preventing threading bugs, with clear examples for handling non-main contexts.
Uses static properties and methods with no instantiation required, leveraging Foundation types like UnitInformationStorage for a type-safe, idiomatic Swift experience.
Prunes unreliable APIs such as Carrier and SSID, focusing on stable system information to keep the library lean, as detailed in the migration guide.
Requires iOS 17+ and Swift 6.0, excluding apps that need to support older iOS versions or use earlier Swift toolchains.
Accessing properties like battery level or screen brightness requires @MainActor context, adding boilerplate with await MainActor.run {} in non-main threads, as illustrated in usage examples.
Deliberately excludes deprecated APIs like carrier info and SSID, which might be necessary for legacy apps or specific use cases still relying on those data points.