Project image
)}
$169
pledged of $20,000pledged of $20,000 goal
9
backers
Funding Unsuccessful
The project's funding goal was not reached on Wed, March 2 2016 3:25 PM UTC +00:00

Rainbow: A Swift/Xcode CLI toolset

We are building a command line tool for rapid application development and deployment for Swift and Xcode.

Rainbow: A Swift/Xcode CLI toolset

We are building a command line tool for rapid application development and deployment for Swift and Xcode.

$169
pledged of $20,000pledged of $20,000 goal
9
backers
Funding Unsuccessful
The project's funding goal was not reached on Wed, March 2 2016 3:25 PM UTC +00:00

About

Hi there! We are Adam Leonard (@adamjleonard) and Clay Mcilrath (@thinkclay) and we have been building Swift applications since the day the language was released. In that time, we have seen it become one of the most popular languages in the world and watched the Apple dev ecosystem shift almost entirely over to Swift. We have been supporting the community by creating many products, tutorials and libraries such as unicorn.tv and swifttoolbox.io. We have also organized the largest social community with “swifters” on slack. As thought leaders in this space, we have become all too familiar with common pain points: debugging vague errors, time lost reinventing common components, poor application architecture, and more. We are building this tool to solve many of these problems and we need your help!

Our goal is to build a CLI tool for Swift much like rails scaffolding and rake tasks have done for the ruby and web community. Scaffolding and command line tasks are a crucial part of Rapid Application Development (RAD). As a principle, RAD is instrumental for prototyping, iterating and testing quickly. Rails revolutionized web development not just because of the framework but also with these CLI tools, and we believe that should also be true for iOS. We are creating this application in Swift and hope that it will help developers of all skill levels create projects faster, debug errors more easily, and add functionality to existing projects.

Features

  • Application creation with standardized organization and setup
  • Establish intelligent defaults
  • Project linting, warnings and suggestions
  • Wizard for selecting common components
  • Configuration and inclusion of services

Application Creation
We want to standardize application organization, naming conventions, and architecture. By creating a single, "most popular" tool, we know that the Swift community will start to adopt a more normalized approach to tidying applications.

Project Linting
Should brackets go on a new line? Two spaces, or four? These are just a few annoying issues that developers have to deal with when sharing projects and code. We will be leveraging configuration files so that you can define your preferences and remind contributors and peers to follow your coding style. 

Warnings and Suggestions
It can be very difficult to figure out that something as simple as a misconfigured plist entry or missing font resource is crashing your application or preventing a successful build. We will parse project configs and settings to look for common mistakes and elaborate on error codes to provide more human-friendly responses and suggestions for why the application may be failing.

Wizards do magic
It's such an enjoyable experience when a command line tool walks you through a series of questions and builds your project behind the scene for you. We will provide a common list of components from onboarding controllers to web service back-ends so that you can simply toggle options along the lines of "I would like to use parse for my back-end, and support json as a file format." This portion of the tool will be crucial for true RAD.

Stretch Goals

We do not have any particular numbers for these goals, but nonetheless will work as many of them into the roadmap as possible once we have released the initial MVP:

  • Certificate and Provisioning profile management and setup
  • Web API toolkit (for REST services and the like)
  • An equivalent to the "better_errors" gem in Ruby
  • Single Sign On and other authentication components

Risks and challenges

We are aiming to build this tool entirely in Swift and need to perform some tasks through system file I/O as well as Xcode's API. There is a great deal of potential scope creep, so we have tried to pick a core set of features that we feel is fairly easy to create and release within a month or two of starting. We will have stretch goals for achieving anything above and beyond the core features.

Learn about accountability on Kickstarter
Questions about this project? Check out the FAQ

Support

  1. Select this reward

    Pledge $10 or more About $10

    Every little bit helps! Receive a thank you tweet from @UnicornHQ on twitter.

    Less
    Estimated delivery
    4 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  2. Select this reward

    Pledge $25 or more About $25

    Your name will be in the BACKERS.md for everyone to see! You will also receive a tweet in thanks for your support.

    Less
    Estimated delivery
    1 backer
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  3. Select this reward

    Pledge $50 or more About $50

    You understand just how useful this tool will be! We will send you some light swag (like stickers) plus the above rewards, in thanks for your contribution!

    Less
    Estimated delivery
    Ships to Anywhere in the world
    2 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  4. Select this reward

    Pledge $100 or more About $100

    You are a true sponsor! You will receive an iron-on patch recognizing you as a contributor, as well as the above rewards!

    Less
    Estimated delivery
    Ships to Anywhere in the world
    0 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  5. Select this reward

    Pledge $250 or more About $250

    You want this tool ASAP, and know that dev time costs money. We thank you, kindly, for your support and will give you the above reward tiers in return.

    Less
    Estimated delivery
    Ships to Anywhere in the world
    0 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  6. Select this reward

    Pledge $500 or more About $500

    Sponsors are the best! We'll reward you with a proper advertisement, job posting or shoutout to our community of over 5k swift developers for your support.

    Less
    Estimated delivery
    Limited 0 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  7. Select this reward

    Pledge $1,000 or more About $1,000

    You are helping fund a significant portion of development time. In addition to the $500 reward tier, you will also receive credit front and center on our website and github repo for your support!

    Less
    Estimated delivery
    Limited 0 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.
  8. Select this reward

    Pledge $5,000 or more About $5,000

    You know just how much ROI this tool will have for development production! At this tier you will have access to the source and a license to modify and use with unlimited seats within your company.

    Less
    Estimated delivery
    0 backers
    $

    By pledging you agree to Kickstarter's Terms of Use, Privacy Policy, and Cookie Policy.

    Kickstarter is not a store.

    It's a way to bring creative projects to life.

    Learn more about accountability.

Funding period

- (30 days)