Fluent UI Apple contains native UIKit and AppKit controls aligned with Microsoft's Fluent UI design system.
- iOS 13+ or macOS 10.14+
- Xcode 12.5+
- Swift 5.4+
To integrate FluentUI using Carthage, specify it in your Cartfile:
github "Microsoft/fluentui-apple" ~> X.X.X
then follow the Carthage integration steps to add the FluentUI.framework
into your Xcode project
To get set up with CocoaPods visit their getting started guide.
To integrate FluentUI into your Xcode project using CocoaPods, specify it in your Podfile:
pod 'MicrosoftFluentUI', '~> X.X.X'
- Download the latest changes from the FluentUI for Apple repository.
- Move the
fluentui-apple
folder into your project folder. - Move the relevant
FluentUI.xcodeproj
into your Xcode project depending on which platform you want to support. - In Xcode select your project -> your target -> General -> Embedded Binaries -> add
FluentUI.framework
.
As of this writing, the version of Swift Package Manager shipped with the latest Xcode does not support packages that require resource bundles. As Fluent UI Apple does require resource bundles, we do not currently support Swift Package Manager.
After the framework has been added you can import the module to use it:
For Swift
import FluentUI
For Objective-C
#import <FluentUI/FluentUI.h>
Post bug reports, feature requests, and questions in Issues.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
If you are using Apple Silicon M1 machine then you need to install ffi
in addition to CocoaPods. More details about the issue can be found here.
sudo arch -x86_64 gem install ffi
To execute any pod command on M1 machine you need to specify the architecture of the machine explicitly
arch -x86_64 pod lib lint
Fluent UI Apple requires all pull requests to come from forks of the repository. Please see Fork a Repo - GitHub Help for more details on how to set up a fork of Microsoft/fluentui-apple, keep it up-to-date, and submit pull requests back to this repository.
Fluent UI Apple doesn't have any external code dependencies, so developing in the repository is as easy as launching the appropriate Xcode project or workspace and building and running a test app.
For more platform-specific information, please see the iOS readme file and the the macOS readme file.
This project uses SwiftLint to automatically lint our Swift code for common errors. Please install it when developing in this repo by following the SwiftLint Installation Instructions.
We use GitHub Releases to manage our releases, including the changelog between every release. You'll find a complete list of additions, fixes, and changes on the Releases page.
All files on the FluentUI Apple GitHub repository are subject to the MIT license. Please read the LICENSE file at the root of the project.
Usage of the logos and icons referenced in FluentUI Apple is subject to the terms of the assets license agreement.