seguecode alternatives and similar libraries
Based on the "Utility" category.
Alternatively, view seguecode alternatives based on common mentions on social networks and blogs.
-
SwifterSwift
A handy collection of more than 500 native Swift extensions to boost your productivity. -
SwiftGen
The Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs! -
SwiftGen-Storyboard
The Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs! -
R.swift
Strong typed, autocompleted resources like images, fonts and segues in Swift projects -
Dollar
A functional tool-belt for Swift Language similar to Lo-Dash or Underscore.js in Javascript -
swift-protobuf
Plugin and runtime library for using protobuf with Swift -
EZSwiftExtensions
:smirk: How Swift standard types and classes were supposed to work. -
DifferenceKit
💻 A fast and flexible O(n) difference algorithm framework for Swift collection. -
Result
Swift type modelling the success/failure of arbitrary operations. -
DeepDiff
🦀Amazingly incredible extraordinary lightning fast diffing in Swift -
Device
Light weight tool for detecting the current device and screen size written in swift. -
SwiftLinkPreview
It makes a preview from an URL, grabbing all the information such as title, relevant texts and images. -
WhatsNew
Showcase new features after an app update similar to Pages, Numbers and Keynote. -
Codextended
Extensions giving Swift's Codable API type inference super powers 🦸♂️🦹♀️ -
Popsicle
Delightful, extensible Swift value interpolation framework. -
SwiftyJSONAccelerator
macOS app to generate Swift 5 code for models from JSON (with Codeable) -
Playbook
📘A library for isolated developing UI components and automatically taking snapshots of them. -
ReadabilityKit
Preview extractor for news, articles and full-texts in Swift -
ObjectiveKit
Swift-friendly API for a set of powerful Objective C runtime functions. -
Compass
:earth_africa: Compass helps you setup a central navigation system for your application -
Bow
🏹 Bow is a cross-platform library for Typed Functional Programming in Swift -
Pythonic.swift
Pythonic tool-belt for Swift – a Swift implementation of selected parts of Python standard library. -
Prototope
Swift library of lightweight interfaces for prototyping, bridged to JS.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of seguecode or a related project?
README
seguecode
seguecode is a support tool to use alongside UIStoryboard
development. It provides compile-time safeties around building with UIStoryboard
s in an effort to create an error free workflow so you can focus on the important things.
This include exposing:
- Storyboard Scene Identifiers
- Segue Identifiers
- Table View Cell Prototype Identifiers
- Collection View Cell Prototype Identifiers
Xcode Plugin
Installation
Alcatraz
AT THE MOMENT ALCATRAZ INSTALLATION IS BROKEN DUE TO ALCATRAZ'S METHOD OF BUILDING AND INSTALLING. UNTIL A COMPATIBLE WRAPPER PROJECT CAN BE REWRITTEN PLEASE USE THE MANUAL INSTALLATION STEPS BELOW.
The easiest way to get and use seguecode is through the wonderful Xcode plugin manager Alcatraz. The seguecode plugin, when enabled for a storyboard, will detect when you save your storyboard and automatically regenerate your seguecode source code.
Manually
- Clone the repo
- Run
git submodule init ; git submodule update
- Run
pod install
- Open
seguecode.xcworkspace
and build theseguecodePlugin
scheme - Close and reopen Xcode
Usage
To enable the seguecode plugin for a storyboard:
- Open the storyboard in Xcode
- Pull down Xcode's Edit menu and select the seguecode option
This will generate a file alongside your storyboard called <Storyboard Name>.seguecode.json which contains configuration information you can change to define how the automatic regeneration works.
The seguecode plugin looks for this json file to see if it should be enabled for a particular storyboard file, deleting it, or unchecking the seguecode option in the Edit menu, will disable the automatic regeneration.
Command Line
You can download the latest release
or
You can make your own build:
- Clone the repo
- Install the appropriate cocoapods with
pod install
- Build the binary
- Place it in your favorite location for easy access.
It is recommended that you include a run of seguecode in your project as a Run Script Build Phase or as an External Build Target.
Exporting
For an accurate list of parameters run seguecode --help
or seguecode -h
The most common usage is
seguecode -o OutputFolder/ ExportMe.storyboard
The resulting header and source files will be exported with the same name as your storyboard file. To use them they should be included in your project and your target.
Note: at minimum seguecode expects an output location and at least one storyboard file
Exporting Customization
To further customize your export use the following parameters:
-c
or--combine
- Export the View Controllers combined in one file-p
or--projectName NAME
- Name to use as project in source file header comment-l
or--verbose
- Output verbose logging-v
or--version
- Display seguecode's version-h
or--help
- Display help
Preparing your Storyboard
To ensure a proper export please make sure:
- the segue you wish to use has an Identifier
For extra clarity and reduced conflicts please make sure:
- the source and destination view controllers have *Storyboard ID*s
Results
Storyboard Identifier
TODO
Segue Identifier
Your exported header and source files will contain categories with selectors that describe your segue as well as optionally constants that can be used in your view controller ala self.performSegueWithIdentifier(..., sender: ...)
call.
The resulting selectors and constants will depend on the segue Identifier and *Storyboard ID*s you used in your UIStoryboard
.
For example, if you give your segue the Identifier MyHead
, the source view controller's Storyboard ID Down
and the destination view controller's MyToes
the results will be:
Easy method calls:
extension MyViewController {
@IBAction func performDownFromMyHead(sender : AnyObject? = nil)
}
Easy constants:
extension MyViewController {
struct Segues {
static let DownFromMyHead
}
}
To use the constant directly from your view controller call:
self.performSegue(MyViewController.Segues.DownFromMyHead, sender: sender)
Table View Cell Prototype Identifiers
TODO
Collection View Cell Prototype Identifiers
TODO
Contributing
seguecode is a new project that will hopefully continue to grow in usefulness. If you have any ideas or suggestions on how it can better serve you please create an issue labeled feature (check to see if the issue exists first please!). Or suggest a pull request!
Thanks
Props to mogenerator for pointing out ddcli. And being a CoreData savior. And the kick in the butt to start seguecode.