0.5.0-beta · Open-source public beta

Development framework for iOS and macOS that's built different

FreakUI is a dependency-free, multiplatform development framework for iOS and macOS applications. Powered by SwiftUI and fully compatible with Swift 6, it brings together a modern & efficient collection of components, extensions, and utilities.

https://github.com/valzubkov/FreakUI.git
0.5.0-beta
Installation guide
Swift 6.2+ · iOS 17+ · macOS 14+

Coverage

Theme, typography, spacing, controls, data, and platform behavior share one coherent system—so the interface feels intentional from the first screen to the last.

Light and Dark Mode

Define semantic colors and surfaces once. FreakUI carries them across Light and Dark Mode, keeping every component in the same visual language.

Typography

Give text and numbers their own font families, then keep the hierarchy consistent across components—with native fallbacks when they are needed.

Sizing and spacing scales

Shared spacing, sizing, icon, and radius tokens give every screen the same rhythm—without a trail of almost-matching values.

Layout and content

Structure screens with sections, containers, lists, disclosure groups, titles, badges, tags, and other shared content patterns.

Controls and inputs

Buttons, menus, inputs, selectors, toggles, counters, and sliders share sizing, states, haptics, and accessible interaction patterns.

Data presentation and charts

Compose rows, tables, progress, proportions, and charts from components designed to make dense information clear and comparable.

Feedback and states

Callouts, empty states, alerts, and toasts cover persistent status, missing data, interruption, and non-blocking feedback.

Navigation

Define parent, child, and sheet layouts with navigation bars and toolbar actions that adapt to each platform.

iOS and macOS

Share one SwiftUI foundation across iOS and macOS, while formatting, navigation, menus, focus, and feedback adapt where the platforms differ.

Details

FreakUI is open source, dependency-free, and focused on the interface. Here is exactly what that means for your application.