Swiftpack.co - aromanov91/oversizeUI as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
aromanov91/oversizeUI
Yet another component library on SwiftUI
.package(url: "https://github.com/aromanov91/oversizeUI.git", from: "1.1")

OversizeUI

Build Status GitHub

Yet another component library on SwiftUI

Controls

Some of the controls available include:

  • Avatar
  • Background
  • BlurView
  • Button
  • ColorSelector
  • GridSelect
  • HUD
  • Icon
  • Loader
  • Row
  • SectionView
  • SegmentedControl
  • Select
  • Surface
  • TextField and more in: OversizeUI.

Core

Colors, Typography, Spacing and other styles in core folder

Getting Started

Install and use OversizeUI

Requirements

  • iOS 14+ or macOS 11.0+
  • Xcode 12.5+
  • Swift 5.4+

Swift Package Manager

  • File > Swift Packages > Add Package Dependency
  • Add https://github.com/aromanov91/oversizeUI.git
  • Select "Up to Next Major" with "1.0.0"

Import and use FluentUI

After the framework has been added you can import the module to use it:

import OversizeUI

Example app

To build and deploy the demo follow these steps:

  • Open Example/Example.xcodeproj in Xcode.
  • In the Xcode scheme menu choose Example (iOS) or other and choose a device to deploy to.
  • Once deployed you can choose a control to demo from the list of controls on the selected device.

Examples components

Avatars

AvatarView(firstName: "Jhon", size: .small)

Buttons

Button("Button") { print(#function) }
    .style(.primary)
Button("Button") { print(#function) }
    .style(.secondary, size: .m, rounded: .full, width: .full, shadow: true)

Color selector

ColorSelector(selection: $color)
ColorSelector(selection: $color)
    .colorSelectorStyle(GridColorSelectorStyle())

GridSelect

var items = ["One", "Two", "Three", "Four"]
@State var selection = ""
GridSelect(items, selection: $selection,
           content: { item, _ in
               VStack {
                   Icon(.circle)
                   Text(item)
               }.padding()
           })

Icon

Icon(.activity)

Row

Row("Title")

Row("Title", subtitle: "Subtitle", leadingType: .icon(.calendar), trallingType: .radio(isOn: $control), paddingVertical: .small)

SegmentedPickerSelector

SegmentedPickerSelector(items, selection: $selection) { item, _ in
    Text(item)
}

Select

Select("Select", items, selection: $selection) { item, _ in
    Text(item)
} selectionView: { selected in
    Text(selected)
}

Surface

Surface(background: .secondary) {
    Text("Text")
}

TextField

TextField("Text", text: $placeholder))
    .textFieldStyle(DefaultPlaceholderTextFieldStyle())
}

Swift Lint

This project uses SwiftLint to automatically lint our Swift code for common errors. Please install it when developing in this repo by following the SwiftLint Installation Instructions.

License

OversizeUI is released under the MIT license. See LICENSE for details.

GitHub

link
Stars: 0
Last commit: 2 weeks ago

Ad: Job Offers

iOS Software Engineer @ Perry Street Software
Perry Street Software is Jack’d and SCRUFF. We are two of the world’s largest gay, bi, trans and queer social dating apps on iOS and Android. Our brands reach more than 20 million members worldwide so members can connect, meet and express themselves on a platform that prioritizes privacy and security. We invest heavily into SwiftUI and using Swift Packages to modularize the codebase.

Submit a free job ad (while I'm testing this). The analytics numbers for this website are here.

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics