whatisgithub

What is shimmer?

facebookarchive/shimmer — explained in plain English

Analysis updated 2026-06-24

9,332Objective-CAudience · developerComplexity · 2/5LicenseSetup · easy

In one sentence

Shimmer is a small, archived iOS library from Facebook that adds a moving light-sweep loading animation, like the skeleton screens in social media apps, to any UI element with a single property toggle.

Mindmap

mindmap
  root((Shimmer))
    What It Does
      Loading animation
      Light sweep effect
    Integration
      CocoaPods
      Manual source copy
    API
      FBShimmeringView
      FBShimmeringLayer
    Platform
      iOS 6 plus
      CoreAnimation
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add a shimmering placeholder animation to text labels and images while an iOS app fetches data from a server

USE CASE 2

Create skeleton loading screens in iOS apps to improve perceived responsiveness

USE CASE 3

Drop in a polished loading effect without writing CoreAnimation mask code from scratch

What is it built with?

Objective-CiOSCoreAnimationCocoaPods

How does it compare?

facebookarchive/shimmersequelpro/sequelprosparkle-project/sparkle
Stars9,3329,1918,983
LanguageObjective-CObjective-CObjective-C
Setup difficultyeasyeasymoderate
Complexity2/52/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

This repository is archived and no longer maintained, consider alternatives for new projects.

Use freely for any purpose including commercial use, as long as you keep the copyright notice (BSD license).

So what is it?

Shimmer is a small iOS library, originally built by Facebook for their Paper app, that adds a shimmering light-sweep animation to any element on screen. The effect is the kind you have likely seen in social media apps when content is loading: a soft glimmer moves across a placeholder or label to signal that something is on its way. It is not a flashy animation but a quiet, unobtrusive way to let users know the app is working. Using Shimmer is straightforward. You wrap your existing UI element, like a text label or image view, inside a special container called FBShimmeringView, then flip one property to start the animation. A matching FBShimmeringLayer is also available for lower-level use. The library ships with an interactive example project where you can swipe in different directions to adjust shimmer settings and tap to toggle the effect on and off. Adding Shimmer to a project can be done through CocoaPods, which is a dependency manager for iOS and Mac projects, or by manually copying the source files directly into Xcode. The library requires iOS 6 or later. Under the hood, Shimmer works by applying a mask to an iOS layer, a technique built into Apple's animation framework. It uses CoreAnimation's timing features to make the shimmer start and stop smoothly rather than cutting in and out abruptly, keeping the visual effect consistent with the rhythm of the surrounding interface. This repository sits in Facebook's archive, meaning it is no longer actively maintained. An Android version of the library is available separately on GitHub. The code is released under the BSD license.

Copy-paste prompts

Prompt 1
Show me how to wrap a UILabel in FBShimmeringView and start the shimmer animation while my iOS app loads remote data, then stop it when data arrives.
Prompt 2
I'm using Shimmer in my iOS app. How do I customize the shimmer speed, direction, and highlight opacity to match my design?
Prompt 3
Write Swift code that displays a shimmering placeholder for a user profile image and name label, then fades them out when the real data loads.

Frequently asked questions

What is shimmer?

Shimmer is a small, archived iOS library from Facebook that adds a moving light-sweep loading animation, like the skeleton screens in social media apps, to any UI element with a single property toggle.

What language is shimmer written in?

Mainly Objective-C. The stack also includes Objective-C, iOS, CoreAnimation.

What license does shimmer use?

Use freely for any purpose including commercial use, as long as you keep the copyright notice (BSD license).

How hard is shimmer to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is shimmer for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.