chore(markdown): Linting of dev docs
This commit is contained in:
parent
1d8beedd44
commit
265ad404da
317 changed files with 1281 additions and 1503 deletions
|
@ -14,6 +14,7 @@ This Code of Conduct is an almost verbatim copy of the [Contributor Covenant][ho
|
|||
available at [http://contributor-covenant.org/version/2/0][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
|
||||
[version]: http://contributor-covenant.org/version/2/0/
|
||||
|
||||
</Note>
|
||||
|
|
|
@ -4,10 +4,12 @@ order: 10
|
|||
---
|
||||
|
||||
##### Community Impact
|
||||
|
||||
Use of inappropriate language or other behavior
|
||||
deemed unprofessional or unwelcome in the community.
|
||||
|
||||
##### Consequence
|
||||
|
||||
A private, written warning from community leaders,
|
||||
providing clarity around the nature of the violation and an
|
||||
explanation of why the behavior was inappropriate.
|
||||
|
|
|
@ -4,10 +4,12 @@ order: 40
|
|||
---
|
||||
|
||||
##### Community Impact
|
||||
|
||||
Demonstrating a pattern of violation of
|
||||
community standards, including sustained inappropriate behavior,
|
||||
harassment of an individual, or aggression toward or
|
||||
disparagement of classes of individuals.
|
||||
|
||||
##### Consequence
|
||||
|
||||
A permanent ban from any sort of public interaction within the community.
|
||||
|
|
|
@ -4,10 +4,12 @@ order: 30
|
|||
---
|
||||
|
||||
##### Community Impact
|
||||
|
||||
A serious violation of community standards,
|
||||
including sustained inappropriate behavior.
|
||||
|
||||
##### Consequence
|
||||
|
||||
A temporary ban from any sort of interaction or
|
||||
public communication with the community for a specified period
|
||||
of time.
|
||||
|
@ -17,4 +19,3 @@ involved, including unsolicited interaction with those enforcing
|
|||
the Code of Conduct, is allowed during this period.
|
||||
|
||||
Violating these terms may lead to a permanent ban.
|
||||
|
||||
|
|
|
@ -4,10 +4,12 @@ order: 20
|
|||
---
|
||||
|
||||
##### Community Impact
|
||||
|
||||
A violation through a single incident or series of actions.
|
||||
|
||||
##### Consequence
|
||||
A warning with consequences for continued behavior.
|
||||
|
||||
A warning with consequences for continued behavior.\
|
||||
No interaction with the people involved, including unsolicited
|
||||
interaction with those enforcing the Code of Conduct, for a
|
||||
specified period of time. This includes avoiding interactions
|
||||
|
|
|
@ -13,4 +13,3 @@ All complaints will be reviewed and investigated promptly and fairly.
|
|||
|
||||
All community leaders are obligated to respect the privacy and
|
||||
security of the reporter of any incident.
|
||||
|
||||
|
|
|
@ -13,4 +13,3 @@ religion, or sexual identity and orientation.
|
|||
|
||||
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||
diverse, inclusive, and healthy community.
|
||||
|
||||
|
|
|
@ -9,4 +9,3 @@ when an individual is officially representing the FreeSewing community in public
|
|||
Examples of representing our community include using an official e-mail address,
|
||||
posting via an official social media account, or acting as an appointed representative
|
||||
at an online or offline event.
|
||||
|
||||
|
|
|
@ -24,14 +24,12 @@ where your documentation should go based on what it's trying to accomplish:
|
|||

|
||||
|
||||
|
||||
- Write a **Tutorial** is your aim is to help people learn the platform
|
||||
- Write a **Guide** if your aim is to further people's understanding of a topic by going a bit deeper
|
||||
- Write a **Howto** if your ain is to help people accomplish a task
|
||||
- Write **Reference** documentation to detail how things work under the hood
|
||||
- Refer people to **Discord or Github** for things that are not (yet) covered in our documentation
|
||||
|
||||
|
||||
<Note>
|
||||
|
||||
##### Based on a talk by Daniele Procida
|
||||
|
@ -41,4 +39,3 @@ on [this talk by Daniele Procida](https://www.youtube.com/watch?v=t4vKPhjcMZg) a
|
|||
PyCon AU 2017.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -5,7 +5,6 @@ order: zbb
|
|||
|
||||
You can find a list of all FreeSewing guides below:
|
||||
|
||||
|
||||
<ReadMore recurse />
|
||||
|
||||
<Related>
|
||||
|
@ -20,4 +19,3 @@ guides take more time to explain in-depth what is being done and why.
|
|||
For more details, refer to [How we structure our documentation](/guides/docs).
|
||||
|
||||
</Related>
|
||||
|
||||
|
|
|
@ -46,6 +46,3 @@ The following language codes are supported:
|
|||
- `mdx` for MDX
|
||||
- `jsx` for JSX
|
||||
- `json` for JSON
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ title: Custom components
|
|||
order: 90
|
||||
---
|
||||
|
||||
The way we render markdown on our websites is through the use of [MDX](https://mdxjs.com/).
|
||||
The way we render markdown on our websites is through the use of [MDX](https://mdxjs.com/).\
|
||||
This allows us to extend Markdown with our own so-called *custom components*.
|
||||
|
||||
Such custom components allow us to put things in Markdown content that would
|
||||
|
@ -42,7 +42,6 @@ The **Comment** component requires a `by` attribute that lists the author of the
|
|||
<Comment by="joost">**Do** try this at home</Comment>
|
||||
```
|
||||
|
||||
|
||||
## Fixme
|
||||
|
||||
<Fixme>
|
||||
|
@ -62,7 +61,6 @@ or can't fix it now.
|
|||
</Fixme>
|
||||
```
|
||||
|
||||
|
||||
## Note
|
||||
|
||||
<Note>
|
||||
|
@ -91,6 +89,7 @@ It's typically used on overview pages, such as out [markdown guide](/guides/mark
|
|||
It won't show anything on this page, since this page has not child-pages.
|
||||
|
||||
## Related
|
||||
|
||||
<Related>
|
||||
This snippet is provided by [the buttons plugin](/reference/plugins/buttons)
|
||||
</Related>
|
||||
|
@ -104,6 +103,7 @@ Use **Related** to add something that is relevant to the current topic.
|
|||
```
|
||||
|
||||
## Tip
|
||||
|
||||
<Tip>
|
||||
Comparing yourself to others is the fastest way to become unhappy
|
||||
</Tip>
|
||||
|
@ -117,6 +117,7 @@ Use **Tip** for, you know, tips.
|
|||
```
|
||||
|
||||
## Warning
|
||||
|
||||
<Warning>
|
||||
##### Please make a backup
|
||||
Following these instructions will remove all your data
|
||||
|
@ -150,6 +151,3 @@ Embed a playlist:
|
|||
```md
|
||||
<YouTube id='PL1gv5yv3DoZOFSXz7yydeV1H8m6pfwstn' playlist />
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -26,4 +26,3 @@ In this guide, we'll look at the following topics:
|
|||
|
||||
This will be enough to get you started. If you'd like to learn more,
|
||||
visit [markdownguide.org](https://www.markdownguide.org/).
|
||||
|
||||
|
|
|
@ -43,12 +43,13 @@ See first list item for an example.
|
|||
### Lining within the same website
|
||||
|
||||
When you are linking within freesewing.dev or freesewing.org you can use a relative link from
|
||||
the site root.
|
||||
the site root.\
|
||||
Use:
|
||||
|
||||
```text
|
||||
/guides/markdown/frequent-mistakes
|
||||
```
|
||||
|
||||
instead of
|
||||
|
||||
```text
|
||||
|
@ -111,7 +112,6 @@ sed eiusmod tempor incidunt ut labore et dolore magna aliqua.
|
|||
If you're using any markdown syntax within a custom component you want to also
|
||||
leave an empty line at the start and end of your component.
|
||||
|
||||
|
||||
```markdown
|
||||
Lorem ipsum dolor sit amet,
|
||||
|
||||
|
@ -125,11 +125,7 @@ sed eiusmod tempor incidunt ut labore et dolore magna aliqua.
|
|||
```
|
||||
|
||||
## Don't be shy to ask a friend
|
||||
|
||||
Learning a new language can be intimidating, whether its Javascript, Norse or
|
||||
Markdown but everyone in the Freesewing community is glad you're here and
|
||||
helping us make the site even more awesome.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -25,4 +25,3 @@ text where you are including the image. That way, you just need to specify
|
|||
the image name, and not the path to its location.
|
||||
|
||||
</Tip>
|
||||
|
||||
|
|
|
@ -7,10 +7,11 @@ order: 30
|
|||
You can make text *italic* or **bold**
|
||||
by wrapping it in 1 or 2 asterisk respectively.
|
||||
```
|
||||
|
||||
You can make text *italic* or **bold** by wrapping it in 1 or 2 asterisk respectively:
|
||||
|
||||
```md
|
||||
Alternatively, you can also use underscores to mark _italic_ or __bold__.
|
||||
```
|
||||
Alternatively, you can also use underscores to mark _italic_ or __bold__.
|
||||
|
||||
Alternatively, you can also use underscores to mark *italic* or **bold**.
|
||||
|
|
|
@ -11,6 +11,5 @@ Like
|
|||
this.
|
||||
```
|
||||
|
||||
Like
|
||||
Like\
|
||||
this.
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@ Links combine square brackets for the link text with round brackets for the dest
|
|||
```md
|
||||
[Like this](https://freesewing.org)
|
||||
```
|
||||
|
||||
[Like this](https://freesewing.org)
|
||||
|
||||
An alternative notation allows you to include the links as such:
|
||||
|
@ -22,6 +23,7 @@ See [the reference documentation][1] on [freesewing.dev][2]
|
|||
See [the reference documentation][1] on [freesewing.dev][2]
|
||||
|
||||
[1]: https://freesewing.dev/reference
|
||||
|
||||
[2]: https://freesewing.dev/reference
|
||||
|
||||
You don't have to use numbers, but can also use named references.
|
||||
|
@ -35,4 +37,3 @@ We moved the markdown content to [our monorepo][monorepo]
|
|||
We moved the markdown content to [our monorepo][monorepo]
|
||||
|
||||
[monorepo]: https://github.com/freesewing/freesewing
|
||||
|
||||
|
|
|
@ -29,5 +29,4 @@ They don't even have to be the correct numbers:
|
|||
|
||||
1. Item 1
|
||||
2. Item 2
|
||||
2. Item 3
|
||||
|
||||
3. Item 3
|
||||
|
|
|
@ -5,7 +5,6 @@ order: 70
|
|||
|
||||
If you need them, you can create tables too, using a structure as shown below:
|
||||
|
||||
|
||||
```md
|
||||
| Name | Description |
|
||||
| ---- | ----------- |
|
||||
|
@ -35,4 +34,3 @@ You can change the alignment of the columns by using a colon (`:`) on the line b
|
|||
| Compound | A substance composed of two or more elements. Chemically combined in definite proportions by weight |
|
||||
| Mixture | Two or more substances that are not chemically united, such as air |
|
||||
| Solution | A uniform mixture of varying proportions of a solvent and a solute |
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ You can just start writing.
|
|||
|
||||
An empty line starts a new paragraph.
|
||||
```
|
||||
|
||||
You can just start writing.
|
||||
|
||||
An empty line starts a new paragraph.
|
||||
|
||||
|
|
|
@ -34,5 +34,3 @@ application.
|
|||
That part is outside the scope of this guide.
|
||||
|
||||
</Note>
|
||||
|
||||
|
||||
|
|
|
@ -16,4 +16,3 @@ If you then wanted to make a long-sleeved version of your T-shirt pattern, you o
|
|||
a new sleeve part. You can re-use the `front` and `back` parts of your short-sleeved T-shirt pattern, as they did not change.
|
||||
|
||||
When developing a FreeSewing pattern, you will spend most of your time designing the individual parts.
|
||||
|
||||
|
|
|
@ -39,4 +39,3 @@ Our example image (which, if you hadn't realized was created with FreeSewing) ha
|
|||
paths in it. Each box, the arrows, the lines in the React logo, and so on.
|
||||
|
||||
</Tip>
|
||||
|
||||
|
|
|
@ -17,4 +17,3 @@ input and will return a new instance of your pattern.
|
|||
That pattern instance will have a `draft()` method which will do the actual work of
|
||||
drafting the pattern. Once drafted, you can either call the `render()` method on
|
||||
the pattern instance, or pass it to [our React component](/packages/components) to render it in the browser.
|
||||
|
||||
|
|
|
@ -35,4 +35,3 @@ Our example image (which, if you hadn't realized was created with FreeSewing) ha
|
|||
points in it. The corners of the boxes, the location where the text goes, and so on.
|
||||
|
||||
</Tip>
|
||||
|
||||
|
|
|
@ -21,4 +21,3 @@ of a `button`, `buttonhole`, and `logo` snippet added to a FreeSewing pattern:
|
|||
<Example part="snippet">
|
||||
An example of the use of snippets
|
||||
</Example>
|
||||
|
||||
|
|
|
@ -11,4 +11,3 @@ The store provides key-value storage that is shared across your pattern.
|
|||
|
||||
If you have some information in one part that you want to make available
|
||||
outside that part (in another part) you can save it to the store.
|
||||
|
||||
|
|
|
@ -20,6 +20,7 @@ const condition = settings => {
|
|||
else return false // Do not load the plugin
|
||||
}
|
||||
```
|
||||
|
||||
You pass your plugin and condition method as a third parameter to the Design constructor
|
||||
with the `plugin` and `condition` keys respectively.
|
||||
|
||||
|
@ -51,9 +52,9 @@ const Pattern = new freesewing.Design(
|
|||
Our condition method will return `true` only if the following conditions are met:
|
||||
|
||||
- A `settings` object is passed into the method
|
||||
- `settings.options` is _truthy_
|
||||
- `settings.options.draftForHighBust` is _truthy_
|
||||
- `settings.options.measurements.highBust` is _truthy_
|
||||
- `settings.options` is *truthy*
|
||||
- `settings.options.draftForHighBust` is *truthy*
|
||||
- `settings.options.measurements.highBust` is *truthy*
|
||||
|
||||
This is a real-world example from our Teagan pattern. A t-shirt pattern that can be
|
||||
drafted to the high bust (rather than the full chest circumference) if the user
|
||||
|
@ -62,4 +63,3 @@ choses so.
|
|||
But that feat is handled auto-magically by `plugin-bust` which is a build-time plugin.
|
||||
So whether to load this plugin or not hinges on the user settings, which is why we
|
||||
load this plugin conditionally.
|
||||
|
||||
|
|
|
@ -18,4 +18,3 @@ called. It will receive two parameters:
|
|||
|
||||
- An object relevant to the hook. See the [hooks API reference](/reference/hooks/) for details.
|
||||
- Data passed when the hook was registered (optional)
|
||||
|
||||
|
|
|
@ -24,4 +24,3 @@ import config from "../config"
|
|||
|
||||
const Pattern = new freesewing.Design(config, [plugins, gorePlugin] )
|
||||
```
|
||||
|
||||
|
|
|
@ -22,5 +22,3 @@ const myAaron = new Aaron()
|
|||
Plugins that use only hooks are typically run-time plugins
|
||||
|
||||
</Tip>
|
||||
|
||||
|
||||
|
|
|
@ -61,4 +61,3 @@ to a macro needs to be contained in a single argument.
|
|||
Typically, you use a single plain object to configure the macro.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -22,4 +22,3 @@ Your plugin should export an object with the following structure:
|
|||
The `name` and `version` attributes are self-explanatory.
|
||||
The [hooks](/guides/plugins/hooks/) and [macros](/guides/plugins/macros/) sections
|
||||
explain the `hooks` and `macros` properties.
|
||||
|
||||
|
|
|
@ -25,14 +25,12 @@ Our [plugin bundle](/reference/plugins/bundle/) bundles build-time plugins that
|
|||
|
||||
<Note>Plugins that provide a macro are typically build-time plugins</Note>
|
||||
|
||||
|
||||
## Run-time plugins
|
||||
|
||||
A plugin is a run-time plugin if it can be added after instantiating your pattern.
|
||||
Think of it as a plugin to be used in the front-end.
|
||||
|
||||
Run-time plugins are not a dependecy of the pattern. They just _add something_ to it.
|
||||
Run-time plugins are not a dependecy of the pattern. They just *add something* to it.
|
||||
|
||||
Our [theme plugin](/reference/plugins/theme/) is a good example of a run-time plugin.
|
||||
If it's missing, your pattern will still work, it just won't look pretty.
|
||||
|
||||
|
|
|
@ -17,4 +17,3 @@ pattern.on('preRender', function(svg) {
|
|||
```
|
||||
|
||||
Congratulations, you've just made your pattern yellow.
|
||||
|
||||
|
|
|
@ -56,4 +56,3 @@ It is good practice to wrap you hook methods in a call like this, because you ha
|
|||
no guarantee the user won't render your pattern more than once.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -33,10 +33,8 @@ As long as you intuitively *get* how the control points influence the curve, you
|
|||
|
||||
###### More on Bézier curves
|
||||
|
||||
Wikipedia has a good [introduction to Bézier curves](https://en.wikipedia.org/wiki/B%C3%A9zier_curve).
|
||||
Wikipedia has a good [introduction to Bézier curves](https://en.wikipedia.org/wiki/B%C3%A9zier_curve).\
|
||||
For a deep-dive into the subject, check out [A Primer on Bézier Curves](https://pomax.github.io/bezierinfo/) by
|
||||
[Pomax](https://github.com/Pomax).
|
||||
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -24,4 +24,3 @@ This is a common point of confusion so keep in mind that the Y-axis may
|
|||
not behave as you would have intuitively expected.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -38,4 +38,3 @@ Few people straddle both worlds, so as you start using FreeSewing, chances are
|
|||
you'll learn a few new things along the way.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -12,4 +12,3 @@ will greatly help you to understand FreeSewing.
|
|||
For example, the coordinate system and the way paths
|
||||
are structured are all related to the SVG drawing system, which is closely related
|
||||
to other 2D drawing technologies such as PostScript or PDF.
|
||||
|
||||
|
|
|
@ -12,5 +12,3 @@ When you write `1`, that’s one mm. When you write `7.8`, that’s 7.8mm.
|
|||
|
||||
While you can use cm or inch on the FreeSewing website, that is merely a layer of
|
||||
abstration on top of the internal units, which are always mm.
|
||||
|
||||
|
||||
|
|
|
@ -27,7 +27,6 @@ Bonus: You'll get an `@freesewing.org` email alias
|
|||
|
||||
</Tip>
|
||||
|
||||
|
||||
## Languages
|
||||
|
||||
We currently support the following five languages:
|
||||
|
@ -129,8 +128,6 @@ These will be filled in later with the correct value. For example:
|
|||
|
||||
looks like this in Spanish
|
||||
|
||||
|
||||
```yaml
|
||||
{field} guardado
|
||||
```
|
||||
|
||||
|
|
|
@ -9,7 +9,6 @@ Measurements are stored in `pattern.settings.measurements`.
|
|||
You can pull them out of there with
|
||||
the [shorthand](/howtos/code/shorthand/) call:
|
||||
|
||||
|
||||
```js
|
||||
const { measurements, options } = part.shorthand()
|
||||
|
||||
|
|
|
@ -9,10 +9,8 @@ Options are stored in `pattern.settings.options`.
|
|||
You can pull them out of there with
|
||||
the [shorthand](/howtos/code/shorthand/) call:
|
||||
|
||||
|
||||
```js
|
||||
const { measurements, options } = part.shorthand()
|
||||
|
||||
let sleeveBonus = measurements.shoulderToWrist * (1 + options.sleeveLengthBonus);
|
||||
```
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ about: While documentation is good, sometimes you want to add some instructions
|
|||
|
||||
</Note>
|
||||
|
||||
Adding instructions to your pattern is _just_ a matter of adding text.
|
||||
Adding instructions to your pattern is *just* a matter of adding text.
|
||||
The tricky part is to make sure your text can be translated.
|
||||
|
||||
Below is a rather involved example from Aaron:
|
||||
|
|
|
@ -30,4 +30,3 @@ Below is an example of the available snippets, and the use of the `data-scale` a
|
|||
<Example pattern="rendertest" options_only="snippets">
|
||||
Overview of available snippets
|
||||
</Example>
|
||||
|
||||
|
|
|
@ -48,4 +48,3 @@ paths.example = new Path()
|
|||
<Example part="path_attr">
|
||||
Text on a path
|
||||
</Example>
|
||||
|
||||
|
|
|
@ -15,4 +15,3 @@ In addition, all attributes that have a `data-circle-` prefix will apply to the
|
|||
<Example pattern="rendertest" options_only="circles">
|
||||
Circles
|
||||
</Example>
|
||||
|
||||
|
|
|
@ -17,19 +17,21 @@ about: Shows how to create a variation of a pre-existing design
|
|||
## Setup
|
||||
|
||||
To be able to extend existing patterns, you will have to access them on your local machine. There are two ways to do this:
|
||||
|
||||
- add needed dependencies when using `npx create-freesewing-pattern`
|
||||
- create your new pattern in a clone of the [freesewing monorepo](https://github.com/freesewing/freesewing)
|
||||
|
||||
### When using `npx create-freesewing-pattern`
|
||||
|
||||
If you want to use existing patterns when creating your new pattern with `npx create-freesewing-pattern`, you have to install the needed dependencies.
|
||||
Let's say you want to extend Brian.
|
||||
If you want to use existing patterns when creating your new pattern with `npx create-freesewing-pattern`, you have to install the needed dependencies.\
|
||||
Let's say you want to extend Brian.\
|
||||
In your freshly created pattern folder, you now have to run
|
||||
|
||||
```bash
|
||||
npm install --save @freesewing/brian
|
||||
```
|
||||
This will install Brian as a dependency, which you can then access in your pattern (see [examples](/howtos/code/extend-pattern/#examples) below on how to do that).
|
||||
|
||||
This will install Brian as a dependency, which you can then access in your pattern (see [examples](/howtos/code/extend-pattern/#examples) below on how to do that).\
|
||||
This has to be repeated for every new pattern you create.
|
||||
|
||||
<Tip>
|
||||
|
@ -41,6 +43,7 @@ This has to be repeated for every new pattern you create.
|
|||
### Using the freesewing monorepo
|
||||
|
||||
You can use the power of robots to install the needed dependencies if you work in a clone of the [freesewing monorepo](https://github.com/freesewing/freesewing).
|
||||
|
||||
- First, clone the monorepo (or your fork of it) to your local machine.
|
||||
- Go to the root and run `yarn kickstart`. This will take a while, so grab a coffee and come back later.
|
||||
- Once that is done, edit the file `config/descriptions.yaml` to include the name and description of your new pattern (take care to start the description with `A FreeSewing pattern`).
|
||||
|
|
|
@ -12,7 +12,6 @@ about: When you inherit a part, it comes with a bunch of paths. Here'show to rem
|
|||
|
||||
</Note>
|
||||
|
||||
|
||||
```js
|
||||
for (let i in paths) delete paths[i]
|
||||
```
|
||||
|
|
|
@ -13,7 +13,6 @@ about: Shows how to share dimensions between similar pattern parts
|
|||
|
||||
</Note>
|
||||
|
||||
|
||||
When you have different pattern parts that look similar -- like the front
|
||||
and back of a garment -- you may find that there's a lot of dimensions
|
||||
shared between them.
|
||||
|
@ -49,8 +48,7 @@ import { dimensions } from './shared'
|
|||
|
||||
<Note>
|
||||
|
||||
Since our shared dimension method is a so-called _named export_ we need to
|
||||
Since our shared dimension method is a so-called *named export* we need to
|
||||
import it with the syntax you see above.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ about: Shows how to store a seam length so you can true the seam of another part
|
|||
|
||||
</Note>
|
||||
|
||||
Often when designing patterns, we need to _true a seam_ which means to make sure
|
||||
Often when designing patterns, we need to *true a seam* which means to make sure
|
||||
that two parts that need to be joined together are the same distance.
|
||||
|
||||
The example below is from Aaron and stores the length of the armhole seam:
|
||||
|
@ -27,4 +27,3 @@ The example below is from Aaron and stores the length of the armhole seam:
|
|||
.length()
|
||||
)
|
||||
```
|
||||
|
||||
|
|
|
@ -52,5 +52,3 @@ points.example.attr(
|
|||
|
||||
Whether you're rendering to SVG or React, by using ` ` your spaces
|
||||
will be properly rendered in both environments.
|
||||
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ about: Shows how to adapt the length of the sleevecap to fit your armhole
|
|||
</Note>
|
||||
|
||||
Fitting the sleevecap to the armhole means that we need to make sure the length
|
||||
of the seams match.
|
||||
of the seams match.\
|
||||
A similar challenge is to fit the collar to the neck opening and so on.
|
||||
|
||||
For all of these situations where you have to create curved seams with matching
|
||||
|
|
|
@ -12,7 +12,7 @@ about: Slash and spread is easy enough on paper, here's how to do it in code
|
|||
|
||||
</Note>
|
||||
|
||||
When we _slash and spread_ a pattern, we cut out a triangle, and then rotate it
|
||||
When we *slash and spread* a pattern, we cut out a triangle, and then rotate it
|
||||
around the tip of the triangle.
|
||||
|
||||
And that's exactly what we do in code. We just need to know:
|
||||
|
|
|
@ -7,4 +7,3 @@ the hardest part. These guides will walk you through setting up your
|
|||
development environment on your operating system of choice.
|
||||
|
||||
<ReadMore />
|
||||
|
||||
|
|
|
@ -8,4 +8,3 @@ Blog posts have been migrated to [Strapi](https://strapi.io/), a headless CMS sy
|
|||
Our strapi instance can be accessed at [posts.freesewing.org](https://posts.freesewing.org/).
|
||||
|
||||
If you don't have a Strapi account (yet), [reach out to us on Discord](https://discord.freesewing.org).
|
||||
|
||||
|
|
|
@ -13,4 +13,3 @@ categories:
|
|||
- anothercat
|
||||
- somethingelse
|
||||
```
|
||||
|
||||
|
|
|
@ -11,6 +11,3 @@ about: |
|
|||
This is a multi-line text
|
||||
that will be assigned to the about key
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -5,7 +5,6 @@ order: zcc
|
|||
|
||||
You can find a list of all FreeSewing hotwtos below:
|
||||
|
||||
|
||||
<ReadMore recurse />
|
||||
|
||||
<Related>
|
||||
|
@ -20,4 +19,3 @@ guides take more time to explain in-depth what is being done and why.
|
|||
For more details, refer to [How we structure our documentation](/guides/docs).
|
||||
|
||||
</Related>
|
||||
|
||||
|
|
|
@ -34,7 +34,6 @@ Which can be done as a one-liner since `use()`, `draft()` and
|
|||
|
||||
Below is a complete example.
|
||||
|
||||
|
||||
```html
|
||||
<html>
|
||||
<head>
|
||||
|
@ -91,5 +90,3 @@ If you compare this example with [our NodeJS
|
|||
example](/reference/howtos/nodejs) you'll notice that you do not
|
||||
need to worry about loading any dependencies. Not even `@freesewing/core`
|
||||
is loaded, because Skypack will pull in all dependencies for you.
|
||||
|
||||
|
||||
|
|
|
@ -3,4 +3,3 @@ title: FreeSewing in different environments
|
|||
---
|
||||
|
||||
You can use FreeSewing a different environments:
|
||||
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
title: Common git challenges
|
||||
---
|
||||
|
||||
|
||||
Git is a distributed version control system originally created by
|
||||
Linus Torvalds (of linux fame).
|
||||
Much like Linux itself, git is immensly powerful yet can be intimidating
|
||||
|
@ -25,4 +24,3 @@ check out this [Git For Ages 4 And Up](https://youtu.be/1ffBJ4sVUb4?t=121) video
|
|||
A bit longer, but it well worth a watch.
|
||||
|
||||
</Tip>
|
||||
|
||||
|
|
|
@ -100,5 +100,4 @@ end result of our repeated attempts.
|
|||
This approach keeps the commit history clean, not to mention that it makes
|
||||
you look like a total boss who gets everything right at the first attempt.
|
||||
|
||||
|
||||
[1]: https://github.com/freesewing/freesewing/commit/5204ff5c16327962108e1629716e045275d3bf84
|
||||
|
|
|
@ -16,11 +16,8 @@ Many of the FreeSewing contributors hang out there, and since we're spread over
|
|||
different parts of the world, you're likely to find somebody there who can answer
|
||||
your question(s) at any given moment.
|
||||
|
||||
|
||||
<Tip>
|
||||
|
||||
If you want to report a problem, please [create an issue](https://github.com/freesewing/freesewing/issues/new).
|
||||
|
||||
</Tip>
|
||||
|
||||
|
||||
|
|
|
@ -8,4 +8,3 @@ Just being there to answer questions and chat with other people is a valuable pa
|
|||
We also can be found [in plenty of other places](https://freesewing.org/community/where/) where we'd love to have you join us.
|
||||
|
||||
Apart from being present in chat rooms and social media, you could also take on some responsibility on one or more platforms.
|
||||
|
||||
|
|
|
@ -5,4 +5,3 @@ title: Develop sewing patterns
|
|||
You could program new designs for FreeSewing.
|
||||
If you're not afraid of Javascript and are happy to team up with a designer,
|
||||
you could work on a new pattern together.
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
title: Ways to contribute
|
||||
---
|
||||
|
||||
Thank you for being part of our community, and for wanting to contribute! ❤️
|
||||
Thank you for being part of our community, and for wanting to contribute! ❤️\
|
||||
FreeSewing is an open source project ran by volunteers from different corners of the world.
|
||||
We would love to have you on board, and this page lists everything you need to know to get started.
|
||||
|
||||
|
@ -49,6 +49,3 @@ wants to learn, especially when doing so enables upwards social mobility.
|
|||
[Reach out](https://discord.freesewing.org/) and we let's do this.
|
||||
|
||||
</Comment>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -4,4 +4,3 @@ title: Make illustrations
|
|||
|
||||
Our documentation can always use some more/better illustrations to help people figure out how
|
||||
to make our patterns into garments.
|
||||
|
||||
|
|
|
@ -5,4 +5,3 @@ title: Language ambassador
|
|||
You could represent FreeSewing in a non-English community.
|
||||
There, you can help answer questions or triage problem reports.
|
||||
Or you can point out where translations are missing.
|
||||
|
||||
|
|
|
@ -12,4 +12,3 @@ This is helpful in more than one way:
|
|||
- It reduces the cognitive load of the people implementing changes because they don't have to worry about forgetting things
|
||||
- It increases transparency by making it clear what sort of things are being worked on
|
||||
- It gives us that good feeling of closing the issue when the task is done
|
||||
|
||||
|
|
|
@ -3,16 +3,15 @@ title: Report bugs
|
|||
---
|
||||
|
||||
Bugs are tracked as [GitHub issues](https://guides.github.com/features/issues/).
|
||||
Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=&labels=%F0%9F%90%9B+bug&template=bug-report.md&title=Bug+report) if you've found one.
|
||||
Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=\&labels=%F0%9F%90%9B+bug\&template=bug-report.md\&title=Bug+report) if you've found one.
|
||||
|
||||
Explain the problem and include additional details to help maintainers reproduce the problem:
|
||||
|
||||
* **Use a clear and descriptive title** for the issue to identify the problem.
|
||||
* **Describe the exact steps which reproduce the problem** in as many details as possible.
|
||||
* **Include relevant information** such as your username on the site, or the person you drafted a pattern for.
|
||||
- **Use a clear and descriptive title** for the issue to identify the problem.
|
||||
- **Describe the exact steps which reproduce the problem** in as many details as possible.
|
||||
- **Include relevant information** such as your username on the site, or the person you drafted a pattern for.
|
||||
|
||||
Provide more context by answering these questions:
|
||||
|
||||
* **Did the problem start happening recently** (e.g. it worked fine before but since the latest update it doesn't)
|
||||
* **Can you reliably reproduce the issue?** If not, provide details about how often the problem happens and under which conditions it normally happens.
|
||||
|
||||
- **Did the problem start happening recently** (e.g. it worked fine before but since the latest update it doesn't)
|
||||
- **Can you reliably reproduce the issue?** If not, provide details about how often the problem happens and under which conditions it normally happens.
|
||||
|
|
|
@ -5,5 +5,4 @@ title: Showcase our patterns
|
|||
Anytime somebody has made one of our patterns, we like to showcase it on [freesewing.org](https://freesewing.org/showcase/).
|
||||
|
||||
Unpublished showcases are tracked as [GitHub issues](https://guides.github.com/features/issues/).
|
||||
Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=&labels=%F0%9F%91%8D+good+first+issue%2C+%F0%9F%93%B8+showcase%2C+%F0%9F%A4%97+community&template=showcase-template.md&title=Create+showcase+from+this+content) when you've made one of our patterns, or have come across pictures from another maker who did.
|
||||
|
||||
Create an issue [in our monorepo](https://github.com/freesewing/freesewing/issues/new?assignees=\&labels=%F0%9F%91%8D+good+first+issue%2C+%F0%9F%93%B8+showcase%2C+%F0%9F%A4%97+community\&template=showcase-template.md\&title=Create+showcase+from+this+content) when you've made one of our patterns, or have come across pictures from another maker who did.
|
||||
|
|
|
@ -4,4 +4,3 @@ title: Translation
|
|||
|
||||
You could translate FreeSewing into one of its additional languages
|
||||
(French, German, Dutch, Spanish). Or if you’re ambitious, add a new one.
|
||||
|
||||
|
|
|
@ -12,4 +12,3 @@ Triaging issues is a great way to get involved in FreeSewing. You can do tasks s
|
|||
|
||||
All FreeSewing contributors have triage permissions that allows them to do this.
|
||||
If you don't have the rights, or bump into any issues, [reach out to us on Discord](https://discord.freesewing.org).
|
||||
|
||||
|
|
|
@ -28,4 +28,3 @@ paths.demo = new Path()
|
|||
paths.demo = new Path()
|
||||
.attr('class', 'classA classB');
|
||||
```
|
||||
|
||||
|
|
|
@ -17,4 +17,3 @@ paths.demo = new Path()
|
|||
|
||||
paths.clone = paths.demo.clone()
|
||||
```
|
||||
|
||||
|
|
|
@ -18,4 +18,3 @@ paths.demo = new Path()
|
|||
let class = paths.demo.attributes.getAsArray('class');
|
||||
// class now holds: ["classA", "classB"]
|
||||
```
|
||||
|
||||
|
|
|
@ -41,4 +41,3 @@ In this example:
|
|||
See [Part dependencies](/advanced/dependencies) for more in-depth information on dependencies.
|
||||
|
||||
</Tip>
|
||||
|
||||
|
|
|
@ -11,7 +11,6 @@ Note that hidden parts will be rendered when the user requests
|
|||
to [only draft some parts of a pattern](/reference/api/settings/only)
|
||||
and includes the hidden part(s).
|
||||
|
||||
|
||||
## Structure
|
||||
|
||||
An array of strings that holds part names.
|
||||
|
|
|
@ -6,7 +6,6 @@ Option groups allow you to group options together when presenting them
|
|||
to the user. They also support (one) level of sub-grouping which is
|
||||
useful when your design has many options.
|
||||
|
||||
|
||||
<Note>
|
||||
|
||||
##### This section applies to frontend integration
|
||||
|
|
|
@ -23,4 +23,3 @@ options: {
|
|||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
|
|
@ -34,4 +34,3 @@ parts of the code beyond the control of the end user, but accessible to
|
|||
developers.
|
||||
|
||||
</Tip>
|
||||
|
||||
|
|
|
@ -27,10 +27,10 @@ There are the five option types that an aspiring pattern designer should be
|
|||
familiar with:
|
||||
|
||||
1. [**boolean** options][bool] are for yes/no choices
|
||||
1. [**counter** options][count] are for integer values
|
||||
1. [**degree** options][deg] are for degrees
|
||||
1. [**list** options][list] are for a list of possible choices
|
||||
1. [**percentage** options][pct] are for percentages
|
||||
2. [**counter** options][count] are for integer values
|
||||
3. [**degree** options][deg] are for degrees
|
||||
4. [**list** options][list] are for a list of possible choices
|
||||
5. [**percentage** options][pct] are for percentages
|
||||
|
||||
<Tip>
|
||||
|
||||
|
@ -45,7 +45,7 @@ For the sake of completeness, here are the two other types of options:
|
|||
|
||||
6. [**constant** options][const] are used as
|
||||
[feature flags](https://en.wikipedia.org/wiki/Feature_toggle)
|
||||
6. [**millimeter** options][const] are **deprecated** (in favor of [snapped
|
||||
7. [**millimeter** options][const] are **deprecated** (in favor of [snapped
|
||||
percentage options][snapped])
|
||||
|
||||
</Related>
|
||||
|
@ -66,7 +66,6 @@ How you configure the default value depends on the option type
|
|||
|
||||
</Note>
|
||||
|
||||
|
||||
### Optionally hide options by configuring a `hide()` method
|
||||
|
||||
<Note>
|
||||
|
@ -126,12 +125,16 @@ to determine whether an option should be shown or not.
|
|||
|
||||
</Tip>
|
||||
|
||||
|
||||
[bool]: /reference/api/config/options/bool
|
||||
[const]: /reference/api/config/options/const
|
||||
[count]: /reference/api/config/options/count
|
||||
[deg]: /reference/api/config/options/deg
|
||||
[list]: /reference/api/config/options/list
|
||||
[pct]: /reference/api/config/options/pct
|
||||
[snapped]: /reference/api/config/options/pct/snap
|
||||
|
||||
[const]: /reference/api/config/options/const
|
||||
|
||||
[count]: /reference/api/config/options/count
|
||||
|
||||
[deg]: /reference/api/config/options/deg
|
||||
|
||||
[list]: /reference/api/config/options/list
|
||||
|
||||
[pct]: /reference/api/config/options/pct
|
||||
|
||||
[snapped]: /reference/api/config/options/pct/snap
|
||||
|
|
|
@ -34,13 +34,13 @@ options: {
|
|||
##### What's wrong with millimeter options?
|
||||
|
||||
Millimeter options do not scale.
|
||||
Parametric design is the _raison d'être_ of FreeSewing and that core belief
|
||||
Parametric design is the *raison d'être* of FreeSewing and that core belief
|
||||
that things should seamlessly adapt goes out the window when you use a `mm`
|
||||
option because now you have a value that will not change based on the
|
||||
input measurements.
|
||||
|
||||
You could argue that it's fine because _you can just lower the option_
|
||||
but that breaks the principle of _sensible defaults_ (aka no surprises).
|
||||
You could argue that it's fine because *you can just lower the option*
|
||||
but that breaks the principle of *sensible defaults* (aka no surprises).
|
||||
The fact that you can sidestep the bullet does not mean you're not creating
|
||||
a footgun.
|
||||
|
||||
|
|
|
@ -19,8 +19,11 @@ Your percentage option should be a plain object with these properties:
|
|||
- `snap` <small>(optional)</small> : The configuration to control [snapping of percentage options][snap]
|
||||
|
||||
[hide]: /reference/api/config/options#optionally-hide-options-by-configuring-a-hide-method
|
||||
|
||||
[fromabs]: /reference/api/config/options/pct/fromabs
|
||||
|
||||
[toabs]: /reference/api/config/options/pct/toabs
|
||||
|
||||
[snap]: /reference/api/config/options/pct/snap
|
||||
|
||||
<Note>
|
||||
|
@ -58,4 +61,3 @@ options: {
|
|||
Percentage options have a few more tricks up their sleeve:
|
||||
|
||||
<ReadMore />
|
||||
|
||||
|
|
|
@ -38,7 +38,6 @@ The second parameter is the pattern's run-time configuration
|
|||
or [settings](/reference/api/settings) which holds -- among other things -- the
|
||||
measurements provided by the user.
|
||||
|
||||
|
||||
## Example
|
||||
|
||||
In our example above, let's say that the `chestEase` option is
|
||||
|
@ -96,4 +95,3 @@ it will also add a `toAbs()` method that does the inverse: return the
|
|||
value in millimeter of whatever percentage the option is set to.
|
||||
See [Reporting a percentage option value in
|
||||
millimeter](/reference/api/config/options/pct/toabs) for details.
|
||||
|
||||
|
|
|
@ -236,8 +236,11 @@ to clarify the difference.
|
|||
</Note>
|
||||
|
||||
[fromabs]: /reference/api/config/options/pct/fromabs
|
||||
[toabs]: /reference/api/config/options/pct/toabs
|
||||
[pct]: /reference/api/config/options/pct
|
||||
[list]: /reference/api/config/options/list
|
||||
[hide]: /reference/api/config/options#optionally-hide-options-by-configuring-a-hide-method
|
||||
|
||||
[toabs]: /reference/api/config/options/pct/toabs
|
||||
|
||||
[pct]: /reference/api/config/options/pct
|
||||
|
||||
[list]: /reference/api/config/options/list
|
||||
|
||||
[hide]: /reference/api/config/options#optionally-hide-options-by-configuring-a-hide-method
|
||||
|
|
|
@ -28,7 +28,6 @@ The second parameter is the pattern's run-time configuration
|
|||
or [settings](/reference/api/settings) which holds -- among other things -- the
|
||||
measurements provided by the user.
|
||||
|
||||
|
||||
## Example
|
||||
|
||||
In our example above, let's say that the `chestEase` option is
|
||||
|
@ -85,4 +84,3 @@ the value in millimeter of whatever percentage the option is set to -- it will
|
|||
also add a `fromAbs()` method that does the inverse: return the percentage of
|
||||
any millimeter value passed into it. See [Setting a value in millimeter as a
|
||||
percentage option](/api/config/options/pct/fromabs) for details.
|
||||
|
||||
|
|
|
@ -28,4 +28,3 @@ parts: [
|
|||
"back"
|
||||
]
|
||||
```
|
||||
|
||||
|
|
|
@ -7,4 +7,3 @@ code: "Joost De Cock",
|
|||
```
|
||||
|
||||
The name of the developer.
|
||||
|
||||
|
|
|
@ -26,4 +26,3 @@ Options that are not included in the `optionGroup` configuration won't be
|
|||
exposed in the frontend and thus will be unavailable to the user.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -24,4 +24,3 @@ optionGroups: {
|
|||
Only create subgroups one level deep.
|
||||
We do not support groups in groups in groups.
|
||||
</Warning>
|
||||
|
||||
|
|
|
@ -12,7 +12,4 @@ A string that holds a valid semantic version number.
|
|||
|
||||
## Example
|
||||
|
||||
```
|
||||
version: "0.3.1"
|
||||
```
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ The `@freesewing/core` default export is a single object with the following prop
|
|||
|
||||
<Note>
|
||||
|
||||
You will typically use the `Design()` constructor.
|
||||
You will typically use the `Design()` constructor.\
|
||||
The other constructors and utilities below are exported to facilitate unit testing.
|
||||
|
||||
</Note>
|
||||
|
@ -40,4 +40,3 @@ The other constructors and utilities below are exported to facilitate unit testi
|
|||
- `Snippet`: The [Snippet constructor](/reference/api/snippet) to create a new snippet
|
||||
- `utils`: A collection of [utilities](/reference/api/utils)
|
||||
- `version`: A string containing the `@freesewing/core` version number
|
||||
|
||||
|
|
|
@ -44,4 +44,3 @@ Instead, you can (and should) divide your text into chunks that need translating
|
|||
|
||||
This is also why we're not inserting **Seam allowance** but rather **seamAllowance**;
|
||||
It is merely a key to indicate what translation we want to replace this text with.
|
||||
|
||||
|
|
|
@ -11,4 +11,3 @@ Like the `preRender` hook, it receives [the SVG object](/api/svg) as its first p
|
|||
The `postRender` hooks is rarely used.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -16,4 +16,3 @@ It is triggered just before the end of either:
|
|||
The `postSample` hook is rarely used.
|
||||
|
||||
</Note>
|
||||
|
||||
|
|
|
@ -43,4 +43,3 @@ macro('sprinkle', {
|
|||
| `prefix` | | `string` | A prefix to apply to the names of the generated path and points |
|
||||
| `suffix` | | `string` | A suffix to apply to the names of the generated path and points |
|
||||
| `width` | `3` | `number` | Width of the bartack |
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue