YouKnits designer - an online designtool for endless knitting patterns

The YouKnits designer has been developed for unikatissima, whose website offers a compilation of craft tutorials and online pattern generators.

The YouKnits designer lets a user create an individual lace knitting design by choosing from over hundred images of knitted units (YouKnits) and arranging them by drag & drop. The finished knitting design can then be downloaded as a pdf file. The generated pdf contains a picture of the design, for large patterns a page reference chart and a list of the individual YouKnits that have been used in the design with hyperlinks to their patterns in the unikatissima online shop at ravelry.

Currently the YouKnits designer comes in two versions: YouKnits designer for the desktop browser and YouKnits designer app for Android

The YouKnits designer app for Android simulation (flash) shows a fully functional simulation of the YouKnits designer app for Android.


Technical specifications

Desktop version

requirements: an internet browser with Flash Plugin> 10.0 installed

minimal screen dimensions: 610 pixel (width) x 685 pixel (height)

application size: 150KB

app for Android

requirements: smartphone or tablet with Android 2.2 or higher, ARMv7 processor with Vector FPU Minimum 550Mhz OpenGL ES2.0 H.264 & AAC H/W Decoders, 256 MB RAM

minimal screen dimensions: 480 pixel (width) x 800 pixel (height)

application size:

  • YouKnits-Designer.apk: 180 KB
    the free AIR for Android runtime v.2.7 or higher is required; the user will be prompted to install or upgrade AIR if they do not have the required version
  • YouKnits-Designer-C.apk: 8850 KB
    This app includes the necessary AIR for Android runtime

Features

  • XML configuration file: makes changes in YouKnits data (prices, texts, images and hyperlinks) very easy;
  • fast image-transfer: uses one zip-file (Nochump zip library) as a container for all YouKnits images;
  • offline designing: the application can work offline once the configuration file and the image container have been loaded;
  • crossdomain hosting: content and application can be hosted on different domains,
    this enables content changes without involvement of the application hoster and application changes without access to the domain that hosts the content and configuration file;
  • pdf generation using Actionscript classes (AlivePDF): no server roundtripping needed;
  • active garbage collection: leads to lower memory consumption.

Technical details and further reading

Lightweight AS3 UI Components

To increase performance on mobile devices and and to limit application and memory footprint, MinimalComps by Keith Peters were used instead of Flex Components. In the YouKnits Android version these components were scaled to get the desired dimensions.

MinimalComps are open source with a liberal MIT licence. The source can be found at github: https://github.com/minimalcomps

Robotlegs MVCS Framework

The Robotlegs framework follows the classic meta-design pattern known as Model-View-Controller (MVC), with the addition of a fourth actor called Service. It uses automated, metadata based Dependency Injection. This greatly reduces the amount of code needed to wire together an application and simplifys changes in the UI (only the views differ in the YouKnits versions for desktop and Android).

Further reading:

Robotlegs best practices

AS3 Signals

AS3 Signals is a light-weight, strongly-typed AS3 replacement for a Flash Event written by Robert Penner.
Signals and Robotlegs play very well together when used with the SignalCommandMap extension in Robotlegs.

AS3 Signals is open source with a liberal MIT licence. The source can be found at github: https://github.com/robertpenner/as3-signals/