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
Employer working
Skills Required
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]

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