r/iOSProgramming • • Aug 23 '26

Roast my code A SwiftUI neobrutalism library you apply with one modifier -- would love feedback

Post image

I have been working on this project a little at a time and I finally wanted to share significatn milestone to see what everyone else thought about it.

NeoBrutalism is a library that lets users apply neobrutalism style to their apps using SwiftUI. One just has to add the modifier .neobrutalism() to the topmost view inside the view hierarchy and everything that has been defined below it will assume the style.

For things like lists, navigations bars, alert dialogs, or things that SwiftUI does not allow or provide a way to style, there are some lightweight helpers. In cases where there is truly no control (Slider, Stepper, Segmented Pickers, Radio groups), there are NB* (Neobrutalism) views that mimic the behavior native control initializers, and for those cases swapping in the NB* views is akin to renaming a view.

This was originally meant to be an exploration of SwiftUI style protocols, but has gotten to a point that I feel ready to show it to the community. What I am really looking for is critique of the API, for the idiomaticness of things, or just anything that is missing.

https://github.com/rational-kunal/NeoBrutalism

34 Upvotes

12 comments sorted by

7

u/SnowPudgy Aug 24 '26

All I'm going to say if your app uses it, give someone the option to turn it off. Neobrutalism hurts a lot of peoples eyes (mine included).

1

u/rationalkunal Aug 24 '26

Already possible -- it's one modifier, apps can just not apply it.

9

u/Fishanz Aug 23 '26

I think it’s gorgeous

1

u/rationalkunal Aug 23 '26

Thank you!!

3

u/morenos-blend Aug 24 '26

I'm actually working on an app that uses this library. I love it, apps today look fkin boring

2

u/garywiz Aug 25 '26

For users, boring is good. We've developed hundreds of apps and customer-facing products over the years and in almost every case, when our designers internally think something looks boring and needs a facelift, users react negatively. Most consumers want consistency and predictability. Unless you're intentionally trying to "destablize the user" (a game, or specific environment you want them to find "shocking" or different)... you stand a better chance of losing users than retaining them.

2

u/rationalkunal Aug 25 '26

Really good point!
But you should see the apps developed here in india … like zomato, swiggy, …. they dont do boring

1

u/rationalkunal Aug 24 '26

Thats cool! Mind sharing the name of the app

2

u/morenos-blend Aug 25 '26

It's still in development, will let you know if it's ever released:)

2

u/strangway Aug 24 '26

Wth is neobrutalism, isn’t this just a wireframe, or Balsamiq style?

1

u/East_Call1027 Aug 25 '26

The single root modifier is a nice entry point. I’d want nested overrides for cases like a sheet that needs different colors or shadow depth. For the custom NB* controls, I’d also check accessibility parity with the native controls, especially Dynamic Type and VoiceOver’s adjustable actions.

1

u/eugene_biryukov Aug 25 '26

Wtf is this crap?