blob: 1e3d2499a54a3d249eca6293ba3668a382b73b38 [file] [log] [blame]
{
"name": "PinLayout",
"version": "0.9.0",
"summary": "Simple iOS Swift layouting without using NSLayoutConstraint.",
"description": "* Layout one view at a time. \n* Layout most views using a single line\n* Stateless\n * The layout system doesn’t add any stored properties to UIViews. It simply compute the UIView.frame property, one view at a time.\n * Since it is stateless, it can be used with any other layout framework without conflicts. \nEach view can use the layout system that better suit it (PinLayout, constraint, flexbox, grids, …)\nA view can be layouted using PinLayout and later with another method.\n * REWORK THAT!!! Stateless also means that if a view reference other views, the view should be re-layouted in layoutSubViews() layouted with PinLayout use other views as referenced view change (size/position) \n\n* No constraints\n * Constraints are very verbose and hard for a human brains to understand. Too much information.\n * PinLayout positions views as a designer would explain it (eg: “The TextField is below the Label, aligned left, and is its width match the other view’s width“). \n * No priorities, simply layout views in the order that make sense. No priority required.\n\n* Before applying the new sets of attributes, PinLayout always start with the view’s current frame. So it’s possible to set the view’s size during the initialization (ex: view.pin.width(100).height(200)), and later only position the view (ex: view.pin.top(10).left(20))\n\n* Minimize as much as possible calculations and constants when layouting views.\n\n* Methods matches as much as possible other layouting system, including CSS, flexbox, reactive Flexbox, …\n * margin, marginHorizontal, marginVertical, marginTop, marginLeft, marginBottom, marginRight\n * top, left, bottom, right, width, height \n * As in CSS and flexbox, right and bottom coordinates are offset from container’s view right and bottom edges.\n\n* Shorter possible commands to layout views, but keeping english phrasing almost valid.",
"homepage": "https://mirego.github.io/PinLayout/",
"license": "BSD 3-clause",
"authors": {
"Luc Dion": "ldion@mirego.com"
},
"platforms": {
"ios": "8.0"
},
"source": {
"git": "https://github.com/mirego/PinLayout.git",
"tag": "0.9.0"
},
"source_files": "PinLayout/**/*.swift",
"pushed_with_swift_version": "3.0"
}