Snippet
import SwiftUI
struct ContentView: View {
@State private var reveal = false
var body: some View {
ZStack {
Color.black.ignoresSafeArea()
Text("SWIFTUI")
.font(.system(size: 65, weight: .black, design: .rounded))
.foregroundStyle(.white)
.mask {
LinearGradient(
colors: [.clear, .white, .clear],
startPoint: .leading,
endPoint: .trailing
)
.frame(width: 180)
.offset(x: reveal ? 260 : -260)
}
}
.onAppear {
withAnimation(.easeInOut(duration: 1.6).repeatForever(autoreverses: false)) {
reveal = true
}
}
}
}
Preview

How to tweak it?
Tweak duration for animation immediacy effect
withAnimation(.easeInOut(duration: 0.9) decrease duration for slower progression
or decrease it for calm rolling reveal withAnimation(.easeInOut(duration: 4.6)