Skip to content

Releases: erickjung/SwiftGUI

2.0

Choose a tag to compare

@erickjung erickjung released this 10 Feb 21:54

🚀 SwiftGUI 2.0 - Complete Rewrite

SwiftGUI 2.0 is here! This is a complete rewrite bringing modern Swift features, true SwiftUI-like syntax, and a robust foundation for building immediate
mode UIs.

✨ What's New

Modern Swift Architecture

  • Struct-based views with value semantics - goodbye reference type complexity!
  • State and Binding for reactive state management
  • resultBuilder for type-safe DSL (replacing deprecated @_functionBuilder)
  • Protocol-based modifiers with copy-on-modify pattern
  • Swift 5.9+ with improved type inference and performance

Developer Experience

  • Swift Package Manager support - modern dependency management
  • Comprehensive documentation - 3,000+ lines covering every API
    • Step-by-step tutorials
    • Complete API reference
    • Architecture guides
    • Best practices
  • 238 automated tests using Swift Testing framework
  • Example projects demonstrating real-world usage

Rich Component Library

40+ production-ready components including:

  • Layout & Containers: Window, SubWindow, Group, HStack, Column, TabBar, Tree, Popup
  • Controls: Button, CheckBox, Slider, TextField, ComboBox, ColorEdit, MenuBar
  • Display: Text, Image, Plot, Tooltip, Divider
  • Utilities: ForEach, Spacing, SameLine, Empty

🎯 Why Upgrade?

SwiftGUI 2.0 brings the elegance of SwiftUI to Dear ImGui with:

  • Cleaner syntax - Write less boilerplate, focus on your UI
  • Type safety - Catch errors at compile time with Swift's type system
  • Better performance - Optimized rendering pipeline and memory usage
  • Easier state management - State and Binding just work™

0.9.3

Choose a tag to compare

@erickjung erickjung released this 29 Jun 19:05
version 0.9.3

0.9.2

Choose a tag to compare

@erickjung erickjung released this 29 Jun 18:57

Adding missing resource to cocoapods

0.9.1

Choose a tag to compare

@erickjung erickjung released this 31 May 11:40
adding textlabel

0.9.0

Choose a tag to compare

@erickjung erickjung released this 29 May 23:30
  • changing component's architecture to improve performance

0.8.4

Choose a tag to compare

@erickjung erickjung released this 10 May 09:29
reorganizing project

0.8.0

Choose a tag to compare

@erickjung erickjung released this 09 May 18:28
  • merging core with main project
  • removing cimgui
  • updating to imgui 1.77

0.7.1

Choose a tag to compare

@erickjung erickjung released this 07 May 18:31
f499b1d
Merge pull request #10 from erickjung/dev

fix project

0.6.1

Choose a tag to compare

@erickjung erickjung released this 12 Feb 23:18
490a6e3
  • Minor adjusts on texteditor and listbuffer

0.6.0

Choose a tag to compare

@erickjung erickjung released this 12 Feb 12:47
7994350
  • Added ListBuffer (if you want to use huge list items)
  • Improved ForEach