{"id":27160558,"url":"https://github.com/mobile-simformsolutions/SSCustomTabbar","last_synced_at":"2025-04-09T00:01:33.094Z","repository":{"id":49119432,"uuid":"178192956","full_name":"SimformSolutionsPvtLtd/SSCustomTabbar","owner":"SimformSolutionsPvtLtd","description":"Simple Animated tabbar with native control","archived":false,"fork":false,"pushed_at":"2023-11-24T06:12:04.000Z","size":2032,"stargazers_count":580,"open_issues_count":0,"forks_count":66,"subscribers_count":16,"default_branch":"master","last_synced_at":"2024-07-31T18:01:52.827Z","etag":null,"topics":["animatedtabbar","customtabbar","fluidtabbar","swiftui","swiftui-animations","tabbar"],"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/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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-03-28T11:50:26.000Z","updated_at":"2024-07-30T05:45:36.000Z","dependencies_parsed_at":"2022-09-02T04:03:12.794Z","dependency_job_id":"f0070c48-a48e-449a-834f-69c041b0df38","html_url":"https://github.com/SimformSolutionsPvtLtd/SSCustomTabbar","commit_stats":null,"previous_names":["simformsolutions/sscustomtabbar","mobile-simformsolutions/sscustomtabbar"],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSCustomTabbar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSCustomTabbar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSCustomTabbar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimformSolutionsPvtLtd%2FSSCustomTabbar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimformSolutionsPvtLtd","download_url":"https://codeload.github.com/SimformSolutionsPvtLtd/SSCustomTabbar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247947842,"owners_count":21023065,"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":["animatedtabbar","customtabbar","fluidtabbar","swiftui","swiftui-animations","tabbar"],"created_at":"2025-04-09T00:01:07.580Z","updated_at":"2025-04-09T00:01:33.076Z","avatar_url":"https://github.com/SimformSolutionsPvtLtd.png","language":"Swift","funding_links":[],"categories":["iOS","iOS Guides"],"sub_categories":["Swift"],"readme":"# SSCustomTabbar\n\n\u003e Simple Animated tabbar with native control.\n\n[![Version](https://img.shields.io/cocoapods/v/SSCustomTabbar.svg?style=flat)](https://cocoapods.org/pods/SSCustomTabbar)\n[![License](https://img.shields.io/cocoapods/l/SSCustomTabbar.svg?style=flat)](https://cocoapods.org/pods/SSCustomTabbar)\n[![Platform](https://img.shields.io/cocoapods/p/SSCustomTabbar.svg?style=flat)](https://cocoapods.org/pods/SSCustomTabbar)\n[![Swift Version][swift-image]][swift-url]\n[![PRs Welcome][PR-image]][PR-url]\n\n![Example](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/customTabbar.gif)\n\n![Example](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/reverseTabbar.gif)\n\n## Requirements\n\n- iOS 11.0+\n- Xcode 10.0+\n\n## Installation\nSSCustomTabbar doesn't contain any external dependencies.\n\nIt is available through [CocoaPods](https://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod 'SSCustomTabbar'\n```\n\n## UIKit Usage example\n\n### Set UITabbarController to SSCustomTabBarViewController\n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/SSCustomTabBarViewController.png)\n\n### Set UITabBar to SSCustomTabBar\n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/SSCustomTabBar.png)\n\n### Set UITabBar to SSCustomTabBar reverse curve\n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/SSCustomTabBarReverseCurve.png)\n\n\n## SwiftUI Usage example\n\n    struct TabItem: View {\n    \n      var text: String\n      @State var isNextActive: Bool = false\n      @Binding var isTabBarHidden: Bool\n    \n      var body: some View {\n         NavigationView {\n               ZStack {\n                  NavigationLink(destination: PushedView(isTabBarHidden: self.$isTabBarHidden, showPushedView: self.$isNextActive), isActive: self.$isNextActive) {\n                       EmptyView()\n                  }\n                \n                  VStack(spacing: 30) {\n                    \n                       Button(action: {\n                           self.isNextActive = true\n                       }) {\n                           Text(\"Tap to Push\")\n                       }\n                   }\n               }.onAppear {\n                   self.isTabBarHidden = false\n               }\n           }\n      }\n    \n    }\n\n\n    struct ContentView: View {\n    \n       @State var isTabBarHidden: Bool = false\n    \n       var body: some View {\n           tabView\n            .onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in\n                SwiftUITabBarController.refreshViews()\n           }\n       }\n    \n       var tabView: some View {\n           let vc1 = SwiftUITabView(content: UIHostingController(rootView: TabItem(text: \"Home\", isTabBarHidden: self.$isTabBarHidden)), title: \"Home\", selectedImage: \"iconHomeSelected\", unSelectedImage: \"iconHome\")\n           let vc2 = SwiftUITabView(content: UIHostingController(rootView: TabItem(text: \"Favorite\", isTabBarHidden: self.$isTabBarHidden)), title: \"Favorite\", selectedImage: \"iconFavoriteSelected\", unSelectedImage: \"iconFavorite\")\n           let vc3 = SwiftUITabView(content: UIHostingController(rootView: TabItem(text: \"Video\", isTabBarHidden: self.$isTabBarHidden)), title: \"Video\", selectedImage: \"iconVideoSelected\", unSelectedImage: \"iconVideo\")\n           let vc4 = SwiftUITabView(content: UIHostingController(rootView: TabItem(text: \"Profile\", isTabBarHidden: self.$isTabBarHidden)), title: \"Profile\", selectedImage: \"iconProfileSelected\", unSelectedImage: \"iconProfile\")\n           let vc5 = SwiftUITabView(content: UIHostingController(rootView: TabItem(text: \"Chat\", isTabBarHidden: self.$isTabBarHidden)), title: \"Chat\", selectedImage: \"iconChatSelected\", unSelectedImage: \"iconChat\")\n        \n           let tabBarView = SwiftUITabBarController(tabItems: [vc1, vc2, vc3, vc4, vc5], configuration: .constant(SSTabConfiguration()), isTabBarHidden: self.$isTabBarHidden)\n           return tabBarView\n      }\n    \n    }\n\n# Customization\n\nYou can change:\n   - BarHeight\n   - UnSelected item tint color\n   - Wave Height\n   - Animation point(Position)\n   - Layer background color\n   \n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/barHeightAndUpanimationpoint.png)\n\n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/layerColorWaveHightUnselectedTintColor.png)\n\n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/Description.png)\n\n\n## Adding Badge value\n![alt text](https://raw.githubusercontent.com/simformsolutions/SSCustomTabbar/master/SSCustomTabBar/Screenshots/SSCustomTabBarBadgeValue.png)\n\nAdd/Update badge value:\n```\nlet tabBarController = self.tabBarController as? SSCustomTabBarViewController\ntabBarController?.addOrUpdateBadgeValueAtIndex(index: 0, value: \"Your Value Here\")\n```\n\nRemove badge value:\n```\nlet tabBarController = self.tabBarController as? SSCustomTabBarViewController\ntabBarController?.removeBadgeValueAtIndex(index: 1)\n```\n\nRemove all badge values:\n```\nlet tabBarController = self.tabBarController as? SSCustomTabBarViewController\ntabBarController?.removeAllBadges()\n```\n\n## Contribute\n\nWe would love you for the contribution to SSCustomTabMenu, check the LICENSE file for more info.\n\n## Android Library.\n- Check our Android Library also on [Github](https://github.com/SimformSolutionsPvtLtd/SSCustomBottomNavigation)\n\n# Check out our other Libraries\n\n\u003ch3\u003e\u003ca href=\"https://github.com/SimformSolutionsPvtLtd/Awesome-Mobile-Libraries\"\u003e\u003cu\u003e🗂 Simform Solutions Libraries→\u003c/u\u003e\u003c/a\u003e\u003c/h3\u003e\n\n\n## License\n\nSSCustomTabbar is available under the MIT license. See the LICENSE file for more info.\n\n\n[PR-image]:https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square\n[PR-url]:http://makeapullrequest.com\n[swift-image]:https://img.shields.io/badge/swift-4.2-orange.svg\n[swift-url]: https://swift.org/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobile-simformsolutions%2FSSCustomTabbar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmobile-simformsolutions%2FSSCustomTabbar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobile-simformsolutions%2FSSCustomTabbar/lists"}