--- title: Adding snippets --- Snippets should be stored in the `snippets` key of the object passed to your part's draft method. The constructor for snippets is available in the `Snippets` key. You can destructure them for easy access. ```design/src/part.mjs function draftPart = ({ Point, Path, paths, // highlight-start Snippet, snippets, // highlight-end part }) { // highlight-start snippets.logo = new Snippet('logo', new Point(50,50)) .attr('data-scale', 0.5) .attr('data-rotate', 180) // highlight-end // prevent clipping paths.demo = new Path() .move(new Point(0,0)) .move(new Point(100,100)) return part } ``` You can scale and rotate a snippet by setting the `data-scale` and `data-rotate` attributes respectively. - **data-scale** : Either a single scale factor, or a set of 2 scale factors for the X and Y axis respectively. See [the SVG scale transform](https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/transform#Scale) for details. - **data-rotate**: A rotation in degrees. The center of the rotation will be the snippet's anchor point :::tip See [Using attributes](/howtos/code/attributes/) for details on how to set attributes. :::