---
title: Symbols
framework: Symbols
role: collection
role_heading: Framework
platforms: [iOS 17.0+, Mac Catalyst 17.0+, macOS 14.0+, tvOS 17.0+, visionOS 1.0+, watchOS 10.0+]
path: symbols
---

# Symbols

Apply universal animations to symbol-based images.

## Overview

Overview The Symbols framework provides access to symbol effects you can use to animate SF Symbols in your AppKit, UIKit, and SwiftUI apps. These animations exhibit different behaviors: A symbol effect can exhibit multiple types of behavior. For instance, you can add a pulse effect with an option to occur a finite number of times — a discrete behavior. You can also add a pulse effect with an option to loop forever — an indefinite behavior. // Add an effect in SwiftUI. Image(systemName: "globe")     // Add effect with discrete behavior to image view.     .symbolEffect(.pulse, options: .repeat(3))

Image(systemName: "globe")     // Add effect with indefinite behavior to image view.     .symbolEffect(.pulse) You can apply universal animation effects to symbol-based images that you display in image views. The Symbols framework provides a consistent set of effects to use regardless of your UI framework or langauge choices. Consider a SwiftUI app that displays a variable color effect on a Wi-Fi symbol while the system searches for Wi-Fi networks. // Add an effect in SwiftUI. Image(systemName: "wifi")     .symbolEffect(.variableColor.reversing) Now consider an AppKit or UIKit version of the app. You can apply the same effect to animate the search for Wi-Fi networks.

## Topics

### Symbol effects

- [appear](symbols/symboleffect/appear.md)
- [bounce](symbols/symboleffect/bounce.md)
- [disappear](symbols/symboleffect/disappear.md)
- [pulse](symbols/symboleffect/pulse.md)
- [scale](symbols/symboleffect/scale.md)
- [variableColor](symbols/symboleffect/variablecolor.md)

### Symbol content transitions

- [replace](symbols/symboleffect/replace.md)
- [automatic](symbols/symboleffect/automatic.md)

### Symbol effect types

- [AppearSymbolEffect](symbols/appearsymboleffect.md)
- [AutomaticSymbolEffect](symbols/automaticsymboleffect.md)
- [BounceSymbolEffect](symbols/bouncesymboleffect.md)
- [DisappearSymbolEffect](symbols/disappearsymboleffect.md)
- [PulseSymbolEffect](symbols/pulsesymboleffect.md)
- [ReplaceSymbolEffect](symbols/replacesymboleffect.md)
- [ScaleSymbolEffect](symbols/scalesymboleffect.md)
- [VariableColorSymbolEffect](symbols/variablecolorsymboleffect.md)
- [BreatheSymbolEffect](symbols/breathesymboleffect.md)
- [RotateSymbolEffect](symbols/rotatesymboleffect.md)
- [WiggleSymbolEffect](symbols/wigglesymboleffect.md)

### Symbol effect options

- [SymbolEffectOptions](symbols/symboleffectoptions.md)

### Symbol effect protocols

- [SymbolEffect](symbols/symboleffect.md)
- [DiscreteSymbolEffect](symbols/discretesymboleffect.md)
- [IndefiniteSymbolEffect](symbols/indefinitesymboleffect.md)
- [ContentTransitionSymbolEffect](symbols/contenttransitionsymboleffect.md)
- [TransitionSymbolEffect](symbols/transitionsymboleffect.md)

### Structures

- [DrawOffSymbolEffect](symbols/drawoffsymboleffect.md)
- [DrawOnSymbolEffect](symbols/drawonsymboleffect.md)
