Skip to content

fortmarek/ReactantUI

 
 

Repository files navigation

ReactantUI

Reactant extension for UI declaration in XML

Reactant UI is an extension for Reactant for declaration of views and layout using XML. There is no runtime overhead, as all the XML declarations are precompiled into Swift. Reactant then uses the generated code to create your UI. Reactant Live UI is an optional part responsible for live rendering your XML file in the simulator on every save. Check the quick-start guide to learn more.

Important note

Reactant UI is currently a preview. However we’ll try to keep the number of API changes to a minimum.

Installation

In your Podfile:

pod 'Reactant'
pod 'ReactantUI'
pod 'ReactantLiveUI', :configuration => 'Debug'

Add new Run script phase to Build phases:

pushd "$PODS_ROOT/ReactantUI"
env -i HOME="$HOME" PATH="$PATH" swift build
popd

$PODS_ROOT/ReactantUI/.build/debug/reactant-ui generate --enable-live --inputPath=$SRCROOT/Application/Sources/ --outputFile=$SRCROOT/Application/Generated/GeneratedUI.swift --xcodeprojPath=$PROJECT_DIR/YOURWORKSPACE.xcodeproj

Projects using Swift 4.0

In order to compile valid code, add --swift 4.0 flag to the build script. Swift 4.1 works out of the box.

CI Status Version License Platform Apps Slack Status

Requirements

  • iOS 9.0+
  • Xcode 8.0+
  • Swift 3.0+

Communication

Feel free to reach us on Slack! https://swiftkit.brightify.org/

Get Started

Head to our quick-start guide to learn how Reactant works and what it can do to decrease your development costs!

Versioning

This library uses semantic versioning. We won't introduce any breaking changes without releasing a new major version. Our main goal is to keep the API as stable as possible. We build our applications on top of Reactant as well and we absolutely hate any breaking changes.

Authors

Used libraries

Runtime

Tests

About

Reactant extension for UI declaration in XML

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Swift 98.7%
  • Ruby 1.1%
  • Other 0.2%