{
  "$type": "site.standard.document",
  "description": "About --- Being able to live reload UI changes during development is a boom for productivity. We have seen it in other environments such as Smalltalk,",
  "path": "/zhi/",
  "publishedAt": "2017-12-17T14:07:00.000Z",
  "site": "at://did:plc:bryys25pc2fnagnyxqgsglhd/site.standard.publication/3mn26bjkkmh23",
  "tags": [
    "iOS Development",
    "Projects"
  ],
  "textContent": "ABOUT\n\nBeing able to live reload UI changes during development is a boom for productivity. We have seen it in other environments such as Smalltalk, Self. We also have it on iOS in the form of Injection Plugin for Xcode and React Native.\n\nZhi is another attempt at this.\n\nIt lets you tweak Auto Layout constraints and watch your app update immediately without a rebuild + run cycle.\n\nUSAGE\n\nThis library allows you to specify your auto layout constraints in separate .styles files. It supports:\n\n * Live reloading of Auto Layout constraints as you save the .styles files, without a rebuild + run cycle\n * Apple's Visual Format Language: H:[p(==v2)]|\n * Support an equations-based syntax: v1.width = v2.width + 10\n\nIn addition, the .styles files also support:\n\n * Metrics can be specified\n * Colors — rgb(), rgba() or named colors in UIColor, e.g. red\n * Image filenames\n * Button title and label text\n * Font name, size\n * Dynamic type style names, e.g. callout or caption1\n * and more\n\nThis means that you can tweak these properties without rebuilding your app during development.\n\nThere is an example app included in the repository.\n\nSTYLES FILES SYNTAX\n\n----------------------------------------\n\nYou write a style file for each view controller that you want to use Zhi with.\n\nStyles files are line-based. Empty lines are ignored\n\nComments start with a single #\n\n# This is a comment\n\nMetrics start with ##\n\n##m1=80\n\nVisual Format Language:\n\nH:|[v1][v2]-m1-|\n\nEquation-based syntax:\n\nv1.width = v2.width*2\n\nProperties:\n\nv1.backgroundColor = rgb(90, 200, 250)\n\ni.backgroundColor = gray\ni.contentMode = scaleAspectFill\ni.clipsToBounds = true\ni.image = color.jpeg\n\nb.title = Tap Me\nb.textStyle = largeTitle\n\nl.fontName = Thonburi\nl.fontSize = 30\nl.numberOfLines = 0\n\nWARNING: Setting of properties like colors are best used in style files only during development. Ship style files that only contains instructions for Auto Layout.\n\nINSTALLATION\n\nRefer to the README for installation and usage instructions.\n\nLICENSE\n\nBSD 2-clause\n\nQUESTIONS\n\n * GitHub: Zhi on GitHub\n * Email: hboon@motionobj.com\n * Web: https://hboon.com/\n * Twitter: https://twitter.com/hboon",
  "title": "Zhi — Swift Library for Live Reloading Auto Layout Constraints on iOS"
}