',
+ content,
+ ''
+ ].join('\n\n') + '\n';
}, {ends: true, escape: false});
\ No newline at end of file
diff --git a/source/android-chrome-manifest.json b/source/android-chrome-manifest.json
index 2fb56e32d..1c5deec77 100644
--- a/source/android-chrome-manifest.json
+++ b/source/android-chrome-manifest.json
@@ -1,41 +1,41 @@
-{
- "name": "KonvaJS",
- "icons": [
- {
- "src": "\/android-chrome-36x36.png",
- "sizes": "36x36",
- "type": "image\/png",
- "density": "0.75"
- },
- {
- "src": "\/android-chrome-48x48.png",
- "sizes": "48x48",
- "type": "image\/png",
- "density": "1.0"
- },
- {
- "src": "\/android-chrome-72x72.png",
- "sizes": "72x72",
- "type": "image\/png",
- "density": "1.5"
- },
- {
- "src": "\/android-chrome-96x96.png",
- "sizes": "96x96",
- "type": "image\/png",
- "density": "2.0"
- },
- {
- "src": "\/android-chrome-144x144.png",
- "sizes": "144x144",
- "type": "image\/png",
- "density": "3.0"
- },
- {
- "src": "\/android-chrome-192x192.png",
- "sizes": "192x192",
- "type": "image\/png",
- "density": "4.0"
- }
- ]
-}
+{
+ "name": "KonvaJS",
+ "icons": [
+ {
+ "src": "\/android-chrome-36x36.png",
+ "sizes": "36x36",
+ "type": "image\/png",
+ "density": "0.75"
+ },
+ {
+ "src": "\/android-chrome-48x48.png",
+ "sizes": "48x48",
+ "type": "image\/png",
+ "density": "1.0"
+ },
+ {
+ "src": "\/android-chrome-72x72.png",
+ "sizes": "72x72",
+ "type": "image\/png",
+ "density": "1.5"
+ },
+ {
+ "src": "\/android-chrome-96x96.png",
+ "sizes": "96x96",
+ "type": "image\/png",
+ "density": "2.0"
+ },
+ {
+ "src": "\/android-chrome-144x144.png",
+ "sizes": "144x144",
+ "type": "image\/png",
+ "density": "3.0"
+ },
+ {
+ "src": "\/android-chrome-192x192.png",
+ "sizes": "192x192",
+ "type": "image\/png",
+ "density": "4.0"
+ }
+ ]
+}
diff --git a/source/browserconfig.xml b/source/browserconfig.xml
index fe44cae80..65380f387 100644
--- a/source/browserconfig.xml
+++ b/source/browserconfig.xml
@@ -1,12 +1,12 @@
-
-
-
-
-
-
-
-
- #da532c
-
-
-
+
+
+
+
+
+
+
+
+ #da532c
+
+
+
diff --git a/source/docs/animations/Create_an_Animation.md b/source/docs/animations/Create_an_Animation.md
index 98a38257c..28e64379d 100644
--- a/source/docs/animations/Create_an_Animation.md
+++ b/source/docs/animations/Create_an_Animation.md
@@ -1,34 +1,34 @@
-
-#HTML5 Canvas Konva Animation Tutorial
-
-To create custom animations with Konva, we can use the `Konva.Animation`
-constructor which takes two arguments, the required update function and
-an optional layer, or array of layers, that will be updated with each animation frame.
-The animation function is passed a `frame` object which contains a `time` property which is the number
-of milliseconds that the animation has been running, a `timeDiff` property which
-is the number of milliseconds that have passed since the last frame,
-and a `frameRate` property which is the current frame rate in frames per second.
-
-The update function should never redraw the stage or a layer because the animation
-engine will intelligently handle that for us.
-The update function should only contain logic that updates Node properties,
-such as `position`, `rotation`, `scale`, `width`, `height`, `radius`, `colors`, etc.
-Once the animation has been created, we can start it at anytime with the `start()` method.
-
-For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
-
-##HTML5 Canvas Konva Animation Template
-
-```
-
-```
+
+#HTML5 Canvas Konva Animation Tutorial
+
+To create custom animations with Konva, we can use the `Konva.Animation`
+constructor which takes two arguments, the required update function and
+an optional layer, or array of layers, that will be updated with each animation frame.
+The animation function is passed a `frame` object which contains a `time` property which is the number
+of milliseconds that the animation has been running, a `timeDiff` property which
+is the number of milliseconds that have passed since the last frame,
+and a `frameRate` property which is the current frame rate in frames per second.
+
+The update function should never redraw the stage or a layer because the animation
+engine will intelligently handle that for us.
+The update function should only contain logic that updates Node properties,
+such as `position`, `rotation`, `scale`, `width`, `height`, `radius`, `colors`, etc.
+Once the animation has been created, we can start it at anytime with the `start()` method.
+
+For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
+
+##HTML5 Canvas Konva Animation Template
+
+```
+
+```
diff --git a/source/docs/animations/Moving.md b/source/docs/animations/Moving.md
index b347b474b..61012fc78 100644
--- a/source/docs/animations/Moving.md
+++ b/source/docs/animations/Moving.md
@@ -1,11 +1,11 @@
-title: Animate Position
----
-
-To animate a shape's position with Konva, we can create a new animation with `Konva.Animation`
-which modifies the shape's position with each animation frame.
-
-For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
-
-{% iframe /downloads/code/animations/Moving.html %}
-
+title: Animate Position
+---
+
+To animate a shape's position with Konva, we can create a new animation with `Konva.Animation`
+which modifies the shape's position with each animation frame.
+
+For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
+
+{% iframe /downloads/code/animations/Moving.html %}
+
{% include_code Konva Animate Position Demo animations/Moving.html %}
\ No newline at end of file
diff --git a/source/docs/animations/Rotation.md b/source/docs/animations/Rotation.md
index 0580a25b3..9d4553d0c 100644
--- a/source/docs/animations/Rotation.md
+++ b/source/docs/animations/Rotation.md
@@ -1,14 +1,14 @@
-title: Rotation Animation
----
-
-To animate a shape's rotation with Konva, we can create a new animation with
-`Konva.Animation`, and define a function which modifies the shape's rotation with each animation frame.
-
-In this tutorial, we'll rotate a blue rectangle about the top left corner,
-a yellow rectangle about its center, and a red rectangle about an outside point.
-
-For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
-
-{% iframe /downloads/code/animations/Rotation.html %}
-
+title: Rotation Animation
+---
+
+To animate a shape's rotation with Konva, we can create a new animation with
+`Konva.Animation`, and define a function which modifies the shape's rotation with each animation frame.
+
+In this tutorial, we'll rotate a blue rectangle about the top left corner,
+a yellow rectangle about its center, and a red rectangle about an outside point.
+
+For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
+
+{% iframe /downloads/code/animations/Rotation.html %}
+
{% include_code Konva Rotation Animation Demo animations/Rotation.html %}
\ No newline at end of file
diff --git a/source/docs/animations/Scaling.md b/source/docs/animations/Scaling.md
index 34efc054b..531cddc27 100644
--- a/source/docs/animations/Scaling.md
+++ b/source/docs/animations/Scaling.md
@@ -1,16 +1,16 @@
-title: Scale Animation
----
-
-To animate a shape's scale with Konva, we can create a new animation with
-`Konva.Animation`, and define a function which modifies the shape's scale with each animation frame.
-
-In this tutorial, we'll scale the x and y component of a blue hexagon, the y component
-of a yellow hexagon, and the x component of a red hexagon about an axis positioned on the right side of the shape.
-
-Instructions: drag and drop the hexagons as they animate
-
-For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
-
-{% iframe /downloads/code/animations/Scaling.html %}
-
+title: Scale Animation
+---
+
+To animate a shape's scale with Konva, we can create a new animation with
+`Konva.Animation`, and define a function which modifies the shape's scale with each animation frame.
+
+In this tutorial, we'll scale the x and y component of a blue hexagon, the y component
+of a yellow hexagon, and the x component of a red hexagon about an axis positioned on the right side of the shape.
+
+Instructions: drag and drop the hexagons as they animate
+
+For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
+
+{% iframe /downloads/code/animations/Scaling.html %}
+
{% include_code Konva Scale Animation Demo animations/Scaling.html %}
\ No newline at end of file
diff --git a/source/docs/animations/Stop_Animation.md b/source/docs/animations/Stop_Animation.md
index 71d988f44..2cce9250a 100644
--- a/source/docs/animations/Stop_Animation.md
+++ b/source/docs/animations/Stop_Animation.md
@@ -1,13 +1,13 @@
-title: Stop Animation
----
-
-To stop an animation with Konva, we can use the `stop()` method.
-To restart the animation, we can again call the `start()`.
-
-Instructions: Click on "Start" to start the animation and "Stop" to stop the animation.
-
-For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
-
-{% iframe /downloads/code/animations/Stop_Animation.html %}
-
+title: Stop Animation
+---
+
+To stop an animation with Konva, we can use the `stop()` method.
+To restart the animation, we can again call the `start()`.
+
+Instructions: Click on "Start" to start the animation and "Stop" to stop the animation.
+
+For a full list of attributes and methods, check out the [Konva.Animation documentation](http://konvajs.github.io/api/Konva.Animation.html).
+
+{% iframe /downloads/code/animations/Stop_Animation.html %}
+
{% include_code Konva Stop Animation Demo animations/Stop_Animation.html %}
\ No newline at end of file
diff --git a/source/docs/data_&_serialization/Complex_Load.md b/source/docs/data_&_serialization/Complex_Load.md
index 414b37599..fd6f85338 100644
--- a/source/docs/data_&_serialization/Complex_Load.md
+++ b/source/docs/data_&_serialization/Complex_Load.md
@@ -1,11 +1,11 @@
-title: Load Complex Stage
----
-
-To load a complex stage that originally contained images and event bindings using Konva,
-we need to create a stage node using `Konva.Node.create()`, and then set the
-images and event handlers with the help of selectors using the `get()` method.
-Images and event handlers must be manually set because they aren't serializable.
-
-{% iframe /downloads/code/data_&_serialization/Complex_Load.html %}
-
-{% include_code Konva Load Complex Stage Demo data_&_serialization/Complex_Load.html %}
+title: Load Complex Stage
+---
+
+To load a complex stage that originally contained images and event bindings using Konva,
+we need to create a stage node using `Konva.Node.create()`, and then set the
+images and event handlers with the help of selectors using the `get()` method.
+Images and event handlers must be manually set because they aren't serializable.
+
+{% iframe /downloads/code/data_&_serialization/Complex_Load.html %}
+
+{% include_code Konva Load Complex Stage Demo data_&_serialization/Complex_Load.html %}
diff --git a/source/docs/data_&_serialization/Serialize_a_Stage.md b/source/docs/data_&_serialization/Serialize_a_Stage.md
index 5d198405e..d94ffa19a 100644
--- a/source/docs/data_&_serialization/Serialize_a_Stage.md
+++ b/source/docs/data_&_serialization/Serialize_a_Stage.md
@@ -1,11 +1,11 @@
-title: Save Stage as JSON String
----
-
-To save the stage as a JSON string with Konva, we can use the `toJSON()`
-method which serializes the Konva Node tree into text which can be saved
-in web storage or in an offline database. We can also serialize other nodes,
-including layers, groups, and shapes.
-
-{% iframe /downloads/code/data_&_serialization/Serialize_a_Stage.html %}
-
-{% include_code Konva Save Stage Demo data_&_serialization/Serialize_a_Stage.html %}
+title: Save Stage as JSON String
+---
+
+To save the stage as a JSON string with Konva, we can use the `toJSON()`
+method which serializes the Konva Node tree into text which can be saved
+in web storage or in an offline database. We can also serialize other nodes,
+including layers, groups, and shapes.
+
+{% iframe /downloads/code/data_&_serialization/Serialize_a_Stage.html %}
+
+{% include_code Konva Save Stage Demo data_&_serialization/Serialize_a_Stage.html %}
diff --git a/source/docs/data_&_serialization/Simple_Load.md b/source/docs/data_&_serialization/Simple_Load.md
index 78d1fa2d0..a43e40aa2 100644
--- a/source/docs/data_&_serialization/Simple_Load.md
+++ b/source/docs/data_&_serialization/Simple_Load.md
@@ -1,10 +1,10 @@
-title: Load Stage with JSON String
----
-
-To deserialize a JSON string with Konva, we can use the `Konva.Node.create()`
-method which creates a node from a JSON string. If we want to deserialize
-a stage node, we can also pass in an optional `container` parameter.
-
-{% iframe /downloads/code/data_&_serialization/Simple_Load.html %}
-
-{% include_code Konva Simple Load Demo data_&_serialization/Simple_Load.html %}
+title: Load Stage with JSON String
+---
+
+To deserialize a JSON string with Konva, we can use the `Konva.Node.create()`
+method which creates a node from a JSON string. If we want to deserialize
+a stage node, we can also pass in an optional `container` parameter.
+
+{% iframe /downloads/code/data_&_serialization/Simple_Load.html %}
+
+{% include_code Konva Simple Load Demo data_&_serialization/Simple_Load.html %}
diff --git a/source/docs/data_&_serialization/Stage_Data_URL.md b/source/docs/data_&_serialization/Stage_Data_URL.md
index 316cf9d8e..7022c87ba 100644
--- a/source/docs/data_&_serialization/Stage_Data_URL.md
+++ b/source/docs/data_&_serialization/Stage_Data_URL.md
@@ -1,17 +1,17 @@
-title: Stage Data URL
----
-
-To get the data URL of the stage with Konva, we can use the `toDataURL()`
-method which requires a callback function for `Stage` (for other nodes callback is not required).
-In addition, we can also pass in a mime type such as image/jpeg and a quality value that ranges between 0 and 1.
-We can also get the data URLs of specific nodes, including layers, groups, and shapes.
-
-*Note: The `toDataURL()` method requires that any images drawn onto the canvas
-are hosted on a web server with the same domain as the code executing it.
-If this condition is not met, a SECURITY_ERR exception is thrown.*
-
-Instructions: Drag and drop the rectangle and then click on the save button to get the composite data url and open the resulting image in a new window
-
-{% iframe /downloads/code/data_&_serialization/Stage_Data_URL.html %}
-
-{% include_code Konva Stage Data URL Demo data_&_serialization/Stage_Data_URL.html %}
+title: Stage Data URL
+---
+
+To get the data URL of the stage with Konva, we can use the `toDataURL()`
+method which requires a callback function for `Stage` (for other nodes callback is not required).
+In addition, we can also pass in a mime type such as image/jpeg and a quality value that ranges between 0 and 1.
+We can also get the data URLs of specific nodes, including layers, groups, and shapes.
+
+*Note: The `toDataURL()` method requires that any images drawn onto the canvas
+are hosted on a web server with the same domain as the code executing it.
+If this condition is not met, a SECURITY_ERR exception is thrown.*
+
+Instructions: Drag and drop the rectangle and then click on the save button to get the composite data url and open the resulting image in a new window
+
+{% iframe /downloads/code/data_&_serialization/Stage_Data_URL.html %}
+
+{% include_code Konva Stage Data URL Demo data_&_serialization/Stage_Data_URL.html %}
diff --git a/source/docs/drag_and_drop/Complex_Drag_and_Drop.md b/source/docs/drag_and_drop/Complex_Drag_and_Drop.md
index 142363ce4..6b0ca84bd 100644
--- a/source/docs/drag_and_drop/Complex_Drag_and_Drop.md
+++ b/source/docs/drag_and_drop/Complex_Drag_and_Drop.md
@@ -1,14 +1,14 @@
-title: Complex Drag and Drop Bounds
----
-
-To bound the movement of nodes being dragged and dropped inside regions with
-Konva, we can use the `dragBoundFunc` property to define boundaries that
-the node cannot cross.
-
-Instructions: Drag and drop the the light blue rectangle and observe that it
-is bound below an imaginary boundary at y = 50. Drag and drop the yellow
-rectangle and observe that it is bound inside of an imaginary circle.
-
-{% iframe /downloads/code/drag_and_drop/Complex_Drag_and_Drop.html %}
-
+title: Complex Drag and Drop Bounds
+---
+
+To bound the movement of nodes being dragged and dropped inside regions with
+Konva, we can use the `dragBoundFunc` property to define boundaries that
+the node cannot cross.
+
+Instructions: Drag and drop the the light blue rectangle and observe that it
+is bound below an imaginary boundary at y = 50. Drag and drop the yellow
+rectangle and observe that it is bound inside of an imaginary circle.
+
+{% iframe /downloads/code/drag_and_drop/Complex_Drag_and_Drop.html %}
+
{% include_code Konva Complex Drag and Drop Bounds Demo drag_and_drop/Complex_Drag_and_Drop.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drag_Events.md b/source/docs/drag_and_drop/Drag_Events.md
index fe7f061f0..591d0d125 100644
--- a/source/docs/drag_and_drop/Drag_Events.md
+++ b/source/docs/drag_and_drop/Drag_Events.md
@@ -1,10 +1,10 @@
-title: Drag and Drop Events
----
-
-To detect drag and drop events with Konva, we can use the `on()` method to
-bind `dragstart`, `dragmove`, or `dragend` events to a node.
-The `on()` method requires an event type and a function to be executed when the event occurs.
-
-{% iframe /downloads/code/drag_and_drop/Drag_Events.html %}
-
+title: Drag and Drop Events
+---
+
+To detect drag and drop events with Konva, we can use the `on()` method to
+bind `dragstart`, `dragmove`, or `dragend` events to a node.
+The `on()` method requires an event type and a function to be executed when the event occurs.
+
+{% iframe /downloads/code/drag_and_drop/Drag_Events.html %}
+
{% include_code Konva Drag Events Demo drag_and_drop/Drag_Events.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drag_a_Group.md b/source/docs/drag_and_drop/Drag_a_Group.md
index faf2d3a7f..1888e6ecf 100644
--- a/source/docs/drag_and_drop/Drag_a_Group.md
+++ b/source/docs/drag_and_drop/Drag_a_Group.md
@@ -1,9 +1,9 @@
-title: Drag and Drop a Group
----
-
-To drag and drop groups with Konva, we can set the `draggable` property
-of the config object to `true` when the group is instantiated, or we can use the `draggable()` method.
-
-{% iframe /downloads/code/drag_and_drop/Drag_a_Group.html %}
-
+title: Drag and Drop a Group
+---
+
+To drag and drop groups with Konva, we can set the `draggable` property
+of the config object to `true` when the group is instantiated, or we can use the `draggable()` method.
+
+{% iframe /downloads/code/drag_and_drop/Drag_a_Group.html %}
+
{% include_code Konva Drag and Drop the Group Demo drag_and_drop/Drag_a_Group.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drag_a_Line.md b/source/docs/drag_and_drop/Drag_a_Line.md
index 43b07c7e6..776c46fd8 100644
--- a/source/docs/drag_and_drop/Drag_a_Line.md
+++ b/source/docs/drag_and_drop/Drag_a_Line.md
@@ -1,9 +1,9 @@
-title: Drag and Drop a Line
----
-
-To drag and drop a line with Konva, we can set the `draggable` property
-of the config object to `true` when the group is instantiated, or we can use the `draggable()` method.
-
-{% iframe /downloads/code/drag_and_drop/Drag_a_Line.html %}
-
+title: Drag and Drop a Line
+---
+
+To drag and drop a line with Konva, we can set the `draggable` property
+of the config object to `true` when the group is instantiated, or we can use the `draggable()` method.
+
+{% iframe /downloads/code/drag_and_drop/Drag_a_Line.html %}
+
{% include_code Konva Drag and Drop the Line Demo drag_and_drop/Drag_a_Line.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drag_a_Stage.md b/source/docs/drag_and_drop/Drag_a_Stage.md
index 7ad4de227..7e3b73b57 100644
--- a/source/docs/drag_and_drop/Drag_a_Stage.md
+++ b/source/docs/drag_and_drop/Drag_a_Stage.md
@@ -1,12 +1,12 @@
-title: Drag and Drop the Stage
----
-
-To drag and drop a stage with Konva, we can set the `draggable` property
-of the config object to `true` when the group is instantiated, or we can use the `draggable()` method.
-
-Unlike drag and drop for other nodes, such as shapes, groups, and layers,
-we can drag the entire stage by dragging any portion of the stage.
-
-{% iframe /downloads/code/drag_and_drop/Drag_a_Stage.html %}
-
+title: Drag and Drop the Stage
+---
+
+To drag and drop a stage with Konva, we can set the `draggable` property
+of the config object to `true` when the group is instantiated, or we can use the `draggable()` method.
+
+Unlike drag and drop for other nodes, such as shapes, groups, and layers,
+we can drag the entire stage by dragging any portion of the stage.
+
+{% iframe /downloads/code/drag_and_drop/Drag_a_Stage.html %}
+
{% include_code Konva Drag and Drop the Stage Demo drag_and_drop/Drag_a_Stage.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drag_an_Image.md b/source/docs/drag_and_drop/Drag_an_Image.md
index a00a7515e..049c29efb 100644
--- a/source/docs/drag_and_drop/Drag_an_Image.md
+++ b/source/docs/drag_and_drop/Drag_an_Image.md
@@ -1,11 +1,11 @@
-title: Drag and Drop an Image
----
-
-To drag and drop an image with Konva, we can set the `draggable` property
-to true when we instantiate a shape, or we can use the `draggable()` method.
-The `draggable()` method enables drag and drop for both desktop and mobile
-applications automatically.
-
-{% iframe /downloads/code/drag_and_drop/Drag_an_Image.html %}
-
+title: Drag and Drop an Image
+---
+
+To drag and drop an image with Konva, we can set the `draggable` property
+to true when we instantiate a shape, or we can use the `draggable()` method.
+The `draggable()` method enables drag and drop for both desktop and mobile
+applications automatically.
+
+{% iframe /downloads/code/drag_and_drop/Drag_an_Image.html %}
+
{% include_code Konva Drag and Drop an Image Demo drag_and_drop/Drag_an_Image.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drag_and_Drop.md b/source/docs/drag_and_drop/Drag_and_Drop.md
index c0469e37f..99c681903 100644
--- a/source/docs/drag_and_drop/Drag_and_Drop.md
+++ b/source/docs/drag_and_drop/Drag_and_Drop.md
@@ -1,15 +1,15 @@
-title: Drag and Drop Tutorial
----
-
-To drag and drop shapes with Konva, we can set the `draggable` property
-to true when we instantiate a shape, or we can use the `draggable()` method.
-The `draggable()` method enables drag and drop for both desktop and mobile
-applications automatically.
-
-To detect drag and drop events with Konva, we can use the `on()` method to
-bind `dragstart`, `dragmove`, or `dragend` events to a node.
-The `on()` method requires an event type and a function to be executed when the event occurs.
-
-{% iframe /downloads/code/drag_and_drop/Drag_and_Drop.html %}
-
+title: Drag and Drop Tutorial
+---
+
+To drag and drop shapes with Konva, we can set the `draggable` property
+to true when we instantiate a shape, or we can use the `draggable()` method.
+The `draggable()` method enables drag and drop for both desktop and mobile
+applications automatically.
+
+To detect drag and drop events with Konva, we can use the `on()` method to
+bind `dragstart`, `dragmove`, or `dragend` events to a node.
+The `on()` method requires an event type and a function to be executed when the event occurs.
+
+{% iframe /downloads/code/drag_and_drop/Drag_and_Drop.html %}
+
{% include_code Konva Drag and Drop Demo drag_and_drop/Drag_and_Drop.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Drop_Events.md b/source/docs/drag_and_drop/Drop_Events.md
index f19035bee..e41142fc9 100644
--- a/source/docs/drag_and_drop/Drop_Events.md
+++ b/source/docs/drag_and_drop/Drop_Events.md
@@ -1,13 +1,13 @@
-title: Drop Events
----
-
-Konva does not support drop events. But you can write your own drop events detections.
-To detect drop target shape you have to move dragging object into another layer.
-
-In this example you can see implementation of `drop`, `dragenter`, `dragleave`, `dragover` events.
-
-Instructions: drag one shape over another. Or drag and drop one shape into another.
-
-{% iframe /downloads/code/drag_and_drop/Drop_Events.html %}
-
+title: Drop Events
+---
+
+Konva does not support drop events. But you can write your own drop events detections.
+To detect drop target shape you have to move dragging object into another layer.
+
+In this example you can see implementation of `drop`, `dragenter`, `dragleave`, `dragover` events.
+
+Instructions: drag one shape over another. Or drag and drop one shape into another.
+
+{% iframe /downloads/code/drag_and_drop/Drop_Events.html %}
+
{% include_code Konva Drop Events Demo drag_and_drop/Drop_Events.html %}
\ No newline at end of file
diff --git a/source/docs/drag_and_drop/Simple_Drag_Bounds.md b/source/docs/drag_and_drop/Simple_Drag_Bounds.md
index 36a483022..5263eff89 100644
--- a/source/docs/drag_and_drop/Simple_Drag_Bounds.md
+++ b/source/docs/drag_and_drop/Simple_Drag_Bounds.md
@@ -1,16 +1,16 @@
-title: Simple Drag Bounds
----
-
-To restrict the movement of shapes being dragged and dropped with Konva,
-we can use the `dragBoundsFunc` property which is a user defined function that
-overrides the drag and drop position. This function can be used to constrain
-the drag and drop movement in all kinds of ways, such as constraining the motion
-horizontally, vertically, diagonally, or radially, or even constrain the node
-to stay inside of a box, circle, or any other path.
-
-Instructions: Drag and drop the the horizontal text and observe that it can only
-move horizontally. Drag and drop the vertical text and observe that it can only move vertically.
-
-{% iframe /downloads/code/drag_and_drop/Simple_Drag_Bounds.html %}
-
+title: Simple Drag Bounds
+---
+
+To restrict the movement of shapes being dragged and dropped with Konva,
+we can use the `dragBoundsFunc` property which is a user defined function that
+overrides the drag and drop position. This function can be used to constrain
+the drag and drop movement in all kinds of ways, such as constraining the motion
+horizontally, vertically, diagonally, or radially, or even constrain the node
+to stay inside of a box, circle, or any other path.
+
+Instructions: Drag and drop the the horizontal text and observe that it can only
+move horizontally. Drag and drop the vertical text and observe that it can only move vertically.
+
+{% iframe /downloads/code/drag_and_drop/Simple_Drag_Bounds.html %}
+
{% include_code Konva Simple Drag Bounds Demo drag_and_drop/Simple_Drag_Bounds.html %}
\ No newline at end of file
diff --git a/source/docs/events/Binding_Events.md b/source/docs/events/Binding_Events.md
index 533efae88..110ed6a2c 100644
--- a/source/docs/events/Binding_Events.md
+++ b/source/docs/events/Binding_Events.md
@@ -1,13 +1,13 @@
-
-#HTML5 Canvas Shape Events with Konva
-
-To detect shape events with Konva, we can use the `on()` method to bind event handlers to a node.
-
-The `on()` method requires an event type and a function to be executed when the event occurs.
-Konva supports `mouseover`, `mouseout`, `mouseenter`, `mouseleave`, `mousemove`, `mousedown`, `mouseup`, `mousewheel`, `click`, `dblclick`, `dragstart`, `dragmove`, and `dragend` desktop events.
-
-Instructions: Mouseover and mouseout of the triangle, and mouseover, mouseout, mousedown, and mouseup over the circle.
-
-{% iframe /downloads/code/events/Binding_Events.html %}
-
-{% include_code Konva Binding_Events Demo events/Binding_Events.html %}
+
+#HTML5 Canvas Shape Events with Konva
+
+To detect shape events with Konva, we can use the `on()` method to bind event handlers to a node.
+
+The `on()` method requires an event type and a function to be executed when the event occurs.
+Konva supports `mouseover`, `mouseout`, `mouseenter`, `mouseleave`, `mousemove`, `mousedown`, `mouseup`, `mousewheel`, `click`, `dblclick`, `dragstart`, `dragmove`, and `dragend` desktop events.
+
+Instructions: Mouseover and mouseout of the triangle, and mouseover, mouseout, mousedown, and mouseup over the circle.
+
+{% iframe /downloads/code/events/Binding_Events.html %}
+
+{% include_code Konva Binding_Events Demo events/Binding_Events.html %}
diff --git a/source/docs/events/Cancel_Propagation.md b/source/docs/events/Cancel_Propagation.md
index 6b4b92962..8ade11150 100644
--- a/source/docs/events/Cancel_Propagation.md
+++ b/source/docs/events/Cancel_Propagation.md
@@ -1,13 +1,13 @@
-
-#HTML5 Canvas Cancel Event Bubble Propagation with Konva
-
-To cancel event bubble propagation with Konva, we can set the `cancelBubble`
-property of the Event object to true.
-
-Instructions: Click on the circle to observe that only the circle event binding
-is handled because the event propagation was canceled when the circle event was triggered,
-therefore preventing the event object from bubbling upwards.
-
-{% iframe /downloads/code/events/Cancel_Propagation.html %}
-
-{% include_code Konva Cancel_Propagation Demo events/Cancel_Propagation.html %}
+
+#HTML5 Canvas Cancel Event Bubble Propagation with Konva
+
+To cancel event bubble propagation with Konva, we can set the `cancelBubble`
+property of the Event object to true.
+
+Instructions: Click on the circle to observe that only the circle event binding
+is handled because the event propagation was canceled when the circle event was triggered,
+therefore preventing the event object from bubbling upwards.
+
+{% iframe /downloads/code/events/Cancel_Propagation.html %}
+
+{% include_code Konva Cancel_Propagation Demo events/Cancel_Propagation.html %}
diff --git a/source/docs/events/Custom_Hit_Region.md b/source/docs/events/Custom_Hit_Region.md
index d4006d885..1cfa7b67f 100644
--- a/source/docs/events/Custom_Hit_Region.md
+++ b/source/docs/events/Custom_Hit_Region.md
@@ -1,17 +1,17 @@
-
-#HTML5 Canvas Konva Custom Hit Function Tutorial
-
-To create a custom hit draw function for a shape with Konva, we can set
-the `drawHitFunc` property. A hit draw function is the function that Konva
-will use to draw a region used for hit detection. Using a custom draw hit
-function can have several benefits, such as making the hit region larger
-so that it's easier for users to interact with a shape, making some portions
-of a shape detectable and others not, or simplifying the hit draw function
-in order to improve rendering performance.
-
-Instructions: Mouseover, mouseout, mousedown, and mouseup over the star and
-observe that the hit region is an over sized circle encompassing the shape.
-
-{% iframe /downloads/code/events/Custom_Hit_Region.html %}
-
-{% include_code Konva Custom_Hit_Region Demo events/Custom_Hit_Region.html %}
+
+#HTML5 Canvas Konva Custom Hit Function Tutorial
+
+To create a custom hit draw function for a shape with Konva, we can set
+the `drawHitFunc` property. A hit draw function is the function that Konva
+will use to draw a region used for hit detection. Using a custom draw hit
+function can have several benefits, such as making the hit region larger
+so that it's easier for users to interact with a shape, making some portions
+of a shape detectable and others not, or simplifying the hit draw function
+in order to improve rendering performance.
+
+Instructions: Mouseover, mouseout, mousedown, and mouseup over the star and
+observe that the hit region is an over sized circle encompassing the shape.
+
+{% iframe /downloads/code/events/Custom_Hit_Region.html %}
+
+{% include_code Konva Custom_Hit_Region Demo events/Custom_Hit_Region.html %}
diff --git a/source/docs/events/Desktop_and_Mobile.md b/source/docs/events/Desktop_and_Mobile.md
index c269ad3a5..9caa6442d 100644
--- a/source/docs/events/Desktop_and_Mobile.md
+++ b/source/docs/events/Desktop_and_Mobile.md
@@ -1,13 +1,13 @@
-
-#HTML5 Canvas Desktop and Mobile Events Support Tutorial
-
-To add event handlers to shapes that work for both desktop and mobile applications with Konva, we can use the `on()` method and pass in paired events.
-For example, in order for the mousedown event to be triggered on desktop and mobile applications, we can use the "mousedown touchstart" event pair to cover both mediums.
-In order for the mouseup event to be triggered on both desktop and mobile applications, we can use the "mouseup touchend" event pair.
-We can also use the "dblclick dbltap" event pair to bind a double click event that works for both desktop and mobile devices.
-
-Instructions: Mousedown, mouseup, touchstart, or touchend the circle on either a desktop or mobile device to observe the same functionality.
-
-{% iframe /downloads/code/events/Desktop_and_Mobile.html %}
-
-{% include_code Konva Desktop_and_Mobile Demo events/Desktop_and_Mobile.html %}
+
+#HTML5 Canvas Desktop and Mobile Events Support Tutorial
+
+To add event handlers to shapes that work for both desktop and mobile applications with Konva, we can use the `on()` method and pass in paired events.
+For example, in order for the mousedown event to be triggered on desktop and mobile applications, we can use the "mousedown touchstart" event pair to cover both mediums.
+In order for the mouseup event to be triggered on both desktop and mobile applications, we can use the "mouseup touchend" event pair.
+We can also use the "dblclick dbltap" event pair to bind a double click event that works for both desktop and mobile devices.
+
+Instructions: Mousedown, mouseup, touchstart, or touchend the circle on either a desktop or mobile device to observe the same functionality.
+
+{% iframe /downloads/code/events/Desktop_and_Mobile.html %}
+
+{% include_code Konva Desktop_and_Mobile Demo events/Desktop_and_Mobile.html %}
diff --git a/source/docs/events/Event_Delegation.md b/source/docs/events/Event_Delegation.md
index a3583df6b..f040e7ba0 100644
--- a/source/docs/events/Event_Delegation.md
+++ b/source/docs/events/Event_Delegation.md
@@ -1,14 +1,14 @@
-
-#HTML5 Canvas Event Delegation with Konva
-
-To get the event target with Konva, we can access the `target` property
-of the Event object. This is particularly useful when using event delegation,
-in which we can bind an event handler to a parent node, and listen to events
-that occur on its children.
-
-Instructions: Click on the star and observe that the layer event binding
-correctly identifies the shape that was clicked on.
-
-{% iframe /downloads/code/events/Event_Delegation.html %}
-
+
+#HTML5 Canvas Event Delegation with Konva
+
+To get the event target with Konva, we can access the `target` property
+of the Event object. This is particularly useful when using event delegation,
+in which we can bind an event handler to a parent node, and listen to events
+that occur on its children.
+
+Instructions: Click on the star and observe that the layer event binding
+correctly identifies the shape that was clicked on.
+
+{% iframe /downloads/code/events/Event_Delegation.html %}
+
{% include_code Konva Event_Delegation Demo events/Event_Delegation.html %}
\ No newline at end of file
diff --git a/source/docs/events/Fire_Events.md b/source/docs/events/Fire_Events.md
index ce380ad51..b07367d7b 100644
--- a/source/docs/events/Fire_Events.md
+++ b/source/docs/events/Fire_Events.md
@@ -1,10 +1,10 @@
-
-#HTML5 Canvas Fire Event with Konva
-
-To fire events with Konva, we can use the `fire()` method.
-This enables us to programmatically fire events like `click`, `mouseover`,
-`mousemove`, etc., and also fire custom events, like foo and bar.
-
-{% iframe /downloads/code/events/Fire_Events.html %}
-
+
+#HTML5 Canvas Fire Event with Konva
+
+To fire events with Konva, we can use the `fire()` method.
+This enables us to programmatically fire events like `click`, `mouseover`,
+`mousemove`, etc., and also fire custom events, like foo and bar.
+
+{% iframe /downloads/code/events/Fire_Events.html %}
+
{% include_code Konva Fire_Events Demo events/Fire_Events.html %}
\ No newline at end of file
diff --git a/source/docs/events/Image_Events.md b/source/docs/events/Image_Events.md
index 0c3fa8df9..386072187 100644
--- a/source/docs/events/Image_Events.md
+++ b/source/docs/events/Image_Events.md
@@ -1,13 +1,13 @@
-
-#HTML5 Canvas Image Events with Konva
-
-To only detect events for non transparent pixels in an image with Konva, we can use the `drawHitFromCache()` method to generate a more precise image hit region.
-By default, events can be triggered for any pixel inside of an image, even if it's transparent. The `drawHitFromCache()` method also accepts an optional callback method to be executed whenever the image hit region has been created.
-
-*Note: The `drawHitFromCache()` method requires that the image is hosted on a web server with the same domain as the code executing it.*
-
-Instructions: Mouse over the monkey and the lion and observe the mouseover event bindings. Notice that the event is triggered for the monkey if you mouseover any portion of the image, including transparent pixels. Since we created an image hit region for the lion, transparent pixels are ignored, which enables more precise event detection.
-
-{% iframe /downloads/code/events/Image_Events.html %}
-
+
+#HTML5 Canvas Image Events with Konva
+
+To only detect events for non transparent pixels in an image with Konva, we can use the `drawHitFromCache()` method to generate a more precise image hit region.
+By default, events can be triggered for any pixel inside of an image, even if it's transparent. The `drawHitFromCache()` method also accepts an optional callback method to be executed whenever the image hit region has been created.
+
+*Note: The `drawHitFromCache()` method requires that the image is hosted on a web server with the same domain as the code executing it.*
+
+Instructions: Mouse over the monkey and the lion and observe the mouseover event bindings. Notice that the event is triggered for the monkey if you mouseover any portion of the image, including transparent pixels. Since we created an image hit region for the lion, transparent pixels are ignored, which enables more precise event detection.
+
+{% iframe /downloads/code/events/Image_Events.html %}
+
{% include_code Konva Image_Events Demo events/Image_Events.html %}
\ No newline at end of file
diff --git a/source/docs/events/Listen_for_Events.md b/source/docs/events/Listen_for_Events.md
index 17fab0864..bc5598f22 100644
--- a/source/docs/events/Listen_for_Events.md
+++ b/source/docs/events/Listen_for_Events.md
@@ -1,15 +1,15 @@
-
-#HTML5 Canvas Listen or Don’t Listen to Events with Konva
-
-To listen or don't listen to events with Konva, we can set the listening
-property of the config object to true or false when a shape is instantiated,
-or we can set the listening property with the `setListening()` method.
-Once we've set the listening property for one or more nodes, we'll also need
-to redraw the hit graph for each affected layer with the `drawHit()` method.
-
-Instructions: Mouseover the oval to observe that the event handler is not executed.
-Click on "Listen" to start listening for events and observe that the event handler is now executed.
-
-{% iframe /downloads/code/events/Listen_for_Events.html %}
-
+
+#HTML5 Canvas Listen or Don’t Listen to Events with Konva
+
+To listen or don't listen to events with Konva, we can set the listening
+property of the config object to true or false when a shape is instantiated,
+or we can set the listening property with the `setListening()` method.
+Once we've set the listening property for one or more nodes, we'll also need
+to redraw the hit graph for each affected layer with the `drawHit()` method.
+
+Instructions: Mouseover the oval to observe that the event handler is not executed.
+Click on "Listen" to start listening for events and observe that the event handler is now executed.
+
+{% iframe /downloads/code/events/Listen_for_Events.html %}
+
{% include_code Konva Listen_for_Events Demo events/Listen_for_Events.html %}
\ No newline at end of file
diff --git a/source/docs/events/Mobile_Events.md b/source/docs/events/Mobile_Events.md
index 7940b77fb..ff74b51fa 100644
--- a/source/docs/events/Mobile_Events.md
+++ b/source/docs/events/Mobile_Events.md
@@ -1,14 +1,14 @@
-
-#HTML5 Canvas Mobile Touch Events Tutorial
-
-To bind event handlers to shapes on a mobile device with Konva, we can use the `on()` method.
-The `on()` method requires an event type and a function to be executed when the event occurs.
-Konva supports `touchstart`, `touchmove`, `touchend`, `tap`, `dbltap`, `dragstart`, `dragmove`, and `dragend` mobile events.
-
-*Note: This example only works on iOS and Android mobile devices because it makes use of touch events rather than mouse events.*
-
-Instructions: move your finger across the triangle to see touch coordinates and touch start and touch end the circle.
-
-{% iframe /downloads/code/events/Mobile_Events.html %}
-
+
+#HTML5 Canvas Mobile Touch Events Tutorial
+
+To bind event handlers to shapes on a mobile device with Konva, we can use the `on()` method.
+The `on()` method requires an event type and a function to be executed when the event occurs.
+Konva supports `touchstart`, `touchmove`, `touchend`, `tap`, `dbltap`, `dragstart`, `dragmove`, and `dragend` mobile events.
+
+*Note: This example only works on iOS and Android mobile devices because it makes use of touch events rather than mouse events.*
+
+Instructions: move your finger across the triangle to see touch coordinates and touch start and touch end the circle.
+
+{% iframe /downloads/code/events/Mobile_Events.html %}
+
{% include_code Konva Mobile_Events Demo events/Mobile_Events.html %}
\ No newline at end of file
diff --git a/source/docs/events/Multi_Event.md b/source/docs/events/Multi_Event.md
index 26d3c1569..854ef669c 100644
--- a/source/docs/events/Multi_Event.md
+++ b/source/docs/events/Multi_Event.md
@@ -1,10 +1,10 @@
-
-#HTML5 Canvas Multi-Event Binding Tutorial
-
-To bind multiple events to a single handler with Konva, we can use the `on()` method and pass in a space delimited string containing multiple event types.
-
-Instructions: Mouseover, mousedown, and mouseup over the circle to observe that the function bound to the circle is executed for each event.
-
-{% iframe /downloads/code/events/Multi_Event.html %}
-
+
+#HTML5 Canvas Multi-Event Binding Tutorial
+
+To bind multiple events to a single handler with Konva, we can use the `on()` method and pass in a space delimited string containing multiple event types.
+
+Instructions: Mouseover, mousedown, and mouseup over the circle to observe that the function bound to the circle is executed for each event.
+
+{% iframe /downloads/code/events/Multi_Event.html %}
+
{% include_code Konva Multi_Event Demo events/Multi_Event.html %}
\ No newline at end of file
diff --git a/source/docs/events/Remove_Event.md b/source/docs/events/Remove_Event.md
index ee770a28b..23876d658 100644
--- a/source/docs/events/Remove_Event.md
+++ b/source/docs/events/Remove_Event.md
@@ -1,13 +1,13 @@
-
-#HTML5 Canvas Remove Event Listener with Konva
-
-To remove an event listener with Konva, we can use the `off()` method of
-a shape object which requires an event type such as click or mousedown.
-
-Instructions: Click on the circle to see an alert triggered from the onclick
-event binding. Remove the event listener by clicking on the button and again
-click on the circle to observe that the event binding has been removed.
-
-{% iframe /downloads/code/events/Remove_Event.html %}
-
+
+#HTML5 Canvas Remove Event Listener with Konva
+
+To remove an event listener with Konva, we can use the `off()` method of
+a shape object which requires an event type such as click or mousedown.
+
+Instructions: Click on the circle to see an alert triggered from the onclick
+event binding. Remove the event listener by clicking on the button and again
+click on the circle to observe that the event binding has been removed.
+
+{% iframe /downloads/code/events/Remove_Event.html %}
+
{% include_code Konva Remove_Event Demo events/Remove_Event.html %}
\ No newline at end of file
diff --git a/source/docs/events/Remove_by_Name.md b/source/docs/events/Remove_by_Name.md
index 37675959b..0400271e6 100644
--- a/source/docs/events/Remove_by_Name.md
+++ b/source/docs/events/Remove_by_Name.md
@@ -1,14 +1,14 @@
-
-#HTML5 Canvas Remove Event Listener by Name with Konva
-
-To remove an event listener by name with Konva,
-we can namespace the event type with the `on()` method so that we can later
-remove the event listener by the same namespace with the `off()` method.
-
-Instructions: Click on the circle to see two alerts triggered from two different
-onclick event bindings. Remove the event listeners using the buttons to
-the left, and again click on the circle to observe the new onclick bindings.
-
-{% iframe /downloads/code/events/Remove_by_Name.html %}
-
+
+#HTML5 Canvas Remove Event Listener by Name with Konva
+
+To remove an event listener by name with Konva,
+we can namespace the event type with the `on()` method so that we can later
+remove the event listener by the same namespace with the `off()` method.
+
+Instructions: Click on the circle to see two alerts triggered from two different
+onclick event bindings. Remove the event listeners using the buttons to
+the left, and again click on the circle to observe the new onclick bindings.
+
+{% iframe /downloads/code/events/Remove_by_Name.html %}
+
{% include_code Konva Remove By Name Demo events/Remove_by_Name.html %}
\ No newline at end of file
diff --git a/source/docs/filters/Blur.md b/source/docs/filters/Blur.md
index 65882d37f..3dca3c9fe 100644
--- a/source/docs/filters/Blur.md
+++ b/source/docs/filters/Blur.md
@@ -1,16 +1,16 @@
-title: Blur Image Tutorial
----
-
-To apply filter to an `Konva.Image`, we have to cache it first with `cache()`
-function. Then apply filter with `filter()` function.
-
-To blur an image with Konva, we can use the `Konva.Filters.Blur` filter
-and set the blur amount with the `blurRadius` property.
-
-Instructions: Slide the control to adjust the blur radius.
-
-For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
-
-{% iframe /downloads/code/filters/Blur.html %}
-
+title: Blur Image Tutorial
+---
+
+To apply filter to an `Konva.Image`, we have to cache it first with `cache()`
+function. Then apply filter with `filter()` function.
+
+To blur an image with Konva, we can use the `Konva.Filters.Blur` filter
+and set the blur amount with the `blurRadius` property.
+
+Instructions: Slide the control to adjust the blur radius.
+
+For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
+
+{% iframe /downloads/code/filters/Blur.html %}
+
{% include_code Konva Blur Image Demo filters/Blur.html %}
\ No newline at end of file
diff --git a/source/docs/filters/Brighten.md b/source/docs/filters/Brighten.md
index 20ef9935c..24733f13e 100644
--- a/source/docs/filters/Brighten.md
+++ b/source/docs/filters/Brighten.md
@@ -1,18 +1,18 @@
-title: Brighten Image Tutorial
----
-
-To apply filter to an `Konva.Image`, we have to cache it first with `cache()`
-function. Then apply filter with `filter()` function.
-
-To brighten or darken an image with Konva, we can use the `Konva.Filters.Brighten`
-filter and set the brightness amount with the `brightness` property.
-The `brightness` property can be set to any integer between -1 and 1.
-Negative values darken the image, and positive values brighten the image.
-
-Instructions: Slide the control to adjust the brightness
-
-For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
-
-{% iframe /downloads/code/filters/Brighten.html %}
-
+title: Brighten Image Tutorial
+---
+
+To apply filter to an `Konva.Image`, we have to cache it first with `cache()`
+function. Then apply filter with `filter()` function.
+
+To brighten or darken an image with Konva, we can use the `Konva.Filters.Brighten`
+filter and set the brightness amount with the `brightness` property.
+The `brightness` property can be set to any integer between -1 and 1.
+Negative values darken the image, and positive values brighten the image.
+
+Instructions: Slide the control to adjust the brightness
+
+For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
+
+{% iframe /downloads/code/filters/Brighten.html %}
+
{% include_code Konva Brighten Image Demo filters/Brighten.html %}
\ No newline at end of file
diff --git a/source/docs/filters/Grayscale.md b/source/docs/filters/Grayscale.md
index f293f93d6..4b04643b0 100644
--- a/source/docs/filters/Grayscale.md
+++ b/source/docs/filters/Grayscale.md
@@ -1,13 +1,13 @@
-title: Grayscale Image Tutorial
----
-
-To apply filter to an `Konva.Image`, we have to cache it first with `cache()` function. Then apply filter with `filter()` function.
-
-To invert the colors of an image with Konva, we can use the
-`Konva.Filters.Grayscale` filter.
-
-For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
-
-{% iframe /downloads/code/filters/Grayscale.html %}
-
+title: Grayscale Image Tutorial
+---
+
+To apply filter to an `Konva.Image`, we have to cache it first with `cache()` function. Then apply filter with `filter()` function.
+
+To invert the colors of an image with Konva, we can use the
+`Konva.Filters.Grayscale` filter.
+
+For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
+
+{% iframe /downloads/code/filters/Grayscale.html %}
+
{% include_code Konva Grayscale Image Demo filters/Grayscale.html %}
\ No newline at end of file
diff --git a/source/docs/filters/Invert.md b/source/docs/filters/Invert.md
index 54726fa5f..bce16075a 100644
--- a/source/docs/filters/Invert.md
+++ b/source/docs/filters/Invert.md
@@ -1,13 +1,13 @@
-title: Invert Image Tutorial
----
-
-To apply filter to an `Konva.Image`, we have to cache it first with `cache()` function. Then apply filter with `filter()` function.
-
-To invert the colors of an image with Konva, we can use the
-`Konva.Filters.Invert` filter.
-
-For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
-
-{% iframe /downloads/code/filters/Invert.html %}
-
+title: Invert Image Tutorial
+---
+
+To apply filter to an `Konva.Image`, we have to cache it first with `cache()` function. Then apply filter with `filter()` function.
+
+To invert the colors of an image with Konva, we can use the
+`Konva.Filters.Invert` filter.
+
+For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
+
+{% iframe /downloads/code/filters/Invert.html %}
+
{% include_code Konva Invert Image Demo filters/Invert.html %}
\ No newline at end of file
diff --git a/source/docs/filters/Kaleidoscope.md b/source/docs/filters/Kaleidoscope.md
index 542e0fbcd..9545c6c78 100644
--- a/source/docs/filters/Kaleidoscope.md
+++ b/source/docs/filters/Kaleidoscope.md
@@ -1,16 +1,16 @@
-title: Kaleidoscope Image Tutorial
----
-
-To apply filter to an `Konva.Image`, we have to cache it first with `cache()`
-function. Then apply filter with `filter()` function.
-
-To create a kaleidoscope with Konva, we can use the `Konva.Filters.Kaleidoscope`
-filter and set the `kaleidoscopePower` and `kaleidoscopeAngle` properties.
-
-Instructions: Slide the control to adjust the kaleidoscope angle.
-
-For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
-
-{% iframe /downloads/code/filters/Kaleidoscope.html %}
-
+title: Kaleidoscope Image Tutorial
+---
+
+To apply filter to an `Konva.Image`, we have to cache it first with `cache()`
+function. Then apply filter with `filter()` function.
+
+To create a kaleidoscope with Konva, we can use the `Konva.Filters.Kaleidoscope`
+filter and set the `kaleidoscopePower` and `kaleidoscopeAngle` properties.
+
+Instructions: Slide the control to adjust the kaleidoscope angle.
+
+For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
+
+{% iframe /downloads/code/filters/Kaleidoscope.html %}
+
{% include_code Konva Kaleidoscope Image Demo filters/Kaleidoscope.html %}
\ No newline at end of file
diff --git a/source/docs/filters/Multiple_Filters.md b/source/docs/filters/Multiple_Filters.md
index 23379a4c1..626fd3248 100644
--- a/source/docs/filters/Multiple_Filters.md
+++ b/source/docs/filters/Multiple_Filters.md
@@ -1,11 +1,11 @@
-title: Multiple Filters Tutorial
----
-
-To apply multiple filters to an `Konva.Image`, we have to cache it first with `cache()`
-function. Then apply filters with `filter()` function.
-
-For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
-
-{% iframe /downloads/code/filters/Multiple_Filters.html %}
-
+title: Multiple Filters Tutorial
+---
+
+To apply multiple filters to an `Konva.Image`, we have to cache it first with `cache()`
+function. Then apply filters with `filter()` function.
+
+For all available filters go to [Filters Documentation](http://konvajs.github.io/api/Konva.Filters.html).
+
+{% iframe /downloads/code/filters/Multiple_Filters.html %}
+
{% include_code Konva Multiple Filters Image Demo filters/Multiple_Filters.html %}
\ No newline at end of file
diff --git a/source/docs/groups_and_layers/Change_Containers.md b/source/docs/groups_and_layers/Change_Containers.md
index 5c29038af..afbeea0fc 100644
--- a/source/docs/groups_and_layers/Change_Containers.md
+++ b/source/docs/groups_and_layers/Change_Containers.md
@@ -1,15 +1,15 @@
-title: Move Shape to Another Container
----
-
-To move a shape from one container into another with Konva, we can use the
-`moveTo()` method which requires a container as a parameter.
-A container can be another stage, a layer, or a group. You can also move groups
-into other groups and layers, or shapes from groups directly into other layers.
-
-Instructions: Drag and drop the groups and observe that the red rectangle is
-bound to either the yellow group or the blue group.
-Use the buttons on the left to move the box from one group into another.
-
-{% iframe /downloads/code/groups_and_layers/Change_Containers.html %}
-
+title: Move Shape to Another Container
+---
+
+To move a shape from one container into another with Konva, we can use the
+`moveTo()` method which requires a container as a parameter.
+A container can be another stage, a layer, or a group. You can also move groups
+into other groups and layers, or shapes from groups directly into other layers.
+
+Instructions: Drag and drop the groups and observe that the red rectangle is
+bound to either the yellow group or the blue group.
+Use the buttons on the left to move the box from one group into another.
+
+{% iframe /downloads/code/groups_and_layers/Change_Containers.html %}
+
{% include_code Konva Move Shape to Another Container Demo groups_and_layers/Change_Containers.html %}
\ No newline at end of file
diff --git a/source/docs/groups_and_layers/Clipping_Regions.md b/source/docs/groups_and_layers/Clipping_Regions.md
index f74bc573c..cabec3855 100644
--- a/source/docs/groups_and_layers/Clipping_Regions.md
+++ b/source/docs/groups_and_layers/Clipping_Regions.md
@@ -1,11 +1,11 @@
-title: Clipping Functions
----
-
-To draw things inside of clipping regions with Konva, we can set the `clip`
-property of any container, including a group, a layer, or the stage.
-Clipping regions are defined by an x, y, width, and height. In this tutorial,
-we'll draw blobs inside of a rectangular clipping region applied to a group.
-
-{% iframe /downloads/code/groups_and_layers/Clipping_Regions.html %}
-
+title: Clipping Functions
+---
+
+To draw things inside of clipping regions with Konva, we can set the `clip`
+property of any container, including a group, a layer, or the stage.
+Clipping regions are defined by an x, y, width, and height. In this tutorial,
+we'll draw blobs inside of a rectangular clipping region applied to a group.
+
+{% iframe /downloads/code/groups_and_layers/Clipping_Regions.html %}
+
{% include_code Konva Clipping Functions Demo groups_and_layers/Clipping_Regions.html %}
\ No newline at end of file
diff --git a/source/docs/groups_and_layers/Groups.md b/source/docs/groups_and_layers/Groups.md
index b641b648d..fe74bb55c 100644
--- a/source/docs/groups_and_layers/Groups.md
+++ b/source/docs/groups_and_layers/Groups.md
@@ -1,13 +1,13 @@
-title: Shape Groups
----
-
-To group multiple shapes together with Konva, we can instantiate
-a `Konva.Group()` object and then add shapes to it with the `add()` method.
-Grouping shapes together is really handy when we want to transform multiple
-shapes together, e.g. if we want to move, rotate, or scale multiple shapes
-at once. Groups can also be added to other groups to create more complex
-Node trees. For a full list of attributes and methods, check out the [Konva.Group documentation](http://konvajs.github.io/api/Konva.Group.html).
-
-{% iframe /downloads/code/groups_and_layers/Groups.html %}
-
+title: Shape Groups
+---
+
+To group multiple shapes together with Konva, we can instantiate
+a `Konva.Group()` object and then add shapes to it with the `add()` method.
+Grouping shapes together is really handy when we want to transform multiple
+shapes together, e.g. if we want to move, rotate, or scale multiple shapes
+at once. Groups can also be added to other groups to create more complex
+Node trees. For a full list of attributes and methods, check out the [Konva.Group documentation](http://konvajs.github.io/api/Konva.Group.html).
+
+{% iframe /downloads/code/groups_and_layers/Groups.html %}
+
{% include_code Konva Groups Demo groups_and_layers/Groups.html %}
\ No newline at end of file
diff --git a/source/docs/groups_and_layers/Layering.md b/source/docs/groups_and_layers/Layering.md
index f261c3990..a79a686b2 100644
--- a/source/docs/groups_and_layers/Layering.md
+++ b/source/docs/groups_and_layers/Layering.md
@@ -1,13 +1,13 @@
-title: Shape Layering
----
-
-To layer shapes with Konva, we can use one of the following layering methods:
-`moveToTop()`, `moveToBottom()`, `moveUp()`, `moveDown()`, or `zIndex()`.
-You can also layer groups and layers.
-
-Instructions: Drag and drop the boxes to move them around, and then use the
-buttons on the left to reorder the yellow box.
-
-{% iframe /downloads/code/groups_and_layers/Layering.html %}
-
+title: Shape Layering
+---
+
+To layer shapes with Konva, we can use one of the following layering methods:
+`moveToTop()`, `moveToBottom()`, `moveUp()`, `moveDown()`, or `zIndex()`.
+You can also layer groups and layers.
+
+Instructions: Drag and drop the boxes to move them around, and then use the
+buttons on the left to reorder the yellow box.
+
+{% iframe /downloads/code/groups_and_layers/Layering.html %}
+
{% include_code Konva Shape Layering Demo groups_and_layers/Layering.html %}
\ No newline at end of file
diff --git a/source/docs/how_it_works.md b/source/docs/how_it_works.md
index aed8848a2..34480521a 100644
--- a/source/docs/how_it_works.md
+++ b/source/docs/how_it_works.md
@@ -1,39 +1,39 @@
-title: How It Works
----
-
-Konva stages are made up of user defined layers.
-Each layer has two canvas renderers, a scene renderer and a hit graph renderer.
-The scene renderer is what you can see, and the hit graph renderer is a special hidden
-canvas that's used for high performance event detection.
-
-Each layer can contain shapes, groups of shapes, or groups of other groups.
-The stage, layers, groups, and shapes are virtual nodes, similar to DOM nodes in an HTML page.
-Here's an example Node hierarchy:
-
-```
- Stage
- |
- +------+------+
- | |
- Layer Layer
- | |
- +-----+-----+ Shape
- | |
- Group Group
- | |
- + +---+---+
- | | |
- Shape Group Shape
- |
- +
- |
- Shape
-```
-
-All nodes can be styled and transformed. Although Konva has prebuilt shapes available,
-such as rectangles, circles, images, sprites, text, lines, polygons, regular polygons, paths, stars, etc.,
-you can also create custom shapes by instantiating the Shape class and creating a draw function.
-
-Once you have a stage set up with layers and shapes,
-you can bind event listeners, transform nodes, run animations,
+title: How It Works
+---
+
+Konva stages are made up of user defined layers.
+Each layer has two canvas renderers, a scene renderer and a hit graph renderer.
+The scene renderer is what you can see, and the hit graph renderer is a special hidden
+canvas that's used for high performance event detection.
+
+Each layer can contain shapes, groups of shapes, or groups of other groups.
+The stage, layers, groups, and shapes are virtual nodes, similar to DOM nodes in an HTML page.
+Here's an example Node hierarchy:
+
+```
+ Stage
+ |
+ +------+------+
+ | |
+ Layer Layer
+ | |
+ +-----+-----+ Shape
+ | |
+ Group Group
+ | |
+ + +---+---+
+ | | |
+ Shape Group Shape
+ |
+ +
+ |
+ Shape
+```
+
+All nodes can be styled and transformed. Although Konva has prebuilt shapes available,
+such as rectangles, circles, images, sprites, text, lines, polygons, regular polygons, paths, stars, etc.,
+you can also create custom shapes by instantiating the Shape class and creating a draw function.
+
+Once you have a stage set up with layers and shapes,
+you can bind event listeners, transform nodes, run animations,
apply filters, and much more.
\ No newline at end of file
diff --git a/source/docs/index.md b/source/docs/index.md
index 3f83b3746..93d47a6dd 100644
--- a/source/docs/index.md
+++ b/source/docs/index.md
@@ -1,32 +1,32 @@
-title: Documentation
----
-Welcome to the Konva's documentation. This documentation will help you get started fast.
-If you get any problems when using Konva you can ask me on [GitHub](https://github.com/konvajs/konva/issues).
-
-## What's Konva?
-
-Konva is an HTML5 Canvas JavaScript framework that extends the 2d context
-by enabling canvas interactivity for desktop and mobile applications.
-
-Konva enables high performance animations, transitions, node nesting, layering, filtering,
-caching, event handling for desktop and mobile applications, and much more.
-
-You can draw things onto the stage, add event listeners to them, move them,
-scale them, and rotate them independently from other shapes to support high performance
-animations, even if your application uses thousands of shapes.
-
-This project began as a GitHub fork of [KineticJS](https://github.com/ericdrowell/KineticJS).
-
-## Install Konva
-
-If you are using package managers:
-``` bash
-$ npm install konva
-$ # or
-$ bower install konva
-```
-
-Or download from CDN:
-
-* [Full version konva.js](https://cdn.rawgit.com/konvajs/konva/0.9.0/konva.js)
-* [Min version konva.min.js](https://cdn.rawgit.com/konvajs/konva/0.10.0/konva.min.js)
+title: Documentation
+---
+Welcome to the Konva's documentation. This documentation will help you get started fast.
+If you get any problems when using Konva you can ask me on [GitHub](https://github.com/konvajs/konva/issues).
+
+## What's Konva?
+
+Konva is an HTML5 Canvas JavaScript framework that extends the 2d context
+by enabling canvas interactivity for desktop and mobile applications.
+
+Konva enables high performance animations, transitions, node nesting, layering, filtering,
+caching, event handling for desktop and mobile applications, and much more.
+
+You can draw things onto the stage, add event listeners to them, move them,
+scale them, and rotate them independently from other shapes to support high performance
+animations, even if your application uses thousands of shapes.
+
+This project began as a GitHub fork of [KineticJS](https://github.com/ericdrowell/KineticJS).
+
+## Install Konva
+
+If you are using package managers:
+``` bash
+$ npm install konva
+$ # or
+$ bower install konva
+```
+
+Or download from CDN:
+
+* [Full version konva.js](https://cdn.rawgit.com/konvajs/konva/0.9.0/konva.js)
+* [Min version konva.min.js](https://cdn.rawgit.com/konvajs/konva/0.10.0/konva.min.js)
diff --git a/source/docs/performance/All_Performance_Tips.md b/source/docs/performance/All_Performance_Tips.md
index 94cc15295..2f88d1f95 100644
--- a/source/docs/performance/All_Performance_Tips.md
+++ b/source/docs/performance/All_Performance_Tips.md
@@ -1,19 +1,19 @@
-title: All KonvaJS performance tips list
----
-
-1. [`batchDraw` method](http://konvajs.github.io/docs/performance/Batch_Draw.html)
-2. [Layer Management](http://konvajs.github.io/docs/performance/Layer_Management.html)
-3. [Shape Caching](http://konvajs.github.io/docs/performance/Shape_Caching.html)
-4. [Optimize Animation](http://konvajs.github.io/docs/performance/Optimize_Animation.html)
-5. [Shape Redraw](http://konvajs.github.io/docs/performance/Shape_Redraw.html)
-6. If your shape has only position transformation (`x` and `y`, no `scale`, `rotation`) set `transformsEnabled = 'position'`
-7. If you don't need event on layer set `layer.hitGraphEnabled(false)`. Or use [Konva.FastLayer](http://konvajs.github.io/api/Konva.Group.html). See [Demo](http://konvajs.github.io/docs/sandbox/Animation_Stress_Test.html)
-8. For mobile application set viewport: ``
-9. If you have bad performance on retina devices set `Konva.pixelRatio = 1`. Make sure that quality of result is ok for you.
-10. While dragging a node you can move it on separate layer. Then move it back to original layer.
-11. [Optimize Stroke Drawing](http://konvajs.github.io/docs/performance/Optimize_Strokes.html)
-12. If a shape has fill, stroke and opacity you may set `shape.perfectDrawEnabled(false)`. See demo for more information [Disable Perfect Drawing](http://konvajs.github.io/docs/performance/Disable_Perfect_Draw.html).
-13. Try set `shape.listening(false)` where possible. For more info read [Listening false](http://konvajs.github.io/docs/performance/Listening_False.html).
-14. [Avoid Memory Leaks](http://konvajs.github.io/docs/performance/Avoid_Memory_Leaks.html).
-
-
+title: All KonvaJS performance tips list
+---
+
+1. [`batchDraw` method](http://konvajs.github.io/docs/performance/Batch_Draw.html)
+2. [Layer Management](http://konvajs.github.io/docs/performance/Layer_Management.html)
+3. [Shape Caching](http://konvajs.github.io/docs/performance/Shape_Caching.html)
+4. [Optimize Animation](http://konvajs.github.io/docs/performance/Optimize_Animation.html)
+5. [Shape Redraw](http://konvajs.github.io/docs/performance/Shape_Redraw.html)
+6. If your shape has only position transformation (`x` and `y`, no `scale`, `rotation`) set `transformsEnabled = 'position'`
+7. If you don't need event on layer set `layer.hitGraphEnabled(false)`. Or use [Konva.FastLayer](http://konvajs.github.io/api/Konva.Group.html). See [Demo](http://konvajs.github.io/docs/sandbox/Animation_Stress_Test.html)
+8. For mobile application set viewport: ``
+9. If you have bad performance on retina devices set `Konva.pixelRatio = 1`. Make sure that quality of result is ok for you.
+10. While dragging a node you can move it on separate layer. Then move it back to original layer.
+11. [Optimize Stroke Drawing](http://konvajs.github.io/docs/performance/Optimize_Strokes.html)
+12. If a shape has fill, stroke and opacity you may set `shape.perfectDrawEnabled(false)`. See demo for more information [Disable Perfect Drawing](http://konvajs.github.io/docs/performance/Disable_Perfect_Draw.html).
+13. Try set `shape.listening(false)` where possible. For more info read [Listening false](http://konvajs.github.io/docs/performance/Listening_False.html).
+14. [Avoid Memory Leaks](http://konvajs.github.io/docs/performance/Avoid_Memory_Leaks.html).
+
+
diff --git a/source/docs/performance/Avoid_Memory_Leaks.md b/source/docs/performance/Avoid_Memory_Leaks.md
index 6e14569b6..bc4485a2f 100644
--- a/source/docs/performance/Avoid_Memory_Leaks.md
+++ b/source/docs/performance/Avoid_Memory_Leaks.md
@@ -1,34 +1,34 @@
-title: How to avoid Memory leaks Tip
----
-
-### Deleting shape
-
-There are two very close methods `remove()` and `destroy()`. If you need to completely delete node you need to use `destroy()` method.
-If you are going to reuse node you should `remove()` it then later you may add it again to any container.
-Don't reuse node after `destroy()`. As `destroy()` delete all references to node from KonvaJS engine.
-
-### Tweening
-
-When you are using `Konva.Tween` instance you have to destroy it after usage.
-
-```javascript
-var tween = new Konva.Tween({
- node : circle,
- x : 0,
- duration : 0.5,
- onFinish : function() {
- // remove all references from Konva
- tween.destroy();
- }
-});
-tween.play();
-```
-
-Or if you don't need to reuse tween you may use new `to()` method:
-```javascript
-// tween will be automatically started and destroyed on finish
-circle.to({
- x : 0,
- duration : 0.5
-});
-```
+title: How to avoid Memory leaks Tip
+---
+
+### Deleting shape
+
+There are two very close methods `remove()` and `destroy()`. If you need to completely delete node you need to use `destroy()` method.
+If you are going to reuse node you should `remove()` it then later you may add it again to any container.
+Don't reuse node after `destroy()`. As `destroy()` delete all references to node from KonvaJS engine.
+
+### Tweening
+
+When you are using `Konva.Tween` instance you have to destroy it after usage.
+
+```javascript
+var tween = new Konva.Tween({
+ node : circle,
+ x : 0,
+ duration : 0.5,
+ onFinish : function() {
+ // remove all references from Konva
+ tween.destroy();
+ }
+});
+tween.play();
+```
+
+Or if you don't need to reuse tween you may use new `to()` method:
+```javascript
+// tween will be automatically started and destroyed on finish
+circle.to({
+ x : 0,
+ duration : 0.5
+});
+```
diff --git a/source/docs/performance/Batch_Draw.md b/source/docs/performance/Batch_Draw.md
index 50a6aa447..b7588f7f2 100644
--- a/source/docs/performance/Batch_Draw.md
+++ b/source/docs/performance/Batch_Draw.md
@@ -1,21 +1,21 @@
-title: Batch Draw Tip
----
-
-In some situations, we may want to update a Konva shape as fast as possible,
-but without causing too many redraws. For example, if we want to update an
-element on the stage via mousemove, we don't want to redraw the layer with the
-`draw()` method, because the mousemove event could be fired hundreds of times per
-second, which would result in a forced frame rate of over a hundred frames per second.
-Often times this can cause jumpy animations because browsers simply can't handle excessive redraws.
-
-For situations like this, it's much better to use the `batchDraw()` method
-which automatically hooks redraws into the Konva animation engine.
-No matter how many times you call `batchDraw()`, Konva will automatically
-limit the number of redraws per second based on the maximum number of frames
-per second that the browser can handle at any given point in time.
-
-Instructions: Move your mouse over the stage to spin the rectangle
-
-{% iframe /downloads/code/performance/BatchDraw.html %}
-
-{% include_code Konva Batch Draw Demo performance/BatchDraw.html %}
+title: Batch Draw Tip
+---
+
+In some situations, we may want to update a Konva shape as fast as possible,
+but without causing too many redraws. For example, if we want to update an
+element on the stage via mousemove, we don't want to redraw the layer with the
+`draw()` method, because the mousemove event could be fired hundreds of times per
+second, which would result in a forced frame rate of over a hundred frames per second.
+Often times this can cause jumpy animations because browsers simply can't handle excessive redraws.
+
+For situations like this, it's much better to use the `batchDraw()` method
+which automatically hooks redraws into the Konva animation engine.
+No matter how many times you call `batchDraw()`, Konva will automatically
+limit the number of redraws per second based on the maximum number of frames
+per second that the browser can handle at any given point in time.
+
+Instructions: Move your mouse over the stage to spin the rectangle
+
+{% iframe /downloads/code/performance/BatchDraw.html %}
+
+{% include_code Konva Batch Draw Demo performance/BatchDraw.html %}
diff --git a/source/docs/performance/Disable_Perfect_Draw.md b/source/docs/performance/Disable_Perfect_Draw.md
index 8e23b7745..39b07e463 100644
--- a/source/docs/performance/Disable_Perfect_Draw.md
+++ b/source/docs/performance/Disable_Perfect_Draw.md
@@ -1,27 +1,27 @@
-title: Disable Perfect Drawing Tip
----
-
-In some case drawing on canvas has unexpected result.
-For example let's draw shape with fill, stroke and opacity.
-As stroke are drawn on top of fill. There's a line of half the size of the stroke inside the shape which is darker
-because it's the intersection of the fill and the stroke.
-
-Probably that is not expected for you. So KonvaJS fix such behaviour with using buffer canvas.
-
-In this case KonvaJS doing this:
-1. Draw shape on buffer canvas
-2. Fill and stroke it WITHOUT opacity
-3. Apply opacity on layer's canvas
-4. Then draw on layer canvas result from buffer
-
-But using buffer canvas might drop performace. So you can disable such fixing:
-
-```javascript
-shape.perfectDrawEnabled(false);
-```
-
-See differens here:
-
-{% iframe /downloads/code/performance/Disable_Perfect_Draw.html %}
-
-{% include_code Konva Disable Perfect Drawing Demo performance/Disable_Perfect_Draw.html %}
+title: Disable Perfect Drawing Tip
+---
+
+In some case drawing on canvas has unexpected result.
+For example let's draw shape with fill, stroke and opacity.
+As stroke are drawn on top of fill. There's a line of half the size of the stroke inside the shape which is darker
+because it's the intersection of the fill and the stroke.
+
+Probably that is not expected for you. So KonvaJS fix such behaviour with using buffer canvas.
+
+In this case KonvaJS doing this:
+1. Draw shape on buffer canvas
+2. Fill and stroke it WITHOUT opacity
+3. Apply opacity on layer's canvas
+4. Then draw on layer canvas result from buffer
+
+But using buffer canvas might drop performace. So you can disable such fixing:
+
+```javascript
+shape.perfectDrawEnabled(false);
+```
+
+See differens here:
+
+{% iframe /downloads/code/performance/Disable_Perfect_Draw.html %}
+
+{% include_code Konva Disable Perfect Drawing Demo performance/Disable_Perfect_Draw.html %}
diff --git a/source/docs/performance/Layer_Management.md b/source/docs/performance/Layer_Management.md
index 3f904d3b3..d71185713 100644
--- a/source/docs/performance/Layer_Management.md
+++ b/source/docs/performance/Layer_Management.md
@@ -1,17 +1,17 @@
-title: Layer Management Tip
----
-
-When creating Konva applications, the most important thing to consider,
-in regards to performance, is layer management. One of the things that makes
-Konva stand out from other canvas libraries is that it enables us to create
-individual layers, each with their own canvas elements. This means that we can
-animate, transition, or update some stage elements, while not redrawing others.
-If we inspect the DOM of a Konva stage, we'll see that there is actually one
-canvas element per layer.
-
-This tutorial has two layers, one layer that's animated, and another static layer
-that contains text. Since there's no reason to continually redraw the text, it's placed in its own layer.
-
-{% iframe /downloads/code/performance/Layer_Management.html %}
-
-{% include_code Konva Layer Management Demo performance/Layer_Management.html %}
+title: Layer Management Tip
+---
+
+When creating Konva applications, the most important thing to consider,
+in regards to performance, is layer management. One of the things that makes
+Konva stand out from other canvas libraries is that it enables us to create
+individual layers, each with their own canvas elements. This means that we can
+animate, transition, or update some stage elements, while not redrawing others.
+If we inspect the DOM of a Konva stage, we'll see that there is actually one
+canvas element per layer.
+
+This tutorial has two layers, one layer that's animated, and another static layer
+that contains text. Since there's no reason to continually redraw the text, it's placed in its own layer.
+
+{% iframe /downloads/code/performance/Layer_Management.html %}
+
+{% include_code Konva Layer Management Demo performance/Layer_Management.html %}
diff --git a/source/docs/performance/Listening_False.md b/source/docs/performance/Listening_False.md
index bf9f3ed19..305f7d331 100644
--- a/source/docs/performance/Listening_False.md
+++ b/source/docs/performance/Listening_False.md
@@ -1,12 +1,12 @@
-title: Disable Listening Shapes Tip
----
-
-You can set `listening(false)` to shape to remove it from hit graph. It will increase performance.
-In some cases it may be very useful and will not touch whole logic of your application.
-
-For example we have a button (group) with rectangle and text. We need to listen click on button.
-It this case we can remove text from hit graph and listen click only from rectangle.
-
-{% iframe /downloads/code/performance/Listening_False.html %}
-
-{% include_code Konva Disable Listening Shapes Demo performance/Listening_False.html %}
+title: Disable Listening Shapes Tip
+---
+
+You can set `listening(false)` to shape to remove it from hit graph. It will increase performance.
+In some cases it may be very useful and will not touch whole logic of your application.
+
+For example we have a button (group) with rectangle and text. We need to listen click on button.
+It this case we can remove text from hit graph and listen click only from rectangle.
+
+{% iframe /downloads/code/performance/Listening_False.html %}
+
+{% include_code Konva Disable Listening Shapes Demo performance/Listening_False.html %}
diff --git a/source/docs/performance/Optimize_Animation.md b/source/docs/performance/Optimize_Animation.md
index 0a00a10f4..a65ce7a34 100644
--- a/source/docs/performance/Optimize_Animation.md
+++ b/source/docs/performance/Optimize_Animation.md
@@ -1,10 +1,10 @@
-title: Optimize Animation Tip
----
-
-If you animation have frames without any updates (no nodes are changed) you may `return false` from animation function.
-
-In this case Konva wouldn't update layers.
-
-{% iframe /downloads/code/performance/Optimize_Animation.html %}
-
-{% include_code Konva Optimize Animation Demo performance/Optimize_Animation.html %}
+title: Optimize Animation Tip
+---
+
+If you animation have frames without any updates (no nodes are changed) you may `return false` from animation function.
+
+In this case Konva wouldn't update layers.
+
+{% iframe /downloads/code/performance/Optimize_Animation.html %}
+
+{% include_code Konva Optimize Animation Demo performance/Optimize_Animation.html %}
diff --git a/source/docs/performance/Optimize_Strokes.md b/source/docs/performance/Optimize_Strokes.md
index ba09e2163..96bc3e510 100644
--- a/source/docs/performance/Optimize_Strokes.md
+++ b/source/docs/performance/Optimize_Strokes.md
@@ -1,17 +1,17 @@
-title: Optimizing Strokes Tip
----
-
-### Remove stroke from hit
-
-If you have a shape with fill and very small stroke you can set `shape.strokeHitEnabled(false)` to remove stroke from hit graph.
-Don't use this property if your stroke is critical for hit detection.
-
-### Disable shadow for stroke
-
-If you don't really need shadow for stroke you can set `shape.shadowForStrokeEnabled(false)`.
-Remember that shadow will be disable if you are using `Konva.Line` without fill.
-
-
-{% iframe /downloads/code/performance/Optimize_Strokes.html %}
-
-{% include_code Konva Optimizing Strokes Demo performance/Optimize_Strokes.html %}
+title: Optimizing Strokes Tip
+---
+
+### Remove stroke from hit
+
+If you have a shape with fill and very small stroke you can set `shape.strokeHitEnabled(false)` to remove stroke from hit graph.
+Don't use this property if your stroke is critical for hit detection.
+
+### Disable shadow for stroke
+
+If you don't really need shadow for stroke you can set `shape.shadowForStrokeEnabled(false)`.
+Remember that shadow will be disable if you are using `Konva.Line` without fill.
+
+
+{% iframe /downloads/code/performance/Optimize_Strokes.html %}
+
+{% include_code Konva Optimizing Strokes Demo performance/Optimize_Strokes.html %}
diff --git a/source/docs/performance/Shape_Caching.md b/source/docs/performance/Shape_Caching.md
index 6ae652170..5a11c439c 100644
--- a/source/docs/performance/Shape_Caching.md
+++ b/source/docs/performance/Shape_Caching.md
@@ -1,19 +1,19 @@
-title: Shape Caching Tip
----
-
-One way to drastically improve drawing performance for complex Konva shapes is to cache them as images.
-This can be achieved by using the `cache()` method to convert a node into an image object.
-
-This particular tutorial of drawing 10 cached stars rather than drawing 10 individual
-stars sees about a 4x drawing performance boost. Caching can be applied to any node,
-including the stage, layers, groups, and shapes.
-
-Note: The `cache()` method requires that the image is hosted on a web server with the same domain as the code executing it.
-
-In same cases `cache()` function can not automatically detect size of node.
-So you should be carefull for groups and shapes with shadows and strokes.
-If you see unexpected result pass bound properties to `cache()` function with `x`, `y`, `width` and `height` properties.
-
-{% iframe /downloads/code/performance/Shape_Caching.html %}
-
-{% include_code Konva Shape Caching Demo performance/Shape_Caching.html %}
+title: Shape Caching Tip
+---
+
+One way to drastically improve drawing performance for complex Konva shapes is to cache them as images.
+This can be achieved by using the `cache()` method to convert a node into an image object.
+
+This particular tutorial of drawing 10 cached stars rather than drawing 10 individual
+stars sees about a 4x drawing performance boost. Caching can be applied to any node,
+including the stage, layers, groups, and shapes.
+
+Note: The `cache()` method requires that the image is hosted on a web server with the same domain as the code executing it.
+
+In same cases `cache()` function can not automatically detect size of node.
+So you should be carefull for groups and shapes with shadows and strokes.
+If you see unexpected result pass bound properties to `cache()` function with `x`, `y`, `width` and `height` properties.
+
+{% iframe /downloads/code/performance/Shape_Caching.html %}
+
+{% include_code Konva Shape Caching Demo performance/Shape_Caching.html %}
diff --git a/source/docs/performance/Shape_Redraw.md b/source/docs/performance/Shape_Redraw.md
index 22fce8db6..bdc77b037 100644
--- a/source/docs/performance/Shape_Redraw.md
+++ b/source/docs/performance/Shape_Redraw.md
@@ -1,14 +1,14 @@
-title: Shape Redraw Tip
----
-
-Usually when you need to update your canvas you should call `layer.draw()`.
-
-But in small set of cases it is possible to update `Konva.Node` without updating whole layer.
-You can call `shape.draw()`, *BUT remember that in this case shape will be drawn OVER existing canvas*.
-So it is not possible to use this tip if your node should be placed under other nodes or if it has an opacity.
-
-Instructions: mouseover boxes to hightlight.
-
-{% iframe /downloads/code/performance/Shape_Redraw.html %}
-
-{% include_code Konva Shape Redraw Demo performance/Shape_Redraw.html %}
+title: Shape Redraw Tip
+---
+
+Usually when you need to update your canvas you should call `layer.draw()`.
+
+But in small set of cases it is possible to update `Konva.Node` without updating whole layer.
+You can call `shape.draw()`, *BUT remember that in this case shape will be drawn OVER existing canvas*.
+So it is not possible to use this tip if your node should be placed under other nodes or if it has an opacity.
+
+Instructions: mouseover boxes to hightlight.
+
+{% iframe /downloads/code/performance/Shape_Redraw.html %}
+
+{% include_code Konva Shape Redraw Demo performance/Shape_Redraw.html %}
diff --git a/source/docs/sandbox/10000_Shapes_with_Tooltip.md b/source/docs/sandbox/10000_Shapes_with_Tooltip.md
index 8705123ec..d597c9366 100644
--- a/source/docs/sandbox/10000_Shapes_with_Tooltip.md
+++ b/source/docs/sandbox/10000_Shapes_with_Tooltip.md
@@ -1,6 +1,6 @@
-title: 10,000 Shapes with Tooltips Stress Test with Konva
----
-
-{% iframe /downloads/code/sandbox/10000_Shapes_With_Tooltip.html %}
-
+title: 10,000 Shapes with Tooltips Stress Test with Konva
+---
+
+{% iframe /downloads/code/sandbox/10000_Shapes_With_Tooltip.html %}
+
{% include_code Konva 10,000 Shapes with Tooltips Demo sandbox/10000_Shapes_With_Tooltip.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/20000_Nodes.md b/source/docs/sandbox/20000_Nodes.md
index 7693a1e52..3f8f127f3 100644
--- a/source/docs/sandbox/20000_Nodes.md
+++ b/source/docs/sandbox/20000_Nodes.md
@@ -1,10 +1,10 @@
-title: Interactive Scatter Plot with 20,000 Nodes
----
-
-The purpose of this lab is to demonstrate she shear number of nodes that Konva can handle by rendering 20,000 circles which are sensitive to mouseover events and can be drag and dropped. This lab is also a great demonstration of event delegation, in which a single event handler attached to the stage handles the circle events.
-
-Instructions: Mouse over the nodes to see more information and then drag and drop them around the stage.
-
-{% iframe /downloads/code/sandbox/20000_Nodes.html %}
-
+title: Interactive Scatter Plot with 20,000 Nodes
+---
+
+The purpose of this lab is to demonstrate she shear number of nodes that Konva can handle by rendering 20,000 circles which are sensitive to mouseover events and can be drag and dropped. This lab is also a great demonstration of event delegation, in which a single event handler attached to the stage handles the circle events.
+
+Instructions: Mouse over the nodes to see more information and then drag and drop them around the stage.
+
+{% iframe /downloads/code/sandbox/20000_Nodes.html %}
+
{% include_code Konva 20000 Nodes Demo sandbox/20000_Nodes.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Animals_on_the_Beach_Game.md b/source/docs/sandbox/Animals_on_the_Beach_Game.md
index 1bedce039..88c30408c 100644
--- a/source/docs/sandbox/Animals_on_the_Beach_Game.md
+++ b/source/docs/sandbox/Animals_on_the_Beach_Game.md
@@ -1,6 +1,6 @@
-title: Animals on the Beach Game
----
-
-{% iframe /downloads/code/sandbox/Animals_on_the_Beach_Game.html 578 530 %}
-
+title: Animals on the Beach Game
+---
+
+{% iframe /downloads/code/sandbox/Animals_on_the_Beach_Game.html 578 530 %}
+
{% include_code Konva Animals on the Beach Game Demo sandbox/Animals_on_the_Beach_Game.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Animation_Stress_Test.md b/source/docs/sandbox/Animation_Stress_Test.md
index 2d055d607..33cc80105 100644
--- a/source/docs/sandbox/Animation_Stress_Test.md
+++ b/source/docs/sandbox/Animation_Stress_Test.md
@@ -1,6 +1,6 @@
-title: Animation Stress Test
----
-
-{% iframe /downloads/code/sandbox/Animation_Stress_Test.html %}
-
+title: Animation Stress Test
+---
+
+{% iframe /downloads/code/sandbox/Animation_Stress_Test.html %}
+
{% include_code Konva Animation Stress Test Demo sandbox/Animation_Stress_Test.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Drag_and_Drop_Multiple_Shapes.md b/source/docs/sandbox/Drag_and_Drop_Multiple_Shapes.md
index e2643df0d..f23f55793 100644
--- a/source/docs/sandbox/Drag_and_Drop_Multiple_Shapes.md
+++ b/source/docs/sandbox/Drag_and_Drop_Multiple_Shapes.md
@@ -1,8 +1,8 @@
-title: Drag and Drop Multiple Shapes
----
-
-Instructions: Drag and drop the shapes or remove them by double clicking or double tapping.
-
-{% iframe /downloads/code/sandbox/Drag_And_Drop_Multiple_Shapes.html %}
-
+title: Drag and Drop Multiple Shapes
+---
+
+Instructions: Drag and drop the shapes or remove them by double clicking or double tapping.
+
+{% iframe /downloads/code/sandbox/Drag_And_Drop_Multiple_Shapes.html %}
+
{% include_code Konva Drag and Drop Multiple Shapes Demo sandbox/Drag_And_Drop_Multiple_Shapes.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Drag_and_Drop_Stress_Test.md b/source/docs/sandbox/Drag_and_Drop_Stress_Test.md
index 1fe2c69d1..e16fc6070 100644
--- a/source/docs/sandbox/Drag_and_Drop_Stress_Test.md
+++ b/source/docs/sandbox/Drag_and_Drop_Stress_Test.md
@@ -1,6 +1,6 @@
-title: Drag and Drop Stress Test with 10,000 Shapes
----
-
-{% iframe /downloads/code/sandbox/Drag_And_Drop_Stress_Test.html %}
-
+title: Drag and Drop Stress Test with 10,000 Shapes
+---
+
+{% iframe /downloads/code/sandbox/Drag_And_Drop_Stress_Test.html %}
+
{% include_code Konva Drag and Drop Stress Test with 10,000 Shapes Demo sandbox/Drag_And_Drop_Stress_Test.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Elastic_Stars.md b/source/docs/sandbox/Elastic_Stars.md
index f46d461fe..55fea273b 100644
--- a/source/docs/sandbox/Elastic_Stars.md
+++ b/source/docs/sandbox/Elastic_Stars.md
@@ -1,8 +1,8 @@
-title: Elastic Stars
----
-
-Instructions: Drag and drop the stars and observe the elastic drop on dragend. Refresh the page to randomize the stars again.
-
-{% iframe /downloads/code/sandbox/Elastic_Stars.html %}
-
+title: Elastic Stars
+---
+
+Instructions: Drag and drop the stars and observe the elastic drop on dragend. Refresh the page to randomize the stars again.
+
+{% iframe /downloads/code/sandbox/Elastic_Stars.html %}
+
{% include_code Konva Elastic Stars Demo sandbox/Elastic_Stars.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Expand_Images_on_Hover.md b/source/docs/sandbox/Expand_Images_on_Hover.md
index f31754519..bf4e32977 100644
--- a/source/docs/sandbox/Expand_Images_on_Hover.md
+++ b/source/docs/sandbox/Expand_Images_on_Hover.md
@@ -1,8 +1,8 @@
-title: Expand Image on Hover
----
-
-Instructions: Mouseover images.
-
-{% iframe /downloads/code/sandbox/Expand_Image_On_Hover.html %}
-
-{% include_code Konva Expand Image on Hover Demo sandbox/Expand_Image_On_Hover.html %}
+title: Expand Image on Hover
+---
+
+Instructions: Mouseover images.
+
+{% iframe /downloads/code/sandbox/Expand_Image_On_Hover.html %}
+
+{% include_code Konva Expand Image on Hover Demo sandbox/Expand_Image_On_Hover.html %}
diff --git a/source/docs/sandbox/Free_Drawing.md b/source/docs/sandbox/Free_Drawing.md
index 4ecbb50b9..fe455a0c4 100644
--- a/source/docs/sandbox/Free_Drawing.md
+++ b/source/docs/sandbox/Free_Drawing.md
@@ -1,8 +1,8 @@
-title: Free Drawing Konva Demo
----
-
-Instructions: Try on draw on stroked area
-
-{% iframe /downloads/code/sandbox/Free_Drawing.html %}
-
-{% include_code Konva Elastic Stars Demo sandbox/Free_Drawing.html %}
+title: Free Drawing Konva Demo
+---
+
+Instructions: Try on draw on stroked area
+
+{% iframe /downloads/code/sandbox/Free_Drawing.html %}
+
+{% include_code Konva Elastic Stars Demo sandbox/Free_Drawing.html %}
diff --git a/source/docs/sandbox/Image_Border_Highlighting.md b/source/docs/sandbox/Image_Border_Highlighting.md
index 4c4b59319..26bf8bcc2 100644
--- a/source/docs/sandbox/Image_Border_Highlighting.md
+++ b/source/docs/sandbox/Image_Border_Highlighting.md
@@ -1,7 +1,7 @@
-title: Drag and Drop Multiple Images with Border Highlighting
----
-
-{% iframe /downloads/code/sandbox/Image_Border_Highlighting.html %}
-
-{% include_code Konva Image Border Highlighting Demo sandbox/Image_Border_Highlighting.html %}
-
+title: Drag and Drop Multiple Images with Border Highlighting
+---
+
+{% iframe /downloads/code/sandbox/Image_Border_Highlighting.html %}
+
+{% include_code Konva Image Border Highlighting Demo sandbox/Image_Border_Highlighting.html %}
+
diff --git a/source/docs/sandbox/Image_Resize.md b/source/docs/sandbox/Image_Resize.md
index d203bd4da..56eeb4b7e 100644
--- a/source/docs/sandbox/Image_Resize.md
+++ b/source/docs/sandbox/Image_Resize.md
@@ -1,6 +1,6 @@
-title: Drag, Drop, and Resize Images
----
-
-{% iframe /downloads/code/sandbox/Image_Resize.html %}
-
-{% include_code Konva Drag, Drop, and Resize Images Demo sandbox/Image_Resize.html %}
+title: Drag, Drop, and Resize Images
+---
+
+{% iframe /downloads/code/sandbox/Image_Resize.html %}
+
+{% include_code Konva Drag, Drop, and Resize Images Demo sandbox/Image_Resize.html %}
diff --git a/source/docs/sandbox/Interactive_Building_Map.md b/source/docs/sandbox/Interactive_Building_Map.md
index bac68a842..445fa086d 100644
--- a/source/docs/sandbox/Interactive_Building_Map.md
+++ b/source/docs/sandbox/Interactive_Building_Map.md
@@ -1,8 +1,8 @@
-title: Interactive Building Map
----
-
-Instructions: hover over sections of the building to see its description
-
-{% iframe /downloads/code/sandbox/Interactive_Building_Map.html %}
-
+title: Interactive Building Map
+---
+
+Instructions: hover over sections of the building to see its description
+
+{% iframe /downloads/code/sandbox/Interactive_Building_Map.html %}
+
{% include_code Konva Interactive Building Map Demo sandbox/Interactive_Building_Map.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Modify_Curves_with_Anchor_Points.md b/source/docs/sandbox/Modify_Curves_with_Anchor_Points.md
index 8038b2cad..4c033828b 100644
--- a/source/docs/sandbox/Modify_Curves_with_Anchor_Points.md
+++ b/source/docs/sandbox/Modify_Curves_with_Anchor_Points.md
@@ -1,9 +1,9 @@
-title: Modify Curves with Anchor Points
----
-
-Instructions: Use your mouse or finger and drag and drop the anchor points to
-modify the curvature of the quadratic curve and the Bezier curve.
-
-{% iframe /downloads/code/sandbox/Modify_Curves_with_Anchor_Points.html %}
-
+title: Modify Curves with Anchor Points
+---
+
+Instructions: Use your mouse or finger and drag and drop the anchor points to
+modify the curvature of the quadratic curve and the Bezier curve.
+
+{% iframe /downloads/code/sandbox/Modify_Curves_with_Anchor_Points.html %}
+
{% include_code Konva Modify Curves with Anchor Points Demo sandbox/Modify_Curves_with_Anchor_Points.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Modify_Shape_Color_on_Click.md b/source/docs/sandbox/Modify_Shape_Color_on_Click.md
index 805ca2307..3a7996ca0 100644
--- a/source/docs/sandbox/Modify_Shape_Color_on_Click.md
+++ b/source/docs/sandbox/Modify_Shape_Color_on_Click.md
@@ -1,8 +1,8 @@
-title: Modify Shape Color on Click
----
-
-Instructions: Click on a shape to change its color
-
-{% iframe /downloads/code/sandbox/Modify_Shape_Color_on_Click.html %}
-
+title: Modify Shape Color on Click
+---
+
+Instructions: Click on a shape to change its color
+
+{% iframe /downloads/code/sandbox/Modify_Shape_Color_on_Click.html %}
+
{% include_code Konva Modify Shape Color on Click sandbox/Modify_Shape_Color_on_Click.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Multi-touch_Scale_Shape.md b/source/docs/sandbox/Multi-touch_Scale_Shape.md
index 19ab44e3d..4744c89c2 100644
--- a/source/docs/sandbox/Multi-touch_Scale_Shape.md
+++ b/source/docs/sandbox/Multi-touch_Scale_Shape.md
@@ -1,10 +1,10 @@
-title: Multi-touch Scale Shape
----
-
-Note: This lab only works on devices that support multi-touch gestures such as iOS because it makes use of multiple touch events.
-
-Instructions: Using a mobile device that supports multi-touch gestures such as iOS, drag and drop a shape by touching it and then dragging your finger across the screen, activate a shape by tapping on it, and scale an active shape by pinching the screen.
-
-{% iframe /downloads/code/sandbox/Multi-touch_Scale_Shape.html %}
-
+title: Multi-touch Scale Shape
+---
+
+Note: This lab only works on devices that support multi-touch gestures such as iOS because it makes use of multiple touch events.
+
+Instructions: Using a mobile device that supports multi-touch gestures such as iOS, drag and drop a shape by touching it and then dragging your finger across the screen, activate a shape by tapping on it, and scale an active shape by pinching the screen.
+
+{% iframe /downloads/code/sandbox/Multi-touch_Scale_Shape.html %}
+
{% include_code Konva Multi-touch Scale Shape sandbox/Multi-touch_Scale_Shape.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Multi-touch_Scale_Stage.md b/source/docs/sandbox/Multi-touch_Scale_Stage.md
index aef519101..e19bccac1 100644
--- a/source/docs/sandbox/Multi-touch_Scale_Stage.md
+++ b/source/docs/sandbox/Multi-touch_Scale_Stage.md
@@ -1,10 +1,10 @@
-title: Multi-touch Scale Stage
----
-
-Note: This lab only works on devices that support multi-touch gestures such as iOS because it makes use of multiple touch events.
-
-Instructions: Using a mobile device that supports multi-touch gestures such as iOS, use two fingers to zoom in or out of the stage
-
-{% iframe /downloads/code/sandbox/Multi-touch_Scale_Stage.html %}
-
+title: Multi-touch Scale Stage
+---
+
+Note: This lab only works on devices that support multi-touch gestures such as iOS because it makes use of multiple touch events.
+
+Instructions: Using a mobile device that supports multi-touch gestures such as iOS, use two fingers to zoom in or out of the stage
+
+{% iframe /downloads/code/sandbox/Multi-touch_Scale_Stage.html %}
+
{% include_code Konva Multi-touch Scale Stage sandbox/Multi-touch_Scale_Stage.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Physics_Simulator.md b/source/docs/sandbox/Physics_Simulator.md
index 423ebac01..de5dfca50 100644
--- a/source/docs/sandbox/Physics_Simulator.md
+++ b/source/docs/sandbox/Physics_Simulator.md
@@ -1,8 +1,8 @@
-title: Physics Simulator with Curve Detection
----
-
-Instructions: Throw the ball around with your cursor.
-
-{% iframe /downloads/code/sandbox/Physics_Simulator.html %}
-
+title: Physics Simulator with Curve Detection
+---
+
+Instructions: Throw the ball around with your cursor.
+
+{% iframe /downloads/code/sandbox/Physics_Simulator.html %}
+
{% include_code Konva Physics Simulator with Curve Detection sandbox/Physics_Simulator.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Planets_Image_Map.md b/source/docs/sandbox/Planets_Image_Map.md
index e0dabbf7b..dc8e3382a 100644
--- a/source/docs/sandbox/Planets_Image_Map.md
+++ b/source/docs/sandbox/Planets_Image_Map.md
@@ -1,8 +1,8 @@
-title: Planets Image Map
----
-
-Instructions: Mouse over the planets to see their names and use the check box to show and hide the map overlay.
-
-{% iframe /downloads/code/sandbox/Planets_Image_Map.html %}
-
+title: Planets Image Map
+---
+
+Instructions: Mouse over the planets to see their names and use the check box to show and hide the map overlay.
+
+{% iframe /downloads/code/sandbox/Planets_Image_Map.html %}
+
{% include_code Konva Planets Image Map sandbox/Planets_Image_Map.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Quantum_Squiggle.md b/source/docs/sandbox/Quantum_Squiggle.md
index f14c698d6..747cf9a43 100644
--- a/source/docs/sandbox/Quantum_Squiggle.md
+++ b/source/docs/sandbox/Quantum_Squiggle.md
@@ -1,8 +1,8 @@
-title: Oscillating Blobs
----
-
-Instructions: Refresh the page to generate new blobs. You can also drag and drop the blobs as they animate.
-
-{% iframe /downloads/code/sandbox/Quantum_Squiggle.html %}
-
+title: Oscillating Blobs
+---
+
+Instructions: Refresh the page to generate new blobs. You can also drag and drop the blobs as they animate.
+
+{% iframe /downloads/code/sandbox/Quantum_Squiggle.html %}
+
{% include_code Konva Quantum Squiggle Demo sandbox/Quantum_Squiggle.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Shape_Tango.md b/source/docs/sandbox/Shape_Tango.md
index 903c42e56..31109f064 100644
--- a/source/docs/sandbox/Shape_Tango.md
+++ b/source/docs/sandbox/Shape_Tango.md
@@ -1,9 +1,9 @@
-title: Shape Tango
----
-#HTML5 Canvas Shape Tango with Konva
-
-Instructions: drag and drop the shapes and press the "Tango" button to make the shapes move. refresh the page to generate new random shapes.
-
-{% iframe /downloads/code/sandbox/Shape_Tango.html %}
-
+title: Shape Tango
+---
+#HTML5 Canvas Shape Tango with Konva
+
+Instructions: drag and drop the shapes and press the "Tango" button to make the shapes move. refresh the page to generate new random shapes.
+
+{% iframe /downloads/code/sandbox/Shape_Tango.html %}
+
{% include_code Konva Shape Tango sandbox/Shape_Tango.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Shape_Tooltips.md b/source/docs/sandbox/Shape_Tooltips.md
index 92295ca82..27d785bb7 100644
--- a/source/docs/sandbox/Shape_Tooltips.md
+++ b/source/docs/sandbox/Shape_Tooltips.md
@@ -1,9 +1,9 @@
-title: Shape Tooltips
----
-#HTML5 Canvas Shape Tooltips with Konva
-
-Instructions: Mousemove over shape to see the tooltip.
-
-{% iframe /downloads/code/sandbox/Shape_Tooltips.html %}
-
+title: Shape Tooltips
+---
+#HTML5 Canvas Shape Tooltips with Konva
+
+Instructions: Mousemove over shape to see the tooltip.
+
+{% iframe /downloads/code/sandbox/Shape_Tooltips.html %}
+
{% include_code Konva Shape Tooltips sandbox/Shape_Tooltips.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Star_Spiner.md b/source/docs/sandbox/Star_Spiner.md
index 2ad27f3d9..dcd9be3ad 100644
--- a/source/docs/sandbox/Star_Spiner.md
+++ b/source/docs/sandbox/Star_Spiner.md
@@ -1,8 +1,8 @@
-title: Star Spinner
----
-
-Instructions: Spin the star with your mouse.
-
-{% iframe /downloads/code/sandbox/Star_Spinner.html %}
-
+title: Star Spinner
+---
+
+Instructions: Spin the star with your mouse.
+
+{% iframe /downloads/code/sandbox/Star_Spinner.html %}
+
{% include_code Konva Star Spinner sandbox/Star_Spinner.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Wheel_of_Fortune.md b/source/docs/sandbox/Wheel_of_Fortune.md
index 054d3407b..223b88305 100644
--- a/source/docs/sandbox/Wheel_of_Fortune.md
+++ b/source/docs/sandbox/Wheel_of_Fortune.md
@@ -1,8 +1,8 @@
-title: Wheel of Fortune
----
-
-Instructions: Spin the wheel and make a fortune!
-
-{% iframe /downloads/code/sandbox/Wheel_of_Fortune.html %}
-
+title: Wheel of Fortune
+---
+
+Instructions: Spin the wheel and make a fortune!
+
+{% iframe /downloads/code/sandbox/Wheel_of_Fortune.html %}
+
{% include_code Konva Wheel of Fortune sandbox/Wheel_of_Fortune.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/Zoom_Layer_On_hover.md b/source/docs/sandbox/Zoom_Layer_On_hover.md
index 65f264898..5f9163180 100644
--- a/source/docs/sandbox/Zoom_Layer_On_hover.md
+++ b/source/docs/sandbox/Zoom_Layer_On_hover.md
@@ -1,8 +1,8 @@
-title: Zoom Image on Hover
----
-
-Instructions: Hover over an Image.
-
-{% iframe /downloads/code/sandbox/Zoom_Layer_On_Hover.html %}
-
+title: Zoom Image on Hover
+---
+
+Instructions: Hover over an Image.
+
+{% iframe /downloads/code/sandbox/Zoom_Layer_On_Hover.html %}
+
{% include_code Konva Zoom Image on Hover Demo sandbox/Zoom_Layer_On_Hover.html %}
\ No newline at end of file
diff --git a/source/docs/sandbox/index.md b/source/docs/sandbox/index.md
index cad4bf05b..bbcc24b7a 100644
--- a/source/docs/sandbox/index.md
+++ b/source/docs/sandbox/index.md
@@ -1,27 +1,27 @@
-title: Demos
----
-
-### [Free Drawing](Free_Drawing.html)
-### [Zoom Layer On hover](Zoom_Layer_On_hover.html)
-### [Wheel of Fortune](Wheel_of_Fortune.html)
-### [Quantum Squiggle](Quantum_Squiggle.html)
-### [20000 Nodes](20000_Nodes.html)
-### [Elastic Stars](Elastic_Stars.html)
-### [Shape Tango](Shape_Tango.html)
-### [Multi-touch Scale Shape](Multi-touch_Scale_Shape.html)
-### [Multi-touch Scale Stage](Multi-touch_Scale_Stage.html)
-### [Interactive Building Map](Interactive_Building_Map.html)
-### [Modify Curves with Anchor Points](Modify_Curves_with_Anchor_Points.html)
-### [Drag and Drop Stress Test](Drag_and_Drop_Stress_Test.html)
-### [Animals on the Beach Game](Animals_on_the_Beach_Game.html)
-### [Animation Stress Test](Animation_Stress_Test.html)
-### [10000 Shapes with Tooltips](10000_Shapes_with_Tooltip.html)
-### [Modify Shape Color on Click](Modify_Shape_Color_on_Click.html)
-### [Physics Simulator](Physics_Simulator.html)
-### [Expand Images on Hover](Expand_Images_on_Hover.html)
-### [Planets Image Map](Planets_Image_Map.html)
-### [Image Resize](Image_Resize.html)
-### [Shape Tooltips](Shape_Tooltips.html)
-### [Star Spiner](Star_Spiner.html)
-### [Drag and Drop Multiple Shapes](Drag_and_Drop_Multiple_Shapes.html)
-### [Image Border Highlighting](Image_Border_Highlighting.html)
+title: Demos
+---
+
+### [Free Drawing](Free_Drawing.html)
+### [Zoom Layer On hover](Zoom_Layer_On_hover.html)
+### [Wheel of Fortune](Wheel_of_Fortune.html)
+### [Quantum Squiggle](Quantum_Squiggle.html)
+### [20000 Nodes](20000_Nodes.html)
+### [Elastic Stars](Elastic_Stars.html)
+### [Shape Tango](Shape_Tango.html)
+### [Multi-touch Scale Shape](Multi-touch_Scale_Shape.html)
+### [Multi-touch Scale Stage](Multi-touch_Scale_Stage.html)
+### [Interactive Building Map](Interactive_Building_Map.html)
+### [Modify Curves with Anchor Points](Modify_Curves_with_Anchor_Points.html)
+### [Drag and Drop Stress Test](Drag_and_Drop_Stress_Test.html)
+### [Animals on the Beach Game](Animals_on_the_Beach_Game.html)
+### [Animation Stress Test](Animation_Stress_Test.html)
+### [10000 Shapes with Tooltips](10000_Shapes_with_Tooltip.html)
+### [Modify Shape Color on Click](Modify_Shape_Color_on_Click.html)
+### [Physics Simulator](Physics_Simulator.html)
+### [Expand Images on Hover](Expand_Images_on_Hover.html)
+### [Planets Image Map](Planets_Image_Map.html)
+### [Image Resize](Image_Resize.html)
+### [Shape Tooltips](Shape_Tooltips.html)
+### [Star Spiner](Star_Spiner.html)
+### [Drag and Drop Multiple Shapes](Drag_and_Drop_Multiple_Shapes.html)
+### [Image Border Highlighting](Image_Border_Highlighting.html)
diff --git a/source/docs/selectors/Select_by_Name.md b/source/docs/selectors/Select_by_Name.md
index cd483f4df..7760098a7 100644
--- a/source/docs/selectors/Select_by_Name.md
+++ b/source/docs/selectors/Select_by_Name.md
@@ -1,11 +1,11 @@
-title: Select Shape by Name Tutorial
----
-
-To select shapes by name with Konva, we can use the `find()` method using the `.` selector.
-The `find()` method returns an array of nodes that match the selector string.
-The return array is a `Konva.Collection` array, which is basically a typical JavaScript array with a special `each()` method.
-The `each()` method enables us to quickly iterate through every node in the array.
-
-{% iframe /downloads/code/selectors/Select_by_Name.html %}
-
+title: Select Shape by Name Tutorial
+---
+
+To select shapes by name with Konva, we can use the `find()` method using the `.` selector.
+The `find()` method returns an array of nodes that match the selector string.
+The return array is a `Konva.Collection` array, which is basically a typical JavaScript array with a special `each()` method.
+The `each()` method enables us to quickly iterate through every node in the array.
+
+{% iframe /downloads/code/selectors/Select_by_Name.html %}
+
{% include_code Konva Select Shape by Name Demo selectors/Select_by_Name.html %}
\ No newline at end of file
diff --git a/source/docs/selectors/Select_by_Type.md b/source/docs/selectors/Select_by_Type.md
index 93852d281..01b72323f 100644
--- a/source/docs/selectors/Select_by_Type.md
+++ b/source/docs/selectors/Select_by_Type.md
@@ -1,11 +1,11 @@
-title: Select Shape by Type Tutorial
----
-
-To select shapes by type with Konva, we can use the `find()` method with the name of the type or class name.
-The `find()` method returns an array of nodes that match the selector string.
-The return array is a `Konva.Collection` array, which is basically a typical JavaScript array with a special `each()` method.
-The `each()` method enables us to quickly iterate through every node in the array.
-
-{% iframe /downloads/code/selectors/Select_by_Type.html %}
-
+title: Select Shape by Type Tutorial
+---
+
+To select shapes by type with Konva, we can use the `find()` method with the name of the type or class name.
+The `find()` method returns an array of nodes that match the selector string.
+The return array is a `Konva.Collection` array, which is basically a typical JavaScript array with a special `each()` method.
+The `each()` method enables us to quickly iterate through every node in the array.
+
+{% iframe /downloads/code/selectors/Select_by_Type.html %}
+
{% include_code Konva Select Shape by Type Demo selectors/Select_by_Type.html %}
\ No newline at end of file
diff --git a/source/docs/selectors/Select_by_id.md b/source/docs/selectors/Select_by_id.md
index 071a95814..279ce3c96 100644
--- a/source/docs/selectors/Select_by_id.md
+++ b/source/docs/selectors/Select_by_id.md
@@ -1,13 +1,13 @@
-title: Select Shape by id Tutorial
----
-
-To select a shape by id with Konva, we can use the `find()` method using the # selector.
-The `find()` method always returns an array of elements, even if we are expecting it to return one element.
-if you need only one element you can use `findOne()` method.
-The `find()` method works for any node, including the stage, layers, groups, and shapes.
-
-Instructions: press the "Activate Rectangle" button to select the rectangle by id and perform a transition. You can also drag and drop the rectangle.
-
-{% iframe /downloads/code/selectors/Select_by_id.html %}
-
+title: Select Shape by id Tutorial
+---
+
+To select a shape by id with Konva, we can use the `find()` method using the # selector.
+The `find()` method always returns an array of elements, even if we are expecting it to return one element.
+if you need only one element you can use `findOne()` method.
+The `find()` method works for any node, including the stage, layers, groups, and shapes.
+
+Instructions: press the "Activate Rectangle" button to select the rectangle by id and perform a transition. You can also drag and drop the rectangle.
+
+{% iframe /downloads/code/selectors/Select_by_id.html %}
+
{% include_code Konva Select Shape by id Demo selectors/Select_by_id.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Arc.md b/source/docs/shapes/Arc.md
index 10bd486a0..30fff3cba 100644
--- a/source/docs/shapes/Arc.md
+++ b/source/docs/shapes/Arc.md
@@ -1,10 +1,10 @@
-title: Arc Tutorial
----
-
-To create a ring shape with `Konva`, we can instantiate a `Konva.Arc()` object.
-
-For a full list of attributes and methods, check out the [Konva.Arc documentation](http://konvajs.github.io/api/Konva.Arc.html).
-
-{% iframe /downloads/code/shapes/Arc.html %}
-
-{% include_code Konva Arc Demo shapes/Arc.html %}
+title: Arc Tutorial
+---
+
+To create a ring shape with `Konva`, we can instantiate a `Konva.Arc()` object.
+
+For a full list of attributes and methods, check out the [Konva.Arc documentation](http://konvajs.github.io/api/Konva.Arc.html).
+
+{% iframe /downloads/code/shapes/Arc.html %}
+
+{% include_code Konva Arc Demo shapes/Arc.html %}
diff --git a/source/docs/shapes/Arrow.md b/source/docs/shapes/Arrow.md
index 14a29453a..5b07dcf7f 100644
--- a/source/docs/shapes/Arrow.md
+++ b/source/docs/shapes/Arrow.md
@@ -1,10 +1,10 @@
-title: Arrow Tutorial
----
-
-To create an arrow with `Konva`, we can instantiate a `Konva.Arrow()` object.
-
-For a full list of attributes and methods, check out the [Konva.Arrow documentation](http://konvajs.github.io/api/Konva.Arrow.html).
-
-{% iframe /downloads/code/shapes/Arrow.html %}
-
+title: Arrow Tutorial
+---
+
+To create an arrow with `Konva`, we can instantiate a `Konva.Arrow()` object.
+
+For a full list of attributes and methods, check out the [Konva.Arrow documentation](http://konvajs.github.io/api/Konva.Arrow.html).
+
+{% iframe /downloads/code/shapes/Arrow.html %}
+
{% include_code Konva Arrow Demo shapes/Arrow.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Circle.md b/source/docs/shapes/Circle.md
index 944b2a460..8e2d63883 100644
--- a/source/docs/shapes/Circle.md
+++ b/source/docs/shapes/Circle.md
@@ -1,10 +1,10 @@
-title: Circle Tutorial
----
-
-To create a circle with `Konva`, we can instantiate a `Konva.Circle()` object.
-
-For a full list of attributes and methods, check out the [Konva.Circle documentation](http://konvajs.github.io/api/Konva.Circle.html).
-
-{% iframe /downloads/code/shapes/Circle.html %}
-
+title: Circle Tutorial
+---
+
+To create a circle with `Konva`, we can instantiate a `Konva.Circle()` object.
+
+For a full list of attributes and methods, check out the [Konva.Circle documentation](http://konvajs.github.io/api/Konva.Circle.html).
+
+{% iframe /downloads/code/shapes/Circle.html %}
+
{% include_code Konva Circle Demo shapes/Circle.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Custom.md b/source/docs/shapes/Custom.md
index 226e6ffbc..ebfa00b24 100644
--- a/source/docs/shapes/Custom.md
+++ b/source/docs/shapes/Custom.md
@@ -1,14 +1,14 @@
-title: Custom Shape Tutorial
----
-
-To create a custom shape with Konva, we can instantiate a `Konva.Shape()` object.
-
-When creating a custom shape, we need to define a drawing function that is passed a Konva.Canvas renderer.
-
-We can use the renderer to access the HTML5 Canvas context, and to use special methods like `context.fillStrokeShape(this)` which automatically handles filling, stroking, and applying shadows.
-
-For a full list of attributes and methods, check out the [Konva.Shape documentation](http://konvajs.github.io/api/Konva.Shape.html)
-
-{% iframe /downloads/code/shapes/Custom.html %}
-
-{% include_code Konva Custom Demo shapes/Custom.html %}
+title: Custom Shape Tutorial
+---
+
+To create a custom shape with Konva, we can instantiate a `Konva.Shape()` object.
+
+When creating a custom shape, we need to define a drawing function that is passed a Konva.Canvas renderer.
+
+We can use the renderer to access the HTML5 Canvas context, and to use special methods like `context.fillStrokeShape(this)` which automatically handles filling, stroking, and applying shadows.
+
+For a full list of attributes and methods, check out the [Konva.Shape documentation](http://konvajs.github.io/api/Konva.Shape.html)
+
+{% iframe /downloads/code/shapes/Custom.html %}
+
+{% include_code Konva Custom Demo shapes/Custom.html %}
diff --git a/source/docs/shapes/Ellipse.md b/source/docs/shapes/Ellipse.md
index af191d690..5f461c2b9 100644
--- a/source/docs/shapes/Ellipse.md
+++ b/source/docs/shapes/Ellipse.md
@@ -1,11 +1,11 @@
-title: Ellipse Tutorial
----
-
-To create a ellipse with `Konva`, we can instantiate a `Konva.Ellipse()` object.
-
-For a full list of attributes and methods, check out the [Konva.Ellipse documentation](http://konvajs.github.io/api/Konva.Ellipse.html).
-
-{% iframe /downloads/code/shapes/Ellipse.html %}
-
-{% include_code Konva Ellipse Demo shapes/Ellipse.html %}
-
+title: Ellipse Tutorial
+---
+
+To create a ellipse with `Konva`, we can instantiate a `Konva.Ellipse()` object.
+
+For a full list of attributes and methods, check out the [Konva.Ellipse documentation](http://konvajs.github.io/api/Konva.Ellipse.html).
+
+{% iframe /downloads/code/shapes/Ellipse.html %}
+
+{% include_code Konva Ellipse Demo shapes/Ellipse.html %}
+
diff --git a/source/docs/shapes/Image.md b/source/docs/shapes/Image.md
index 9a2fcca67..dc9c24dd6 100644
--- a/source/docs/shapes/Image.md
+++ b/source/docs/shapes/Image.md
@@ -1,10 +1,10 @@
-title: Image Tutorial
----
-
-To create an image with `Konva`, we can instantiate a `Konva.Image()` object.
-
-For a full list of attributes and methods, check out the [Konva.Image documentation](http://konvajs.github.io/api/Konva.Image.html).
-
-{% iframe /downloads/code/shapes/Image.html %}
-
+title: Image Tutorial
+---
+
+To create an image with `Konva`, we can instantiate a `Konva.Image()` object.
+
+For a full list of attributes and methods, check out the [Konva.Image documentation](http://konvajs.github.io/api/Konva.Image.html).
+
+{% iframe /downloads/code/shapes/Image.html %}
+
{% include_code Konva Image Demo shapes/Image.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Label.md b/source/docs/shapes/Label.md
index d2f366bfd..5d01a1463 100644
--- a/source/docs/shapes/Label.md
+++ b/source/docs/shapes/Label.md
@@ -1,10 +1,10 @@
-title: Label Tutorial
----
-
-To create a text label with Konva, which can be used for creating text with backgrounds, simple tooltips, or tooltips with pointers, we can instantiate a `Konva.Label()` object.
-
-For a full list of attributes and methods, check out the [Konva.Label documentation](http://konvajs.github.io/api/Konva.Label.html).
-
-{% iframe /downloads/code/shapes/Label.html %}
-
+title: Label Tutorial
+---
+
+To create a text label with Konva, which can be used for creating text with backgrounds, simple tooltips, or tooltips with pointers, we can instantiate a `Konva.Label()` object.
+
+For a full list of attributes and methods, check out the [Konva.Label documentation](http://konvajs.github.io/api/Konva.Label.html).
+
+{% iframe /downloads/code/shapes/Label.html %}
+
{% include_code Konva Label Demo shapes/Label.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Line_-_Blob.md b/source/docs/shapes/Line_-_Blob.md
index f00a0f49a..bc40e73d7 100644
--- a/source/docs/shapes/Line_-_Blob.md
+++ b/source/docs/shapes/Line_-_Blob.md
@@ -1,10 +1,10 @@
-title: Blob Tutorial
----
-
-To create a blob with `Konva`, we can instantiate a `Konva.Line()` object with `closed = true` and `tension` attributes.
-
-For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
-
-{% iframe /downloads/code/shapes/Line_-_Blob.html %}
-
+title: Blob Tutorial
+---
+
+To create a blob with `Konva`, we can instantiate a `Konva.Line()` object with `closed = true` and `tension` attributes.
+
+For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
+
+{% iframe /downloads/code/shapes/Line_-_Blob.html %}
+
{% include_code Konva Blob Demo shapes/Line_-_Blob.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Line_-_Polygon.md b/source/docs/shapes/Line_-_Polygon.md
index 2eab40bed..c4eb30a03 100644
--- a/source/docs/shapes/Line_-_Polygon.md
+++ b/source/docs/shapes/Line_-_Polygon.md
@@ -1,10 +1,10 @@
-title: Polygon Tutorial
----
-
-To create a polygon with `Konva`, we can instantiate a `Konva.Line()` object with `closed = true` attribute.
-
-For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
-
-{% iframe /downloads/code/shapes/Line_-_Polygon.html %}
-
+title: Polygon Tutorial
+---
+
+To create a polygon with `Konva`, we can instantiate a `Konva.Line()` object with `closed = true` attribute.
+
+For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
+
+{% iframe /downloads/code/shapes/Line_-_Polygon.html %}
+
{% include_code Konva Polygon Demo shapes/Line_-_Polygon.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Line_-_Simple_Line.md b/source/docs/shapes/Line_-_Simple_Line.md
index 9da16e7df..d2827487e 100644
--- a/source/docs/shapes/Line_-_Simple_Line.md
+++ b/source/docs/shapes/Line_-_Simple_Line.md
@@ -1,10 +1,10 @@
-title: Line Tutorial
----
-
-To create a line with `Konva`, we can instantiate a `Konva.Line()` object.
-
-For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
-
-{% iframe /downloads/code/shapes/Line_-_Simple_line.html %}
-
+title: Line Tutorial
+---
+
+To create a line with `Konva`, we can instantiate a `Konva.Line()` object.
+
+For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
+
+{% iframe /downloads/code/shapes/Line_-_Simple_line.html %}
+
{% include_code Konva Line Demo shapes/Line_-_Simple_line.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Line_-_Spline.md b/source/docs/shapes/Line_-_Spline.md
index 6f862fa05..04fcaa386 100644
--- a/source/docs/shapes/Line_-_Spline.md
+++ b/source/docs/shapes/Line_-_Spline.md
@@ -1,10 +1,10 @@
-title: Spline Tutorial
----
-
-To create a spline with `Konva`, we can instantiate a `Konva.Line()` object with `tension` attribute.
-
-For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
-
-{% iframe /downloads/code/shapes/Line_-_Spline.html %}
-
+title: Spline Tutorial
+---
+
+To create a spline with `Konva`, we can instantiate a `Konva.Line()` object with `tension` attribute.
+
+For a full list of attributes and methods, check out the [Konva.Line documentation](http://konvajs.github.io/api/Konva.Line.html).
+
+{% iframe /downloads/code/shapes/Line_-_Spline.html %}
+
{% include_code Konva Spline Demo shapes/Line_-_Spline.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Path.md b/source/docs/shapes/Path.md
index f5989d7fa..c2a05d735 100644
--- a/source/docs/shapes/Path.md
+++ b/source/docs/shapes/Path.md
@@ -1,12 +1,12 @@
-title: Path Tutorial
----
-
-To create an SVG path with Konva, we can instantiate a `Konva.Path()` object.
-
-Paths are most commonly used when we want to export an SVG Path into an HTML5 Canvas path, or if we want to manifest complex drawings as a data string rather than creating a custom shape.
-
-For a full list of attributes and methods, check out the [Konva.Path documentation](http://konvajs.github.io/api/Konva.Path.html).
-
-{% iframe /downloads/code/shapes/Path.html %}
-
+title: Path Tutorial
+---
+
+To create an SVG path with Konva, we can instantiate a `Konva.Path()` object.
+
+Paths are most commonly used when we want to export an SVG Path into an HTML5 Canvas path, or if we want to manifest complex drawings as a data string rather than creating a custom shape.
+
+For a full list of attributes and methods, check out the [Konva.Path documentation](http://konvajs.github.io/api/Konva.Path.html).
+
+{% iframe /downloads/code/shapes/Path.html %}
+
{% include_code Konva Path Demo shapes/Path.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Rect.md b/source/docs/shapes/Rect.md
index e0d3f34d5..cf24c1d97 100644
--- a/source/docs/shapes/Rect.md
+++ b/source/docs/shapes/Rect.md
@@ -1,10 +1,10 @@
-title: Rect Tutorial
----
-
-To create a rectangle with `Konva`, we can instantiate a `Konva.Rect()` object.
-
-For a full list of attributes and methods, check out the [Konva.Rect documentation](http://konvajs.github.io/api/Konva.Rect.html).
-
-{% iframe /downloads/code/shapes/rect.html %}
-
-{% include_code Konva Rect Demo shapes/rect.html %}
+title: Rect Tutorial
+---
+
+To create a rectangle with `Konva`, we can instantiate a `Konva.Rect()` object.
+
+For a full list of attributes and methods, check out the [Konva.Rect documentation](http://konvajs.github.io/api/Konva.Rect.html).
+
+{% iframe /downloads/code/shapes/rect.html %}
+
+{% include_code Konva Rect Demo shapes/rect.html %}
diff --git a/source/docs/shapes/RegularPolygon.md b/source/docs/shapes/RegularPolygon.md
index 2414ccd8d..0181c8e25 100644
--- a/source/docs/shapes/RegularPolygon.md
+++ b/source/docs/shapes/RegularPolygon.md
@@ -1,10 +1,10 @@
-title: Regular Polygon Tutorial
----
-
-To create a regular polygon with `Konva`, we can instantiate a `Konva.RegularPolygon()` object.
-
-For a full list of attributes and methods, check out the [Konva.RegularPolygon documentation](http://konvajs.github.io/api/Konva.RegularPolygon.html).
-
-{% iframe /downloads/code/shapes/RegularPolygon.html %}
-
+title: Regular Polygon Tutorial
+---
+
+To create a regular polygon with `Konva`, we can instantiate a `Konva.RegularPolygon()` object.
+
+For a full list of attributes and methods, check out the [Konva.RegularPolygon documentation](http://konvajs.github.io/api/Konva.RegularPolygon.html).
+
+{% iframe /downloads/code/shapes/RegularPolygon.html %}
+
{% include_code Konva RegularPolygon Demo shapes/RegularPolygon.html %}
\ No newline at end of file
diff --git a/source/docs/shapes/Ring.md b/source/docs/shapes/Ring.md
index 74dac0cd3..a1ad198b5 100644
--- a/source/docs/shapes/Ring.md
+++ b/source/docs/shapes/Ring.md
@@ -1,10 +1,10 @@
-title: Ring Tutorial
----
-
-To create a ring shape with `Konva`, we can instantiate a `Konva.Ring()` object.
-
-For a full list of attributes and methods, check out the [Konva.Ring documentation](http://konvajs.github.io/api/Konva.Ring.html).
-
-{% iframe /downloads/code/shapes/Ring.html %}
-
-{% include_code Konva Ring Demo shapes/Ring.html %}
+title: Ring Tutorial
+---
+
+To create a ring shape with `Konva`, we can instantiate a `Konva.Ring()` object.
+
+For a full list of attributes and methods, check out the [Konva.Ring documentation](http://konvajs.github.io/api/Konva.Ring.html).
+
+{% iframe /downloads/code/shapes/Ring.html %}
+
+{% include_code Konva Ring Demo shapes/Ring.html %}
diff --git a/source/docs/shapes/Sprite.md b/source/docs/shapes/Sprite.md
index 3e66aee4b..0f1b69e21 100644
--- a/source/docs/shapes/Sprite.md
+++ b/source/docs/shapes/Sprite.md
@@ -1,10 +1,10 @@
-title: Sprite Tutorial
----
-
-To create a sprite with `Konva`, we can instantiate a `Konva.Sprite()` object.
-
-For a full list of attributes and methods, check out the [Konva.Sprite documentation](http://konvajs.github.io/api/Konva.Sprite.html).
-
-{% iframe /downloads/code/shapes/Sprite.html %}
-
-{% include_code Konva Sprite Demo shapes/Sprite.html %}
+title: Sprite Tutorial
+---
+
+To create a sprite with `Konva`, we can instantiate a `Konva.Sprite()` object.
+
+For a full list of attributes and methods, check out the [Konva.Sprite documentation](http://konvajs.github.io/api/Konva.Sprite.html).
+
+{% iframe /downloads/code/shapes/Sprite.html %}
+
+{% include_code Konva Sprite Demo shapes/Sprite.html %}
diff --git a/source/docs/shapes/Star.md b/source/docs/shapes/Star.md
index 74a899599..e573fd9f6 100644
--- a/source/docs/shapes/Star.md
+++ b/source/docs/shapes/Star.md
@@ -1,10 +1,10 @@
-title: Star Tutorial
----
-
-To create a start with `Konva`, we can instantiate a `Konva.Star()` object.
-
-For a full list of attributes and methods, check out the [Konva.Star documentation](http://konvajs.github.io/api/Konva.Star.html).
-
-{% iframe /downloads/code/shapes/Star.html %}
-
-{% include_code Konva Star Demo shapes/Star.html %}
+title: Star Tutorial
+---
+
+To create a start with `Konva`, we can instantiate a `Konva.Star()` object.
+
+For a full list of attributes and methods, check out the [Konva.Star documentation](http://konvajs.github.io/api/Konva.Star.html).
+
+{% iframe /downloads/code/shapes/Star.html %}
+
+{% include_code Konva Star Demo shapes/Star.html %}
diff --git a/source/docs/shapes/Text.md b/source/docs/shapes/Text.md
index 9c8c916ca..0cc321b83 100644
--- a/source/docs/shapes/Text.md
+++ b/source/docs/shapes/Text.md
@@ -1,10 +1,10 @@
-title: Text Tutorial
----
-
-To create text with `Konva`, we can instantiate a `Konva.Text()` object.
-
-For a full list of attributes and methods, check out the [Konva.Text documentation](http://konvajs.github.io/api/Konva.Text.html).
-
-{% iframe /downloads/code/shapes/Text.html %}
-
-{% include_code Konva Text Demo shapes/Text.html %}
+title: Text Tutorial
+---
+
+To create text with `Konva`, we can instantiate a `Konva.Text()` object.
+
+For a full list of attributes and methods, check out the [Konva.Text documentation](http://konvajs.github.io/api/Konva.Text.html).
+
+{% iframe /downloads/code/shapes/Text.html %}
+
+{% include_code Konva Text Demo shapes/Text.html %}
diff --git a/source/docs/shapes/TextPath.md b/source/docs/shapes/TextPath.md
index 272c61d76..9edbaee04 100644
--- a/source/docs/shapes/TextPath.md
+++ b/source/docs/shapes/TextPath.md
@@ -1,10 +1,10 @@
-title: TextPath Tutorial
----
-
-To create a text path with `Konva`, we can instantiate a `Konva.TextPath()` object.
-
-For a full list of attributes and methods, check out the [Konva.TextPath documentation](http://konvajs.github.io/api/Konva.TextPath.html).
-
-{% iframe /downloads/code/shapes/TextPath.html %}
-
-{% include_code Konva TextPath Demo shapes/TextPath.html %}
+title: TextPath Tutorial
+---
+
+To create a text path with `Konva`, we can instantiate a `Konva.TextPath()` object.
+
+For a full list of attributes and methods, check out the [Konva.TextPath documentation](http://konvajs.github.io/api/Konva.TextPath.html).
+
+{% iframe /downloads/code/shapes/TextPath.html %}
+
+{% include_code Konva TextPath Demo shapes/TextPath.html %}
diff --git a/source/docs/shapes/Wedge.md b/source/docs/shapes/Wedge.md
index 65307aa71..2d798f7d2 100644
--- a/source/docs/shapes/Wedge.md
+++ b/source/docs/shapes/Wedge.md
@@ -1,10 +1,10 @@
-title: Wedge Tutorial
----
-
-To create a wedge with `Konva`, we can instantiate a `Konva.Wedge()` object.
-
-For a full list of attributes and methods, check out the [Konva.Wedge documentation](http://konvajs.github.io/api/Konva.Wedge.html).
-
-{% iframe /downloads/code/shapes/Wedge.html %}
-
-{% include_code Konva Wedge Demo shapes/Wedge.html %}
+title: Wedge Tutorial
+---
+
+To create a wedge with `Konva`, we can instantiate a `Konva.Wedge()` object.
+
+For a full list of attributes and methods, check out the [Konva.Wedge documentation](http://konvajs.github.io/api/Konva.Wedge.html).
+
+{% iframe /downloads/code/shapes/Wedge.html %}
+
+{% include_code Konva Wedge Demo shapes/Wedge.html %}
diff --git a/source/docs/styling/Fill.md b/source/docs/styling/Fill.md
index c377e233e..18024c527 100644
--- a/source/docs/styling/Fill.md
+++ b/source/docs/styling/Fill.md
@@ -1,12 +1,12 @@
-title: Set Fill Tutorial
----
-
-To fill a shape with Konva, we can set the fill property when we instantiate a shape, or we can use the `fill()` method.
-
-Konva supports colors, patterns, linear gradients, and radial gradients.
-
-Instructions: Mouseover each pentagon to change its fill. You can also drag and drop the shapes.
-
-{% iframe /downloads/code/styling/Fill.html %}
-
+title: Set Fill Tutorial
+---
+
+To fill a shape with Konva, we can set the fill property when we instantiate a shape, or we can use the `fill()` method.
+
+Konva supports colors, patterns, linear gradients, and radial gradients.
+
+Instructions: Mouseover each pentagon to change its fill. You can also drag and drop the shapes.
+
+{% iframe /downloads/code/styling/Fill.html %}
+
{% include_code Konva Fill Demo styling/Fill.html %}
\ No newline at end of file
diff --git a/source/docs/styling/Hide_and_Show.md b/source/docs/styling/Hide_and_Show.md
index fbd66f9ce..e91911f36 100644
--- a/source/docs/styling/Hide_and_Show.md
+++ b/source/docs/styling/Hide_and_Show.md
@@ -1,10 +1,10 @@
-title: Hide and Show Shape Tutorial
----
-
-To hide and show a shape with Konva, we can set the visible property when we instantiate a shape, or we can use the `hide()` and `show()` methods.
-
-Instructions: Click on the buttons to show and hide the shape.
-
-{% iframe /downloads/code/styling/Hide_and_Show.html %}
-
+title: Hide and Show Shape Tutorial
+---
+
+To hide and show a shape with Konva, we can set the visible property when we instantiate a shape, or we can use the `hide()` and `show()` methods.
+
+Instructions: Click on the buttons to show and hide the shape.
+
+{% iframe /downloads/code/styling/Hide_and_Show.html %}
+
{% include_code Konva Hide and Show Demo styling/Hide_and_Show.html %}
\ No newline at end of file
diff --git a/source/docs/styling/Line_Join.md b/source/docs/styling/Line_Join.md
index 10b340713..441aef468 100644
--- a/source/docs/styling/Line_Join.md
+++ b/source/docs/styling/Line_Join.md
@@ -1,12 +1,12 @@
-title: Line Join Tutorial
----
-
-To set the line join for a shape with Konva, we can set the `lineJoin` property when we instantiate a shape, or we can use the `lineJoin()` method.
-
-The `lineJoin` property can be set to `miter`, `bevel`, or `round`. Unless otherwise specified, the default line join is `miter`.
-
-Instructions: Mouseover the triangle to change the line join style.
-
-{% iframe /downloads/code/styling/Line_Join.html %}
-
+title: Line Join Tutorial
+---
+
+To set the line join for a shape with Konva, we can set the `lineJoin` property when we instantiate a shape, or we can use the `lineJoin()` method.
+
+The `lineJoin` property can be set to `miter`, `bevel`, or `round`. Unless otherwise specified, the default line join is `miter`.
+
+Instructions: Mouseover the triangle to change the line join style.
+
+{% iframe /downloads/code/styling/Line_Join.html %}
+
{% include_code Konva Line Join Demo styling/Line_Join.html %}
\ No newline at end of file
diff --git a/source/docs/styling/Opacity.md b/source/docs/styling/Opacity.md
index 8aa520314..569fcff9b 100644
--- a/source/docs/styling/Opacity.md
+++ b/source/docs/styling/Opacity.md
@@ -1,12 +1,12 @@
-title: Opacity Tutorial
----
-
-To set a shape opacity with Konva, we can set the `opacity` property when we instantiate the shape, or we can use the `opacity()` method.
-
-Shapes can have an opacity value between 0 and 1, where 0 is fully transparent, and 1 is fully opaque. Unless otherwise specified, all shapes are defaulted with an opacity value of 1.
-
-Instructions: Mouseover the pentagon to change its opacity.
-
-{% iframe /downloads/code/styling/Opacity.html %}
-
+title: Opacity Tutorial
+---
+
+To set a shape opacity with Konva, we can set the `opacity` property when we instantiate the shape, or we can use the `opacity()` method.
+
+Shapes can have an opacity value between 0 and 1, where 0 is fully transparent, and 1 is fully opaque. Unless otherwise specified, all shapes are defaulted with an opacity value of 1.
+
+Instructions: Mouseover the pentagon to change its opacity.
+
+{% iframe /downloads/code/styling/Opacity.html %}
+
{% include_code Konva Opacity Demo styling/Opacity.html %}
\ No newline at end of file
diff --git a/source/docs/styling/Shadow.md b/source/docs/styling/Shadow.md
index e096735ea..d9d997750 100644
--- a/source/docs/styling/Shadow.md
+++ b/source/docs/styling/Shadow.md
@@ -1,11 +1,11 @@
-title: Shadows Tutorial
----
-
-To apply shadows with Konva, we can set the `shadowColor`, `shadowOffset`, `shadowBlur`, and `shadowOpacity` properties when we instantiate a shape.
-
-We can adjust the shadow properties after instantiation by using the `shadowColor()`, `shadowOffset()`, `shadowBlur()`, and `shadowOpacity()` methods.
-
-
-{% iframe /downloads/code/styling/Shadow.html %}
-
+title: Shadows Tutorial
+---
+
+To apply shadows with Konva, we can set the `shadowColor`, `shadowOffset`, `shadowBlur`, and `shadowOpacity` properties when we instantiate a shape.
+
+We can adjust the shadow properties after instantiation by using the `shadowColor()`, `shadowOffset()`, `shadowBlur()`, and `shadowOpacity()` methods.
+
+
+{% iframe /downloads/code/styling/Shadow.html %}
+
{% include_code Konva Shadows Demo styling/Shadow.html %}
\ No newline at end of file
diff --git a/source/docs/styling/Stroke.md b/source/docs/styling/Stroke.md
index 87d560a8c..1b32d47cc 100644
--- a/source/docs/styling/Stroke.md
+++ b/source/docs/styling/Stroke.md
@@ -1,10 +1,10 @@
-title: Set Shape Stroke Color and Width Tutorial
----
-
-To set a shape stroke and stroke width with Konva, we can set the `stroke` and `strokeWidth` properties when we instantiate a shape, or we can use the `stroke()` and `strokeWidth()` methods.
-
-Instructions: Mouseover the pentagon to change its stroke color and width.
-
-{% iframe /downloads/code/styling/Stroke.html %}
-
+title: Set Shape Stroke Color and Width Tutorial
+---
+
+To set a shape stroke and stroke width with Konva, we can set the `stroke` and `strokeWidth` properties when we instantiate a shape, or we can use the `stroke()` and `strokeWidth()` methods.
+
+Instructions: Mouseover the pentagon to change its stroke color and width.
+
+{% iframe /downloads/code/styling/Stroke.html %}
+
{% include_code Konva Stroke Demo styling/Stroke.html %}
\ No newline at end of file
diff --git a/source/docs/support.md b/source/docs/support.md
index 7707fbf26..abdb0cb87 100644
--- a/source/docs/support.md
+++ b/source/docs/support.md
@@ -1,9 +1,9 @@
-title: Help
----
-
-* Join [Gittip Chat](https://gitter.im/konvajs/konva)
-* Ask your question on [StackOverflow](http://stackoverflow.com/questions/tagged/konvajs)
-* If you found a bug add request to [Issues Page](https://github.com/konvajs/konva/issues)
-* If you have something interesting use Twitter `#konvajs` hashtag
-* Visit [Roadmap](https://github.com/konvajs/konva/wiki) and [Changelog](https://github.com/konvajs/konva/blob/master/CHANGELOG.md)
+title: Help
+---
+
+* Join [Gittip Chat](https://gitter.im/konvajs/konva)
+* Ask your question on [StackOverflow](http://stackoverflow.com/questions/tagged/konvajs)
+* If you found a bug add request to [Issues Page](https://github.com/konvajs/konva/issues)
+* If you have something interesting use Twitter `#konvajs` hashtag
+* Visit [Roadmap](https://github.com/konvajs/konva/wiki) and [Changelog](https://github.com/konvajs/konva/blob/master/CHANGELOG.md)
* Do you have really complicated issue or do you need help with implementing a huge project? As a maintainer I am availabe to help you as a freelancer. Just ping me somewhere in [chat](https://gitter.im/konvajs/konva), [twitter](https://twitter.com/lavrton) or find my email in my [github profile](https://github.com/lavrton).
\ No newline at end of file
diff --git a/source/docs/tools.md b/source/docs/tools.md
index b9d694223..d946dad34 100644
--- a/source/docs/tools.md
+++ b/source/docs/tools.md
@@ -1,7 +1,7 @@
-title: Konva.js Tools and Plugins
----
-
-* [Konva + Backbone](https://github.com/slash-system/backbone.konvaview)
-* [Konva + React](https://github.com/olimsaidov/react-konva/)
-* [Konva + Knockout](https://github.com/mcintyre321/knockout-konva)
-* [Typescript definitions](https://github.com/konvajs/konva/blob/master/resources/konva.d.ts)
+title: Konva.js Tools and Plugins
+---
+
+* [Konva + Backbone](https://github.com/slash-system/backbone.konvaview)
+* [Konva + React](https://github.com/olimsaidov/react-konva/)
+* [Konva + Knockout](https://github.com/mcintyre321/knockout-konva)
+* [Typescript definitions](https://github.com/konvajs/konva/blob/master/resources/konva.d.ts)
diff --git a/source/docs/tweens/All_Controls.md b/source/docs/tweens/All_Controls.md
index 45413b6ae..5be8268c0 100644
--- a/source/docs/tweens/All_Controls.md
+++ b/source/docs/tweens/All_Controls.md
@@ -1,10 +1,10 @@
-title: All Tween Controls Tutorial
----
-
-To play, pause, reverse, reset, finish, and seek tweens with Konva,
-we can use the `play()`, `pause()`, `reverse()`, `reset()`, `finish()`, and `seek()` methods.
-This tutorial demonstrates each control.
-
-{% iframe /downloads/code/tweens/All_Controls.html %}
-
-{% include_code All Tween Controls tweens/All_Controls.html %}
+title: All Tween Controls Tutorial
+---
+
+To play, pause, reverse, reset, finish, and seek tweens with Konva,
+we can use the `play()`, `pause()`, `reverse()`, `reset()`, `finish()`, and `seek()` methods.
+This tutorial demonstrates each control.
+
+{% iframe /downloads/code/tweens/All_Controls.html %}
+
+{% include_code All Tween Controls tweens/All_Controls.html %}
diff --git a/source/docs/tweens/All_Easings.md b/source/docs/tweens/All_Easings.md
index 06207c291..9fdce0137 100644
--- a/source/docs/tweens/All_Easings.md
+++ b/source/docs/tweens/All_Easings.md
@@ -1,13 +1,13 @@
-title: More Easing Functions Tutorial
----
-
-This tutorial demonstrates all of the easing function sets provided by Konva,
-including `Linear`, `Ease`, `Back`, `Elastic`, `Bounce`, and `Strong`.
-
-For all available easings go to [Easings Documentation](http://konvajs.github.io/api/Konva.Easing.html).
-
-Instructions: Press "Play" to transition all of the text nodes.
-
-{% iframe /downloads/code/tweens/All_Easings.html 500 700 %}
-
-{% include_code More Easing Functions Demo tweens/All_Easings.html %}
+title: More Easing Functions Tutorial
+---
+
+This tutorial demonstrates all of the easing function sets provided by Konva,
+including `Linear`, `Ease`, `Back`, `Elastic`, `Bounce`, and `Strong`.
+
+For all available easings go to [Easings Documentation](http://konvajs.github.io/api/Konva.Easing.html).
+
+Instructions: Press "Play" to transition all of the text nodes.
+
+{% iframe /downloads/code/tweens/All_Easings.html 500 700 %}
+
+{% include_code More Easing Functions Demo tweens/All_Easings.html %}
diff --git a/source/docs/tweens/Common_Easings.md b/source/docs/tweens/Common_Easings.md
index a6d1deed0..b0e1bfae3 100644
--- a/source/docs/tweens/Common_Easings.md
+++ b/source/docs/tweens/Common_Easings.md
@@ -1,15 +1,15 @@
-title: Simple Easings Tutorial
----
-
-To create a non linear easing tween with Konva, we can set the `easing`
-property to an easing function. Other than `Konva.Easings.Linear`,
-the other most common easings are `Konva.Easings.EaseIn`,
-`Konva.Easings.EaseInOut`, and `Konva.Easings.EaseOut`.
-
-For all available easings go to [Easings Documentation](http://konvajs.github.io/api/Konva.Easing.html).
-
-Instructions: Mouseover or touchstart the boxes to tween them with different easing functions
-
-{% iframe /downloads/code/tweens/Common_Easing.html %}
-
-{% include_code Konva Simple Easings Demo tweens/Common_Easing.html %}
+title: Simple Easings Tutorial
+---
+
+To create a non linear easing tween with Konva, we can set the `easing`
+property to an easing function. Other than `Konva.Easings.Linear`,
+the other most common easings are `Konva.Easings.EaseIn`,
+`Konva.Easings.EaseInOut`, and `Konva.Easings.EaseOut`.
+
+For all available easings go to [Easings Documentation](http://konvajs.github.io/api/Konva.Easing.html).
+
+Instructions: Mouseover or touchstart the boxes to tween them with different easing functions
+
+{% iframe /downloads/code/tweens/Common_Easing.html %}
+
+{% include_code Konva Simple Easings Demo tweens/Common_Easing.html %}
diff --git a/source/docs/tweens/Complex_Tweening.md b/source/docs/tweens/Complex_Tweening.md
index e314a50c0..d4d9317ac 100644
--- a/source/docs/tweens/Complex_Tweening.md
+++ b/source/docs/tweens/Complex_Tweening.md
@@ -1,12 +1,12 @@
-title: Complex Tweening Tutorial
----
-
-Also you can use [GreenSock Konva Plugin](https://github.com/konvajs/greensock-plugin) for tweens.
-
-GreenSock tweens are more powerfull than Konva's tween.
-
-Also demo demonstrate tweening `fillLinearGradientColorStops` property with usual GreenSock usage.
-
-{% iframe /downloads/code/tweens/Complex_Tweening.html %}
-
-{% include_code Konva Complex Tweening Demo tweens/Complex_Tweening.html %}
+title: Complex Tweening Tutorial
+---
+
+Also you can use [GreenSock Konva Plugin](https://github.com/konvajs/greensock-plugin) for tweens.
+
+GreenSock tweens are more powerfull than Konva's tween.
+
+Also demo demonstrate tweening `fillLinearGradientColorStops` property with usual GreenSock usage.
+
+{% iframe /downloads/code/tweens/Complex_Tweening.html %}
+
+{% include_code Konva Complex Tweening Demo tweens/Complex_Tweening.html %}
diff --git a/source/docs/tweens/Finish_Event.md b/source/docs/tweens/Finish_Event.md
index 101b77b39..0af56b975 100644
--- a/source/docs/tweens/Finish_Event.md
+++ b/source/docs/tweens/Finish_Event.md
@@ -1,8 +1,8 @@
-title: Tween Finish Event Tutorial
----
-
-To trigger a user defined function when the tween finishes with Konva, we can set the `onFinish` property.
-
-{% iframe /downloads/code/tweens/Finish_Event.html %}
-
-{% include_code Konva Tween Finish Event Demo tweens/Finish_Event.html %}
+title: Tween Finish Event Tutorial
+---
+
+To trigger a user defined function when the tween finishes with Konva, we can set the `onFinish` property.
+
+{% iframe /downloads/code/tweens/Finish_Event.html %}
+
+{% include_code Konva Tween Finish Event Demo tweens/Finish_Event.html %}
diff --git a/source/docs/tweens/Linear_Easing.md b/source/docs/tweens/Linear_Easing.md
index 5881062d6..9441785ae 100644
--- a/source/docs/tweens/Linear_Easing.md
+++ b/source/docs/tweens/Linear_Easing.md
@@ -1,13 +1,13 @@
-title: Tweening Tutorial
----
-
-To tween properties with Konva, we can instantiate a `Konva.Tween` object
-and then start the tween by calling `play()`. Any numeric property of a `Shape`,
-`Group`, `Layer`, or `Stage` can be transitioned, such as `x`, `y`, `rotation`,
-`width`, `height`, `radius`, `strokeWidth`, `opacity`, `scaleX`, `offsetX`, etc.
-
-For a full list of attributes and methods, check out the [Konva.Tween documentation](http://konvajs.github.io/api/Konva.Tween.html).
-
-{% iframe /downloads/code/tweens/Linear_Easing.html %}
-
-{% include_code Konva Tweening Demo tweens/Linear_Easing.html %}
+title: Tweening Tutorial
+---
+
+To tween properties with Konva, we can instantiate a `Konva.Tween` object
+and then start the tween by calling `play()`. Any numeric property of a `Shape`,
+`Group`, `Layer`, or `Stage` can be transitioned, such as `x`, `y`, `rotation`,
+`width`, `height`, `radius`, `strokeWidth`, `opacity`, `scaleX`, `offsetX`, etc.
+
+For a full list of attributes and methods, check out the [Konva.Tween documentation](http://konvajs.github.io/api/Konva.Tween.html).
+
+{% iframe /downloads/code/tweens/Linear_Easing.html %}
+
+{% include_code Konva Tweening Demo tweens/Linear_Easing.html %}
diff --git a/source/docs/tweens/Tween_Filter.md b/source/docs/tweens/Tween_Filter.md
index 3894e4b06..b42c3bb12 100644
--- a/source/docs/tweens/Tween_Filter.md
+++ b/source/docs/tweens/Tween_Filter.md
@@ -1,11 +1,11 @@
-title: Tween Blur Filter Tutorial
----
-
-To tween a filter using Konva, we can simply tween the properties associated with the filter.
-In this tutorial, we'll tween the `blurRadius` property, which controls the amount of blur applied to the image.
-
-Instructions: mouseover the image to focus it.
-
-{% iframe /downloads/code/tweens/Tween_Filter.html %}
-
-{% include_code Konva Tween Blur Filter Demo tweens/Tween_Filter.html %}
+title: Tween Blur Filter Tutorial
+---
+
+To tween a filter using Konva, we can simply tween the properties associated with the filter.
+In this tutorial, we'll tween the `blurRadius` property, which controls the amount of blur applied to the image.
+
+Instructions: mouseover the image to focus it.
+
+{% iframe /downloads/code/tweens/Tween_Filter.html %}
+
+{% include_code Konva Tween Blur Filter Demo tweens/Tween_Filter.html %}
diff --git a/source/downloads/code/animations/Moving.html b/source/downloads/code/animations/Moving.html
index 5c5adb948..a8c352192 100644
--- a/source/downloads/code/animations/Moving.html
+++ b/source/downloads/code/animations/Moving.html
@@ -1,56 +1,56 @@
-
-
-