ShowPlan is an “IDE” for creative people. The app is a creative palette for the working artist. They bring the meaning to their creations.
I created an app called ShowPlan that allow users to create and collaborate. Searching for a technology solution that bridges the gap from design to planning to performance allowing collaboration along the way.
Why did I initiate the iOS-Trello project? Refer to the The Decision Book! Here are the basic steps that led me to this decision.
Here is what is possible today with the API wrapper. A designer can export text-based projects information to others that have access to the Trello board. Or one to many!
In the future, the app and API wrapper will evolve to support multimedia sharing and any to any collaboration with a host of web services.
The Design of iOS-Trello
iOS- Trello Design of iOS-Trello A general purpose, open-source, iOS/Objective-C API Wrapper for the Trello Public API Vince Manselhttp://slideshare.net/VinceMansel/iostrellotalk2
Driver #1: ShowPlan 4 (iOS Client) Production Design, Planning and Reference For Creative People #1 Feature: ARRANGING & SEQUENCING@vincemansel Designing iOS-Trello
Driver #2: Trello 5 (web client) Collaboration and Task Management Web Service (clients available on web, iPhone, Android, etc) #1 Feature: CLOUD COLLABORATION@vincemansel Designing iOS-Trello
6 Big Picture(s) What is the problem that we are solving? a. Social: Bridge idea/design with real-time performance b. Technical: Allow users to share ideas with a mobile client to other clients connected via web services How can we create a system/tool to transform creative ideas into sharable plans between collaborators?@vincemansel Designing iOS-Trello
7 Decision Funnel Specific: Create a collaborative presence for the App Use a “reflective” web service with an API General: Allow developers to write collaborative apps Open-source Create an API Wrapper Simple, Object-Oriented, Modular Fast & Lightweight Easy to implement & maintain@vincemansel Designing iOS-Trello
8 Baseline Solution API Wrapper iOS-Trello API ShowPlan: iOS-Trello: Trello: A Production An open-source A collaboration Design app API Wrapper and task management implementation web service A customized iOS Trello Client https://github.com/vincemansel/ios-trello@vincemansel Designing iOS-Trello
9 Object Mapping ShowPlan -> Trello ShowFlow -> Board Scene -> List Element -> Card First Iteration Export only Text Only@vincemansel Designing iOS-Trello
16 Future for ios-trello Iterate Develop and test additional API calls in phases Architect and develop real-time, bi-directional functionality Expand documentation and use cases@vincemansel Designing iOS-Trello
17 Trello Public APIhttps://trello.com/docs/api/index.html@vincemansel Designing iOS-Trello
19 Use Case: Create a Trello Board a. User touches “Create Board” button on View b. Controller instantiates a popover with text entry UI c. User enters some text and touches OK d. Popover sends text as a message to its delegate (Controller) e. Delegate transforms text to a board name, and sends the name parameter to the POST /1/boards Wrapper f. JSON is asynchronously returned to caller and parsed for name and ID of the created board g. Caller stores board ID in Model and writes “boardName” to a tableView cell.@vincemansel Designing iOS-Trello
23 Design Approach Choose specific APIs calls and parameters required for current revision of App Construct API calls in desktop browser Reverse Engineer & Inspect API behavior (JSON) and network interaction (HTTP) Code direct API calls in Objective-C Abstract API methods into Wrapper classes Test and iterate@vincemansel Designing iOS-Trello
26 Resources Contribute to the ios-trello project https://github.com/vincemansel/ios-trello Follow the Trello API development https://trello.com/api@vincemansel Designing iOS-Trello
27 REST Client-Server ShowPlan < > trello.com Stateless CoreData store in ShowPlan Cacheable (Client-side) JSON sent back in response to request Layered System Server-side implementation Code on demand (optional) NA Uniform Interface API, JSON, URIs (board, list, card, member)@vincemansel Designing iOS-Trello
28 REST Resources RESTKit (iOS) https://github.com/RestKit/RestKit RESTful API Server – Doing it the right way http://blog.mugunthkumar.com/ REST API Design Rulebook (Mark Messe)@vincemansel Designing iOS-Trello
The Target Ideas Implementation Plans Performance Design Phase Development Writers Actors Directors Performers Planners Developers Designers Implementers Architects
30 “The” Answer, extended API Wrapper iOS-Trello API ShowPlan: iOS-Trello: Trello: A customized iOS An open-source A collaboration Trello Client API Wrapper and task management implementation web service API Wrapper ios4trello: The demo project for API Wrapper dev and test@vincemansel Designing iOS-Trello
31 ios4trello (demo test app) API Wrapper Sandbox: Exercise, test and explore Manual test tool Open-source Extensible http://showplan.net/ios4TrelloAtGithub http://bit.ly/ios4trello https://github.com/vincemansel/ios-trello@vincemansel Designing iOS-Trello
The Trello Tech Stack 32 Source: http://blog.fogcreek.com/the-trello-tech-stack/@vincemansel Designing iOS-Trello