{"id":13778653,"url":"https://github.com/fermoya/SwiftUIPager","last_synced_at":"2025-05-11T12:31:29.309Z","repository":{"id":37246475,"uuid":"235141760","full_name":"fermoya/SwiftUIPager","owner":"fermoya","description":"Native Pager in SwiftUI","archived":false,"fork":false,"pushed_at":"2024-02-16T07:20:16.000Z","size":39913,"stargazers_count":1293,"open_issues_count":42,"forks_count":171,"subscribers_count":13,"default_branch":"main","last_synced_at":"2024-11-05T04:03:24.108Z","etag":null,"topics":["cocoapods","ios","macos","pager","pagerview","swift5","swiftpackagemanager","swiftui","swiftui-components","tvos","watchos","xcframework"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fermoya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"fermoya","custom":["https://www.buymeacoffee.com/fermoya"]}},"created_at":"2020-01-20T16:07:49.000Z","updated_at":"2024-11-05T02:49:14.000Z","dependencies_parsed_at":"2024-01-17T00:55:20.438Z","dependency_job_id":"c6b6fb23-4112-4658-945a-1f2724c497fc","html_url":"https://github.com/fermoya/SwiftUIPager","commit_stats":{"total_commits":363,"total_committers":15,"mean_commits":24.2,"dds":0.4435261707988981,"last_synced_commit":"4ddc04c801aac143090bb14cf26603a3bf9c74cb"},"previous_names":[],"tags_count":113,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fermoya%2FSwiftUIPager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fermoya%2FSwiftUIPager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fermoya%2FSwiftUIPager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fermoya%2FSwiftUIPager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fermoya","download_url":"https://codeload.github.com/fermoya/SwiftUIPager/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225048980,"owners_count":17412904,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cocoapods","ios","macos","pager","pagerview","swift5","swiftpackagemanager","swiftui","swiftui-components","tvos","watchos","xcframework"],"created_at":"2024-08-03T18:00:55.733Z","updated_at":"2024-11-17T14:30:47.103Z","avatar_url":"https://github.com/fermoya.png","language":"Swift","readme":"# SwiftUIPager\n\n![CI](https://github.com/fermoya/SwiftUIPager/workflows/Unit%20Tests/badge.svg)\n[![codecov](https://codecov.io/gh/fermoya/SwiftUIPager/branch/main/graph/badge.svg)](https://codecov.io/gh/fermoya/SwiftUIPager)\n[![Swift Package Manager compatible](https://img.shields.io/badge/Swift%20Package%20Manager-compatible-brightgreen.svg)](https://github.com/apple/swift-package-manager)\n[![Cocoapods](https://img.shields.io/cocoapods/v/SwiftUIPager.svg)](https://cocoapods.org/pods/SwiftUIPager)\n[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![CocoaPods platforms](https://img.shields.io/cocoapods/p/SwiftUIPager.svg)](https://cocoapods.org/pods/SwiftUIPager)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n_SwiftUIPager_ provides  a `Pager` component built with SwiftUI native components. `Pager` is a view that renders a scrollable container to display a handful of pages. These pages are recycled on scroll, so you don't have to worry about memory issues. `Pager` will load just a handful of items, enough to beatifully scroll along.\n\nCreate vertical or horizontal pagers, align the cards, change the direction of the scroll, animate the pagination... `Pager` lets you do anything you want.\n\n- [Requirements](#requirements)\n- [Installation](#installation)\n    - [Cocoapods](#cocoapods)\n    - [Swift Package Manager](#swift-package-manager)\n    - [Carthage](#carthage)\n    - [Manually](#manually)\n- [Legacy projects support](Documentation/Legacy.md)\n- [Usage](Documentation/Usage.md)\n    - [Initialization](Documentation/Usage.md#initialization)\n    - [UI customization](Documentation/Usage.md#ui-customization)\n        - [Configure your page size](Documentation/Usage.md#configure-your-page-size)\n        - [Pagination sensitivity](Documentation/Usage.md#pagination-sensitivity)\n        - [Orientation and direction](Documentation/Usage.md#orientation-and-direction)\n        - [Constrain direction](Documentation/Usage.md#constrain-direction)\n        - [Alignment](Documentation/Usage.md#alignment)\n        - [Partial pagination](Documentation/Usage.md#partial-pagination)\n        - [Multiple pagination](Documentation/Usage.md#multiple-pagination)\n        - [More modifiers](Documentation/Usage.md#more-modifiers)\n    - [Paging Priority](Documentation/Usage.md#paging-priority)\n    - [Animations](Documentation/Usage.md#animations)\n        - [Scale](Documentation/Usage.md#scale)\n        - [Rotation](Documentation/Usage.md#rotation)\n        - [Opacity](Documentation/Usage.md#opacity)\n        - [Loop](Documentation/Usage.md#loop)\n    - [Page Transitions](Documentation/Usage.md#page-transitions)\n    - [Add pages on demand](Documentation/Usage.md#add-pages-on-demand)\n    - [Content Loading Policy](Documentation/Usage.md#content-loading-policy)\n    - [Examples](Documentation/Usage.md#examples)\n- [Known Issues](#known-issues)\n- [Feedback](#feedback)\n- [Support Open Source](#support-open-source)\n- [License](#license)\n\n\u003cimg src=\"resources/usage/example-of-usage.gif\" alt=\"Example of usage\"/\u003e\n        \n## Requirements\n* iOS 13.0+\n* macOS 10.15+\n* watchOS 6.0+\n* tvOS 13.0+\n* Swift 5.1+\n\n## Installation\n\n### CocoaPods\n```ruby\npod 'SwiftUIPager'\n```\n### Swift Package Manager\n\nIn Xcode:\n* File ⭢ Swift Packages ⭢ Add Package Dependency...\n* Use the URL https://github.com/fermoya/SwiftUIPager.git\n\n### Carthage\n\n```swift\ngithub \"fermoya/SwiftUIPager\"\n```\n\n### Manually\n* Download _[SwiftUIPager.xcframework](SwiftUIPager.xcframework)_\n* Create a group _Frameworks_ inside your project and drag and drop _SwiftUIPager.xcframework_\n\u003cimg src=\"resources/installation/manual-installation-step-1.png\" alt=\"Manual Installation Step 1\" width=\"229\"/\u003e\n\n* Make sure in your target's build phases that the option _Embed \u0026 Sign_ is selected:\n\u003cimg src=\"resources/installation/manual-installation-step-2.png\" alt=\"Manual Installation Step 2\" width=\"755\"/\u003e\n\n## Known Issues\n* `NavigationLink` and `Button` might work oddly with `Pager` if `pagingPriority(.simultaneous)` is used in _SwiftUI 1.0_ and _iOS 13_. This issue isn't reproducible in _iOS 14 beta_. For more information, follow this [link](https://stackoverflow.com/questions/58440469/swiftui-navigationlink-and-scrollview-drag-gesture-colliding).\n* Depending on the _Xcode_ version, you might run into a precondition failure affecting _SwiftUI 1.0_ and _iOS 13_. This issue doesn't occur on _Xcode 12 beta_. For more information about workarounds, see _Precondition failure: invalid value type for attribute [#60](https://github.com/fermoya/SwiftUIPager/issues/60)_.\n\n## Feedback\nIf you happen to encounter any problem or you have any suggestion, please, don't hesitate to open an issue or reach out to me at [fmdr.ct@gmail.com](mailto:fmdr.ct@gmail.com).  \nThis is an open source code project, so feel free to collaborate by raising a pull-request or sharing your feedback. \n\n## Support Open Source\n\nIf you love this library, understand all the effort it takes to maintain it and would like to  support me, you can buy me a coffee by following this [link](https://www.buymeacoffee.com/fermoya):\n\n\u003ca href=\"https://www.buymeacoffee.com/fermoya\" target=\"_blank\"\u003e\u003cimg src=\"https://cdn.buymeacoffee.com/buttons/default-orange.png\" alt=\"Buy Me A Coffee\" style=\"height: 51px !important;width: 217px !important;\" \u003e\u003c/a\u003e\n\nYou can also sponsor me by hitting the [_GitHub Sponsor_](https://github.com/sponsors/fermoya) button. All help is very much appreciated.\n\n## License  \n\n`SwiftUIPager` is available under the MIT license. See the [LICENSE](/LICENSE) file for more info.\n","funding_links":["https://github.com/sponsors/fermoya","https://www.buymeacoffee.com/fermoya"],"categories":["Pages","Swift","xcframework"],"sub_categories":["Content"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffermoya%2FSwiftUIPager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffermoya%2FSwiftUIPager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffermoya%2FSwiftUIPager/lists"}