SwiftGUI is an experimental API inspired by SwiftUI DSL, using Dear ImGui as renderer and running on OSX and iOS.
Window("SwiftGUI") {
Text("Hello world!")
HStack {
ForEach(1...2) { val in
Button("Click \(val)")
}
ForEach(1...2) { val in
CheckBox("Check \(val)", selectedState: true)
}
ForEach(1...2) { val in
RadioButton("Radio \(val)", activeState: true)
}
}
}
Highlights
- Easy to use abstraction for Dear ImGui
- Multi-platform support (iOS 11+ and macOS 10.13+)
- Huge list of UI components already available
Theme support
- Color scheme (embedded Darcula and Light)
- Custom Fonts (embedded FiraCode)
Components
- Buttons
- CheckBox
- Color Selection
- ComboBox
- Drag
- Dock
- Image
- TextField
- Lists
- Menu
- Plotting
- Popup
- RadioButton
- SelectableFields
- Sliders
- TabBar
- Texts
- Text Editor (Code editor)
- Tooltips
- Tree
- Window
- General
- Group
- HStack
- Separator/NewLine/Spacing/Indent
- ForEach
- Perform
Installation
Carthage
To integrate SwiftGui
into your Xcode project using Carthage, specify it in your Cartfile
:
github "erickjung/SwiftGUI" "0.9.3"
For OSX
project, run:
carthage update --platform macOS
For iOS
project, run:
carthage update --platform iOS
Cocoapods
To integrate SwiftGui
into your Xcode project using Cocoapods, specify it in your Podfile
:
pod 'SwiftGui', '~> 0.9.3'
run:
pod install
Using SwiftGUI
Mockingbird |
---|
Samples
macOS Sample 01 | macOS Sample 02 | iOS Sample 01 |
---|
Contributing
Read the Contributing guidelines
License
Using
- Dear ImGui (1.77)
- ImGuiColorTextEdit