---
title: grainline
---
[](/plugins)
[](https://www.npmjs.com/package/@freesewing/plugin-grainline)
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-grainline)
The **grainline** plugin provides [the grainline macro](/reference/macros/grainline/):
```js
let { Point, points, macro } = part.shorthand();
points.grainlineFrom = new Point(10, 10);
points.grainlineTo = new Point(100, 10);
macro("grainline", {
from: points.grainlineFrom,
to: points.grainlineTo
});
```
The grainline plugin is part of our [plugin-bundle](/reference/plugins/bundle)
## Installation
```bash
npm install @freesewing/plugin-grainline
```
## Usage
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
```js
import freesewing from "@freesewing/core";
import grainline from "@freesewing/plugin-grainline";
import config from "../config";
const Pattern = new freesewing.Design(config, grainline);
```
Now you can use [the grainline macro](/reference/macros/grainline) in your parts.