exyte/Grid
69.6
Adequate · 1 October 2026
3.3k
lines of production code
Swift
primary language
2
measurements over time
What this system is
ExyteGrid is a multi-platform layout framework for iOS, macOS, and tvOS that provides flexible grid arrangement capabilities. It supports various layout modes including flow, packing, and drag reordering, with features like hover zoom and adaptive calculator demos. The system includes in-memory caching for performance optimization and is distributed via Swift Package Manager.
Features
Introduce in-memory layout caching for Grid
Grid now supports an in-memory cache for layout calculations, configurable via the \cache\ parameter (\.inMemoryCache\ or \.noCache\). This feature, available on iOS, watchOS, and tvOS, stores the results of arrangement and positioning tasks to avoid redundant computation when the grid content or container size changes, improving performance for complex or frequently updating grids.
Sources · high confidence
New Example app with multi-platform support and interactive grid demos
The Example app has been restructured to use the modern SwiftUI app lifecycle and supports iOS, macOS, and tvOS. The main interface now presents a list of interactive examples demonstrating ExyteGrid features, including Calculator, Spans, Starts, Flow, Content mode, Packing, Spacing, Hover Zoom, Pixel Test, Drag Reorder, and Grid in Scroll. The Calculator demo specifically showcases adaptive layouts that switch between system and alternative modes based on device orientation.
Example/Example · high confidence
Architecture
Grid framework project structure and configuration
The Grid.xcodeproj project file has been created to define the build configuration for the Grid framework. This includes the source file references for the grid layout logic (such as LayoutArranging, GridGroup, and GridElement), the inclusion of test targets (GridTests), and the setup of the build scheme to build the framework and run tests. This change establishes the project structure required to compile and test the Grid library.
Grid.xcodeproj · high confidence
Behavioural changes
Added Grid\_Example build scheme for Xcode
The Xcode project now includes a dedicated build scheme (Grid\_Example.xcscheme) that configures the Grid\_Example app target for building, running, testing, profiling, and archiving. This ensures the example application can be launched and debugged directly from Xcode without manual scheme configuration.
Example/Example.xcodeproj/xcshareddata · high confidence
Example app restructured with new layout demos and SwiftLint
The Example app project has been reorganized to include a broader set of demonstration views, specifically adding examples for packing, spacing, spans, starts, flow, content mode, card views, drag reordering, grid in scroll, hover zoom, and pixel testing, alongside a basic calculator implementation. The project structure now groups these into Views, Extensions, and Calculator folders, and integrates SwiftLint into the build phases to enforce code style.
Example/Example.xcodeproj · high confidence
Example project workspace restructured for Xcode universal target and Swift Package Manager
The Example project's Xcode workspace has been reconfigured to support a universal target and Swift Package Manager (SPM) integration. This change updates the workspace configuration files to reflect the new project structure, ensuring compatibility with the updated build system and dependency management approach.
Example/Example.xcodeproj/project.xcworkspace · medium confidence
Test coverage
Added unit tests for grid layout arrangement and positioning
Added new test suites in the Tests directory to verify the grid layout engine's behavior. ArrangingTest.swift covers sparse and dense row-based arrangement logic along with performance benchmarks. ArrangingWithStartsTest.swift validates arrangement when specific start positions are provided. PositionColumnScrollTest.swift and PositionRowsScrollTest.swift test the repositioning logic for scroll modes in both column and row flows. Supporting test info plists for iOS and macOS were also added.
Tests · high confidence
Dependencies
Add Swift Package Manager support
The library is now available via Swift Package Manager, allowing users to integrate ExyteGrid into iOS 14+, macOS 10.15+, and tvOS 14+ projects using the standard Package.swift manifest.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Score
- CAI 70 → 70 (-0.1)
- Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.
Lenses
- Code Health 98 → 97 (-0.5)
- Architecture 100 → 100 (-0.3)
- Maturity 55 → 55 (+0.2)
- Readiness 64 → 66 (+2.6)
- Security 100 → 100 (+0.0)
Resolved (3)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Hotspot: Sources/GridLayoutMath/LayoutPositioning.swift (Sources/GridLayoutMath/LayoutPositioning.swift)
New (6)
- Coverage not measured — Swift suite
- Dependency hygiene PARTLY measured — SwiftPM pinning read, dependency currency NOT established
- Duplicated block (5 lines × 2) (Example/Example/PixelTestExample.swift)
- Duplicated block (5 lines × 2) (Example/Example/PixelTestExample.swift)
- Duplicated block (5 lines × 4) (Example/Example/PixelTestExample.swift)
- LayoutArrangement.description (cognitive 16) (Sources/Models/LayoutArrangement.swift)
Changes since last survey
- 1 commits — 0 feature/other, 1 fixes
By area
- Example/Example — 1 commit
Notable commits
- fix: Fix overlapping in ScrollView
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
exyte/Grid was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 1 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit c4d1cabb0c7fcbd35f664c31ad23e7aa32bc3dd4 — the exact code this score is about.
- Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-e569280dd5e2.