This library simplifies the implementation of carousel-style interfaces in SwiftUI applications while maintaining smooth, infinite scrolling functionality.
♾️ Infinite scrolling support
🎯 Selected item tracking
📏 Configurable item spacing
📍 Current index monitoring
⚡️ Native SwiftUI implementation
CarouselView is available through SPM. Use below URL to add as a dependency
dependencies: [
.package(url: "https://github.com/AnbalaganD/CarouselView", .upToNextMajor(from: "1.0.0"))
]
import CarouselView
struct ContentView: View {
private let items: [String] = ["One", "Two", "Three", "Four", "Five"]
@State private var selectedIndex: Int = 2
var body: some View {
CarouselView(
items,
spacing: 10.0,
selectedIndex: $selectedIndex
) { item in
Text(item)
.frame(maxWidth: .infinity)
.frame(height: 200)
.background(Color.gray)
.clipShape(RoundedRectangle(cornerSize: .init(width: 5, height: 5)))
}
}
}
CarouselView is available under the MIT license. See the LICENSE file for more info.