https://github.com/erickjung/SwiftGUI
SwiftGUI is an API inspired by SwiftUI DSL, using Dear ImGui as renderer and running on macOS 10.13+ and iOS 11+
https://github.com/erickjung/SwiftGUI
declarative-ui gui imgui swift swiftui
Last synced: 3 months ago
JSON representation
SwiftGUI is an API inspired by SwiftUI DSL, using Dear ImGui as renderer and running on macOS 10.13+ and iOS 11+
- Host: GitHub
- URL: https://github.com/erickjung/SwiftGUI
- Owner: erickjung
- License: mit
- Created: 2019-11-03T12:24:46.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-07-02T20:34:51.000Z (over 5 years ago)
- Last Synced: 2024-11-18T16:58:01.392Z (11 months ago)
- Topics: declarative-ui, gui, imgui, swift, swiftui
- Language: Swift
- Homepage:
- Size: 18.7 MB
- Stars: 131
- Watchers: 5
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README

[](LICENSE)
[](https://swift.org/download)
[](https://github.com/Carthage/Carthage)
SwiftGUI is an experimental API inspired by SwiftUI DSL, using Dear ImGui as renderer and running on OSX and iOS.
```swift
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`:
```ogdl
github "erickjung/SwiftGUI" "0.9.3"
```
For `OSX` project, run:
```ogdl
carthage update --platform macOS
```
For `iOS` project, run:
```ogdl
carthage update --platform iOS
```
### Cocoapods
To integrate `SwiftGui` into your Xcode project using Cocoapods, specify it in your `Podfile`:
```ogdl
pod 'SwiftGui', '~> 0.9.3'
```
run:
```ogdl
pod install
```
## Using SwiftGUI
## Samples
macOS Sample 01
macOS Sample 02
iOS Sample 01
## Contributing
Read the [Contributing guidelines](CONTRIBUTING.md)
## License
[MIT](LICENSE)
## Using
* [Dear ImGui](https://github.com/ocornut/imgui) (1.77)
* [ImGuiColorTextEdit](https://github.com/BalazsJako/ImGuiColorTextEdit)
