Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A Swift Data Table package, display grid-like data sets in a nicely formatted table for iOS. Subclassing UICollectionView that allows ordering, and searching with extensible options.

License

Notifications You must be signed in to change notification settings

pavankataria/SwiftDataTables

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

303 Commits

Repository files navigation

Swift DataTables

CI Status SPM Compatible Swift 5.9 iOS 17+

The powerful, flexible data table component that iOS deserves.

Display grid-like data with sorting, searching, and smooth animations — all in just a few lines of code.


Shape the Roadmap

Vote for features — your votes decide what gets built next.

See the complete documentation →


Guides & API Reference

Explore the docs — step-by-step tutorials, real-world patterns, and complete API reference. From first table to production-ready.


Features

Feature Description
Type-Safe Columns Declarative API with key paths and custom transforms
Animated Diffing Smooth updates that calculate exactly what changed
Self-Sizing Cells Automatic row heights, efficient for 100k+ rows
928x Faster 50,000 rows in 0.25s (was 4+ minutes)
Custom Cells Full Auto Layout support via cell providers
Fixed Columns Freeze columns on left or right sides
Sorting & Search Built-in or native navigation bar search

Quick Start

import SwiftDataTables
struct Employee: Identifiable {
 let id: String
 let name: String
 let role: String
}
let columns: [DataTableColumn<Employee>] = [
 .init("Name", \.name),
 .init("Role", \.role)
]
let dataTable = SwiftDataTable(columns: columns)
dataTable.setData(employees, animatingDifferences: true)

See the full documentation → — step-by-step tutorials, real-world patterns, and complete API reference. From first table to production-ready.


Install

Swift Package Manager

dependencies: [
 .package(url: "https://github.com/pavankataria/SwiftDataTables", from: "0.9.0")
]

Or in Xcode: File → Add Package Dependencieshttps://github.com/pavankataria/SwiftDataTables


Demo App

  1. Clone the repo
  2. Open SwiftDataTables.xcodeproj
  3. Select the DemoSwiftDataTables scheme
  4. Build and Run

Support

Sponsor on Open Collective


Author

Pavan Kataria@pavan_kataria

License

MIT License. See LICENSE for details.

About

A Swift Data Table package, display grid-like data sets in a nicely formatted table for iOS. Subclassing UICollectionView that allows ordering, and searching with extensible options.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 8

Languages

AltStyle によって変換されたページ (->オリジナル) /