# Meet SnappTheming

DevFeed: [Meet SnappTheming](<https://devfeed.tech/articles/meet-snapptheming-24551.md>)

Original publisher: [Read original article](<https://medium.com/snapp-mobile/meet-snapptheming-abd04baa7bee?source=rss----bcd96e620b02---4>)

Author: Volodymyr Voiko

Published: 2025-02-27T10:28:25Z

Content type: tutorial

Language: en

Sources: [Snapp Mobile - Medium](<https://devfeed.tech/sources/snapp-mobile-medium.md>)

Topics: [Swift](<https://devfeed.tech/topics/swift.md>), [Library](<https://devfeed.tech/topics/library.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [JSON](<https://devfeed.tech/topics/json.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [design](<https://devfeed.tech/tags/design.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [installation](<https://devfeed.tech/tags/installation.md>), [ios](<https://devfeed.tech/tags/ios.md>), [json](<https://devfeed.tech/tags/json.md>), [library](<https://devfeed.tech/tags/library.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [swift](<https://devfeed.tech/tags/swift.md>), [swift-package](<https://devfeed.tech/tags/swift-package.md>), [ui-components](<https://devfeed.tech/tags/ui-components.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

## AI overview

This tutorial introduces SnappTheming, an open-source Swift framework for dynamically applying app themes from JSON declarations. It explains how to add the package to an Xcode project and use theme elements such as colors, fonts, gradients, images, animations, metrics, and shapes in UI components.

## Source excerpt

Today, most applications interact with cloud-based content. In addition to content, app configurations such as feature flags, translations, and even UI elements (Server Driven UI) are often managed from the server. But what about theming? How can we hotswap or update app themes without requiring app updates? I have the answer! Recently, we at snappmobile.io announced our open-source library, SnappTheming. This Swift framework simplifies the integration of dynamic design themes into your applications. By utilizing JSON declarations, SnappTheming facilitates the extraction and application of various theming elements, including colors, fonts, gradients, and shape styles, directly into the application's user interface. In this article, we will explore how to get started with the SnappTheming library, including installation steps and basic usage. Getting Started In this section, we will create a sample app that utilizes the SnappTheming dependency. We will define a theme and use its declaration to retrieve styling elements and apply them to various UI components. This will demonstrate how easy it is to implement dynamic theming in your application. To get started, first create a new project in Xcode. Creating the Project Before we begin, ensure that you have Xcode installed (make sure it's a version compatible with Swift). Follow these steps to create a new Xcode project: Open Xcode and select "Create a new Xcode project." Choose the appropriate template for your app, such as "Single View App." Fill in the necessary details like project name and organization identifier, then click "Next" to create the project. Adding the Framework Dependency Next, we need to add the SnappTheming package dependency to our project. Follow these steps: Open your project's settings and navigate to the "Swift Packages" tab. Click the "+" button to add a new package. Enter the URL for the SnappTheming repository and select the version you want to use. Click "Add Package" to include it in your