A pure Swift library for parsing and reading Excel XLSX spreadsheet files.
CoreXLSX is a Swift library for parsing Excel XLSX spreadsheet files. It reads the XML-based structure of .xlsx archives and maps it into Swift model types, allowing developers to extract cell data, shared strings, and styles programmatically. It solves the problem of accessing Excel file contents natively in Swift without relying on external or proprietary tools.
Swift developers on Apple platforms (iOS, macOS, watchOS, tvOS) or Linux who need to read data from Excel XLSX files within their applications, such as for data import, reporting, or automation tasks.
Developers choose CoreXLSX because it's a pure Swift solution with no external dependencies, leverages Swift's Codable for type-safe parsing, and provides detailed low-level access to spreadsheet internals. It's specifically designed for the modern .xlsx format and integrates seamlessly with the Swift ecosystem.
Excel spreadsheet (XLSX) format parser written in pure Swift
Built entirely in Swift using Codable protocols, ensuring seamless integration with Swift ecosystems and type-safe parsing without external Excel libraries.
Distinguishes between empty and absent cells, optimizing performance for large or sparse spreadsheets as explained in the 'Empty cells' section of the README.
Provides fine-grained access to cell references, shared strings, and styles through native Swift models, allowing precise data extraction and formatting reads.
Available on iOS, macOS, watchOS, tvOS, and Linux, making it versatile for a wide range of Swift-based applications across different platforms.
Cannot create or modify XLSX files, restricting use to data extraction scenarios only, as stated in the library's focus on read-only support.
Users must implement custom logic to map cell references to values, as admitted in the 'Finding a cell by a cell reference' section, adding development overhead.
Relies on ZIPFoundation and XMLCoder for zip archive handling and XML parsing, which increases project footprint and potential compatibility issues.
Only supports the modern .xlsx format, excluding older .xls files and other spreadsheet formats, requiring alternative solutions for broader compatibility.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.