ViewCondition – systamatic coding viewcontroller
  • July 15, 2025

✨ Super sweet syntactic sugar for SwiftUI.View initializers.

At a Glance


struct BorderTextView: View {
var color: Color?

@ViewBuilder
var body: some View {
Text(“Hello”)
.if(let: color) {
$0.border($1)
}
}
}

This is equivalent to:

struct BorderTextView: View {
var color: Color?

@ViewBuilder
var body: some View {
let text = Text(“Hello”)
if let color = color {
text.border(color) // border doesn’t allow optional
} else {
text
}
}
}

Operators


if let

let color: Color?
Text(“Hello”)
.if(let: color) {
$0.border($1)
}

if

let text = “”
Text(“Hello”)
.if(text == “Hello”) {
$0.bold()
}

ifNot

let text = “”
Text(“Hello”)
.ifNot(text == “Hello”) {
$0.bold()
}

then

 

let text = “”
Text(“Hello”)
.then {
if text == “Hello” {
$0.bold()
} else {
$0.italic()
}
}

⚠️ Becareful

If you don’t return view in else, the view may not come out.

Installation


Using Swift Pacage Manager:

import PackageDescription

let package = Package(
name: “MyAwesomeApp”,
dependencies: [
.package(url: “https://github.com/tokijh/ViewCondition.git”, from: “1.0.0”)
]
)

GitHub


View Github

#uiviewcontroller
YOU MIGHT ALSO LIKE...
SwiftSpeech

Recognize your user's voice elegantly without having to figure out authorization and audio engines. SwiftSpeech Examples Features Installation Getting Started ...

SwiftUIValueSlider

Example To run the example project, clone the repo, and run pod install from the Example directory first. Requirements iOS 14.0 Installation ...

Sliders

Sliders is a compilation of all my stylable drag based SwiftUI components. It provides a variety of unique controls as well ...

SlidingRuler

SlidingRuler is a Swift package containing a SwiftUI control that acts like an linear infinite slider or a finite, more precise ...

Skeletonui

SkeletonUI aims to bring an elegant, declarative syntax to skeleton loading animations. Get rid of loading screens or spinners and ...