Ipad app: Port of Sankey Diagrams in JS to cocoa touch

This project received 7 bids from talented freelancers with an average bid price of $857 USD.

Get free quotes for a project like this
Project Budget
$250 - $750 USD
Total Bids
Project Description

Create a simple ipad application which which can display and edit Sankey Diagrams. ([url removed, login to view])

[User requirements::viewing diagrams]

* The resulting application will display Sankey Diagrams closely resembling a port of this javascript example to objective c. [url removed, login to view] with nodes being aligned according to n columns of variable width.

* Pinch zoom and pan.

* Touching a node should highlight the node and trigger an handler passing the id of the node - i.e. to display associated information.

* Touching a connection should highlight the connection trigger a handler passing the id of the connection

[User requirements::Editing diagrams]

* Nodes may be moved, created, deleted, edited.

* Connections between nodes may be moved, created, deleted, edited.

* Touch drag gestures will be used to create connections. For example:

(1) In edit mode, dragging a handle on an existing node to another existing node establishes a new connection between these.

(2) Dragging a handle on an existing node to an empty space creates a new node and establishes a connection to the existing node.

(3) Clicking on a node or connection allows editing or deletion.

[User requirements::Saving and loading diagrams]

* The diagram state should be persisted with Core data and recovered on reload.

* It should be possible to save and load diagrams to files. Eg XML representation of core data.

[Functional requirements]

* The resulting application should pass all app store requirements. In particular performance and memory.

* While the primary target is iPad it should be designed to be easy to port to Mac Desktop app (Cocoa) with minimal changes.

[Coding standards]

* Should be written in objective-c and may incorporate C++.

* Code should not incorporate external open source or commercial libraries which impose requirements to release code or pay fees.

* Full source code should be provided and conform to good style guidelines. Variable and function names should be in english and meaningful and code well commented. For example [url removed, login to view]

Skills Required

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online