{"id":15288666,"url":"https://github.com/simformsolutionspvtltd/ssswiftuispinnerbutton","last_synced_at":"2025-12-12T06:03:17.685Z","repository":{"id":37709752,"uuid":"337481935","full_name":"SimformSolutionsPvtLtd/SSSwiftUISpinnerButton","owner":"SimformSolutionsPvtLtd","description":"SSSwiftUISpinnerButton is a collection of various spinning animations for buttons in SwiftUI.","archived":false,"fork":false,"pushed_at":"2021-08-02T11:02:08.000Z","size":683,"stargazers_count":44,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-24T18:16:09.529Z","etag":null,"topics":["animations","button","cocoapods","custombutton","ios","loader","loading","loading-animations","loading-indicator","loading-spinner","loadingbutton","spinner-animations","swiftui"],"latest_commit_sha":null,"homepage":"https://github.com/SimformSolutionsPvtLtd/SSSwiftUISpinnerButton","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/SimformSolutionsPvtLtd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-02-09T17:26:15.000Z","updated_at":"2024-12-07T00:50:27.000Z","dependencies_parsed_at":"2022-08-08T21:16:19.191Z","dependency_job_id":null,"html_url":"https://github.com/SimformSolutionsPvtLtd/SSSwiftUISpinnerButton","commit_stats":null,"previous_names":["mobile-simformsolutions/ssswiftuispinnerbutton"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSSwiftUISpinnerButton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSSwiftUISpinnerButton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSSwiftUISpinnerButton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSSwiftUISpinnerButton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimformSolutionsPvtLtd","download_url":"https://codeload.github.com/SimformSolutionsPvtLtd/SSSwiftUISpinnerButton/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248674674,"owners_count":21143760,"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":["animations","button","cocoapods","custombutton","ios","loader","loading","loading-animations","loading-indicator","loading-spinner","loadingbutton","spinner-animations","swiftui"],"created_at":"2024-09-30T15:51:55.066Z","updated_at":"2025-12-12T06:03:12.331Z","avatar_url":"https://github.com/SimformSolutionsPvtLtd.png","language":"Swift","readme":"\u003ca href=\"https://www.simform.com/\"\u003e\u003cimg src=\"https://github.com/mobile-simformsolutions/SSSwiftUISpinnerButton/blob/main/simformBanner.png\"\u003e\u003c/a\u003e\n\n# SSSwiftUISpinnerButton\n\n\nSSSwiftUISpinnerButton is an open-source library in SwiftUI to add different spinning animation to button.\n\n[![Platform][platform-image]][platform-url]\n[![swiftUI](https://img.shields.io/badge/-swiftUI-blue)](https://developer.apple.com/documentation/swiftui)\n[![Swift Version][swift-image]][swift-url]\n[![License][license-image]][license-url]\n[![PRs Welcome][PR-image]][PR-url]\n\n![Alt text](https://github.com/mobile-simformsolutions/SSSwiftUISpinnerButton/blob/main/SSSwiftUISpinnerButton.gif?raw=true)\n\n# Features!\n  - Various spinner animation styles\n  - Rounded button on spinning animation\n\n# Requirements\n  - iOS 13.0+\n  - Xcode 11+\n\n# Installation\n#### CocoaPods\n \n- You can use CocoaPods to install `SSSwiftUISpinnerButton` by adding it to your Podfile:\n\n       use_frameworks!\n       pod 'SSSwiftUISpinnerButton'\n\n- Import SSSwiftUISpinnerButton in your file:\n\n       import SSSwiftUISpinnerButton\n\n**Manually**\n-   Download and drop **SSSwiftUISpinnerButton/Sources** folder in your project.\n-   Congratulations!\n\n#### Swift Package Manager\n-   When using Xcode 11 or later, you can install `SSSwiftUISpinnerButton` by going to your Project settings \u003e `Swift Packages` and add the repository by providing the GitHub URL. Alternatively, you can go to `File` \u003e `Swift Packages` \u003e `Add Package Dependencies...`\n\n         dependencies: [\n             .package(url: \"https://github.com/mobile-simformsolutions/SSSwiftUISpinnerButton.git\", from: \"1.0.0\")\n         ]\n\n# Usage Examples\n\n   **Add Spinner Button**\n    \n - Add state variable to manage spinner button start and stop animation\n\n       @State var isSpinnerButtonAnimating: Bool = false\n\n - Add Spinner button:\n\n       SpinnerButton(buttonAction: {\n                // Your button action code here\n            }, isAnimating: $isSpinnerButtonAnimating, builder: {\n                // Add any view or content in button if required\n                HStack {\n                      Text(\"Save\")\n                        .foregroundColor(.white)\n                }\n            }\n        )\n\n**Start Animation**\n- Animation will start as soon as you will tap on the button (`isSpinnerButtonAnimating` state variable will be set true).\n   \n**Stop Animation**\n- To stop the spinner button animation, simply toggle the state variable `isSpinnerButtonAnimating` value.\n\n      isSpinnerButtonAnimating.toggle()\n\n**Spinner button animation style**\n- You can select from different animation styles \n- Every animation style has properties such as count, size, etc which can be modified.\n\n      SpinnerButton(buttonAction: {\n               /// Action to perform\n         }, isAnimating: $isSpinnerButtonAnimating, \n            animationType: SpinnerButtonAnimationStyle.lineSpinFade(count: 8, width: 0)) {\n                 /// Add content in button\n         }\n**Spinner button customisation**\n- You can modify view of the spinner button using `SpinnerButtonViewStyle` \n- Initialise variable with type `SpinnerButtonViewStyle` to design button:\n \n      private var buttonStyleWithBasicDesign: SpinnerButtonViewStyle = SpinnerButtonViewStyle(\n            width: 300, \n            height: 50, \n            cornerRadius: 5, \n            backgroundColor: .black, \n            spinningButtonBackgroundColor: .black, \n            spinningStrokeColor: .white\n      )\n\n- Assign it to `buttonstyle`:\n \n      SpinnerButton(buttonAction: {\n              /// Action to perform\n         }, isAnimating: $isSpinnerButtonAnimating, \n            buttonStyle: buttonStyleWithBasicDesign,\n            animationType: SpinnerButtonAnimationStyle.lineSpinFade(count: 8, width: 0)) {\n              /// Add content in button\n         }\n\n# Swift Library:\n-    Check out our Swift Library for Spinner Button - [SSSpinnerButton](https://github.com/SimformSolutionsPvtLtd/SSSpinnerButton)\n\n#  Meta\n-    Distributed under the MIT license. See LICENSE for more information.\n\n# Inspired By: \n-   Spinner animations inspired from [iActivityIndicator](https://github.com/MojtabaHs/iActivityIndicator)\n\n[swift-image]:https://img.shields.io/badge/swift-5.0-orange.svg\n[swift-url]: https://swift.org/\n[license-image]: https://img.shields.io/badge/License-MIT-blue.svg\n[license-url]: LICENSE\n[platform-image]:https://img.shields.io/cocoapods/p/LFAlertController.svg?style=flat\n[platform-url]:https://github.com/mobile-simformsolutions/SSSwiftUISpinnerButton\n[PR-image]:https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square\n[PR-url]:http://makeapullrequest.com\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimformsolutionspvtltd%2Fssswiftuispinnerbutton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimformsolutionspvtltd%2Fssswiftuispinnerbutton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimformsolutionspvtltd%2Fssswiftuispinnerbutton/lists"}