ShinpuruNodeUI

screenshot of ShinpuruNodeUI

Node Based UI Component Written in Swift

Overview

ShinpuruNodeUI is a versatile node-based UI component developed in Swift, intended to create flexible and reusable user interfaces for various applications. As the backbone of the author's image processing application, Nodality, this component has been restructured to facilitate the separation of display logic from image handling, making it adaptable for other uses such as database schemas, business workflows, and more. The project supports the innovative features introduced by Apple in iOS 9, and it comes with a demonstration calculator app to help newcomers get started.

This enhancement to the user interface design empowers developers to implement their business logic within a cohesive node-based framework. The advancements made in ShinpuruNodeUI not only improve its functionality but also allow for efficient interaction design tailored for touch devices, making it suitable for modern applications.

Features

  • Node Creation: Users can easily create new nodes by long-pressing the background, streamlining the process of building complex structures.
  • Relationship Management: Toggle relationships between nodes with an intuitive long press to enter "relationship creation mode," promoting efficient node connections.
  • User-Friendly Interface: A simple trash-can icon allows for quick removal of nodes, keeping the interface clean and uncluttered.
  • Flexible Canvas: The canvas supports zooming and panning, enhancing user navigation and control over the working area.
  • Reusable Component: Designed to serve various applications beyond image processing, encouraging innovative uses across different industries.
  • Demonstration App Included: Comes with a calculator app designed to illustrate the capabilities of the ShinpuruNodeUI, offering a practical introduction for developers.
  • Supporting Classes: Contains essential data types and protocols that simplify integration and enhance functionality within the user interface.