Doric: Design System Foundation

Design System foundation written in Swift. Protocol oriented, type safe, scalable framework for iOS.


  • [x] Typography
  • [x] Iconography
  • [x] Colour Palette
  • [x] Dynamic scalable font support
  • [x] Auto layout
  • [x] Gradients, Shadows, Borders and other scales
  • [x] Layout spacing
  • [x] Themes
  • [x] UI Debugging helpers
  • [x] API Document & Usage Documentation


Not in specific orders to achieve it.

  • [ ] Add debugging tools (Ruler etc.)
  • [ ] Expand framework to create more Styles
  • [ ] Colour processing utilities
  • [ ] Trait based layouts (UITraitCollection)
  • [ ] Accessibility for colour palettes
  • [ ] Sketch plugin to generate Styles

Usage Guide


  • iOS 11.0+
  • Xcode 10.0+
  • Swift 4.2+


  • Run demo project



CocoaPods is an application level dependency manager for the Objective-C, Swift and any other languages that run on the Objective-C runtime that provides a standard format for managing external libraries. For usage and installation instructions visit site

To integrate Doric using CocoaPods, specify it in your Podfile:

pod 'Doric', '~> 1.0.0'


Carthage builds your dependencies and provides you with binary frameworks, but you retain full control over your project structure and setup. Carthage does not automatically modify your project files or your build settings.

. To integrate Doric into your Xcode project using Carthage, specify it in your Cartfile:

github "jayeshk/Doric" ~> 1.0.0


If you can integrate project manually as below using git submodule

Embedded Framework

  • Open up Terminal, cd into your top-level project directory, and run the following command "if" your project is not initialised as a git repository:

    $ git init
  • Add Doric as a git submodule by running the following command:

    $ git submodule add
  • Open the new Doric folder and drag the Doric.xcodeproj into the Project Navigator.

    It should appear nested underneath your application's blue project icon. Whether it is above or below all the other Xcode groups does not matter.

  • Select the Doric.xcodeproj in the Project Navigator and verify the deployment target matches that of your application target.

  • Next, select your application project in the Project Navigator to navigate to the target configuration window and select the application target under the "Targets" heading in the sidebar.

  • In the tab bar at the top of that window, open the "General" panel.

  • Click on the + button under the "Embedded Binaries" section.

  • You will see Doric.framework nested inside a Products folder. Select the Doric.framework for iOS.

    You can verify which one you selected by inspecting the build log for your project. The build target for Doric will be listed as Doric.

    Doric.framework is automagically added as a target dependency, linked framework and embedded framework in a copy files build phase which is all you need to build on the simulator and a device.