1
0
Fork 0

wip: Work on account docs

This commit is contained in:
joostdecock 2024-10-05 17:33:15 +02:00
parent d7a01af731
commit 7c0ba68827
52 changed files with 626 additions and 629 deletions

3
.gitignore vendored
View file

@ -28,6 +28,9 @@ sites/*/package-lock.json
# Nx cache # Nx cache
.nx/cache .nx/cache
# Docusaurus cache
.docusaurus
# Sites prebuild artifacts # Sites prebuild artifacts
sites/*/public/locales/*/*.json sites/*/public/locales/*/*.json
!sites/sde/public/locales/*/*.json !sites/sde/public/locales/*/*.json

View file

@ -1,9 +0,0 @@
---
title: Bio
---
Your account **bio** is the place where you can tell a little bit about yourself.
Other FreeSewing users can see your bio, so this is a way to find like-minded people or promote your own content.
This field supports Markdown, so you can add links and even images.

View file

@ -1,9 +0,0 @@
---
title: Measurements Sets Comparison
---
We can occasionally show how your sets of measurements compare to other measurements sets.
This allows us to detect potential problems in your measurements or patterns.
Comparing yourself to others is the fastest way to be unhappy, so if you'd
rather not see any comparisons, you can disable this feature altogether.

View file

@ -1,22 +0,0 @@
---
title: User Experience
---
This setting allows you to control what sort of a user experience you want.
One that is more simple, with advanced features hidden. Or one that has all bells and whistles.
FreeSewing is a rather advanced platform, and that can be intimidating for new users.
This setting was created to allow people to start simple, and then unlock more features later.
## Levels and Features
Each User Experience level adds additional features and settings
to the ones provided by the levels below it.
| Level | Pattern Drafting UI | Account Settings |
|:-----:|---------|----------|
| **1** | **Settings:** Units<br />**Views:** Pattern Editor, Pattern Measurements, Print Layout, Save Pattern As, Export Pattern, Documentation | <br />**Data:** Patterns, Measurement Sets <br />**Settings:** User Experience<br /> **Patterns:** Name, Image<br /> **Measurement Sets:** Name, Image, Units |
| **2** | **Settings:** Seam Allowance, Paperless<br />**UI:** Kiosk Mode<br />**Views:** Pattern Logs | <br />**Data:** Bookmarks<br />**Info:** Username, Bio, Img<br />**Settings:** Language, Units, Newsletter Subscription, Consent & Privacy<br />**Security:** Password<br />**Patterns:** Notes, Created, Updated<br />**Measurement Sets:** Notes, Created, Updated |
| **3** | **Settings:** Language<br />**Views:** Test Design, Time Design | <br />**Info:** Email Address<br />**Settings:** Metricset Comparison<br />**Security:** Two-Factor Authentication<br />**Social:** GitHub, Instagram, Mastodon, Reddit, Twitch, TikTok, Website<br />**Patterns:** Public<br />**Measurement Sets:** Public |
| <br />**4** | <br />**Settings:** Details, Expand, Included Parts, Scale, Margin<br />**UI:** Render Engine<br />**Views:** Edit Settings by Hand, Pattern Inspector | **Data:** API Keys<br />**Security:** API Keys<br />**Patterns:** ID<br />**Measurement Sets:** ID |
| <br />**5** | <br />("_Are you sure?_" confirmation guardrails removed.) | <br />("_Are you sure?_" confirmation guardrails removed.) |

View file

@ -1,7 +0,0 @@
---
title: Email Address
---
Your email address ensures we can reach you when it's needed.
For example when you have forgotten your password.

View file

@ -1,14 +0,0 @@
---
title: GitHub identity
---
If you add your **GitHub username** and **GitHub email address** to your account, we will use them when interacting with GitHub on your behalf.
Note that both your GitHub username and email is public info. This merely allows us to make a link between your FreeSewing account and GitHub account.
For example, when you report a problem on this website, we can mention you so you will receive notifications when there is an update. For this, your username is sufficient.
When you submit a showcase post or make changed to our content, we can credit those commits to you if we have both your username and the email address you use on GitHub.
:::note
If all of this in confusing, you don't have to provide this info. It's an advanced feature.:::

View file

@ -1,16 +0,0 @@
---
title: User ID
jargon: true
terms: id, uid
---
Every FreeSewing user has a user ID, sometimes referred to as `UID` or just `ID`.
It is a number that uniquely identifies one particular user.
You can find it on [your account page](/account) under **info**.
Or navigate to [/id](/id) and -- if you are logged in -- you will see your ID there.
:::tip
Make sure to always mention your ID when [contacting support](/support).
:::

View file

@ -1,7 +0,0 @@
---
title: Profile Image
---
You can choose a **profile image** to further personalize your account.
It can be a picture of you, your cat, your favourite cartoon character. You do you.

View file

@ -1,11 +0,0 @@
---
title: Language
---
This controls the **language** that will be used to generate your patterns,
as well send you emails and so on.
It is in other words a central language setting stored in your account.
It does not control the language of the website itself.
That setting -- just like the theme you prefer -- is stored on your device, not in our backend.

View file

@ -1,5 +0,0 @@
---
title: Newsletter
---
This allows you to subscribe to the FreeSewing newsletter. Or not.

View file

@ -1,9 +0,0 @@
---
title: Password
---
Your password guards your account so that only you can access it.
We do not enforce a password policy, but recommend you
enable [Two-Factor Authentication](/account/mfa/).

View file

@ -1,7 +0,0 @@
---
title: Social media platforms
---
You can set your username/identity on other social media platforms in your FreeSewing account.
We do not use this data in any way. This is only here so FreeSewing users can connect the dots across platforms.

View file

@ -1,11 +1,29 @@
--- ---
title: Account title: Your FreeSewing Account
sidebar_position: 20
--- ---
Your FreeSewing account is where we store your data. Your account itself can hold the following fields: Your FreeSewing account is where we store your data.
Your account itself can hold the following fields:
<ReadMore recurse /> - About you:
- [Username](#username)
- [Email Address](#email)
- [Bio](#bio)
- [Profile Image](#img)
- [Social media platforms](#social)
- [GitHub identity](#github)
- Preferences:
- [Units](#units)
- [Measurements Sets Comparison](#compare)
- [User Experience](#control)
- [Newsletter](#newsletter)
- [Password](#password)
- Internal:
- [User ID](#uid)
- [Role](#role)
:::note
In addition, any In addition, any
[bookmarks](/docs/about/site/bookmarks/), [bookmarks](/docs/about/site/bookmarks/),
[measurements sets](/docs/about/site/sets/), [measurements sets](/docs/about/site/sets/),
@ -13,3 +31,189 @@ In addition, any
[API keys](/docs/about/site/apikeys/) are strictly speaking also part [API keys](/docs/about/site/apikeys/) are strictly speaking also part
of your _account data_ but they are stored as individual records, rather than of your _account data_ but they are stored as individual records, rather than
as fields in your account. as fields in your account.
:::
## About you
These fields tell a little bit about yourself and -- with the exception of your
email address -- are visible to other FreeSewing users when they visit your
profile.
### Username
Your username is special name that uniquely identifies you.
You can choose your own username, so anything goes.
To avoid confusion, usernames must be unique when lowercased. In other words,
the username `Joost` will not be available if a user `joost` exists.
### Email Address {#email}
Your email address ensures we can reach you when it's needed.
For example when you have forgotten your password.
### Bio
Your account **bio** is the place where you can tell a little bit about
yourself.
Other FreeSewing users can see your bio, so this is a way to find like-minded
people or promote your own content.
This field supports Markdown, so you can add links and even images.
### Profile Image {#img}
You can choose a **profile image** to further personalize your account.
It can be a picture of you, your cat, your favourite cartoon character. You do
you.
### Social media platforms {#platform}
You can set your username/identity on other social media platforms in your
FreeSewing account.
We do not use this data in any way. This is only here so FreeSewing users can
connect the dots across platforms.
### GitHub identity {#github}
If you add your **GitHub username** and **GitHub email address** to your
account, we will use them when interacting with GitHub on your behalf.
Note that both your GitHub username and email is public info. This merely
allows us to make a link between your FreeSewing account and GitHub account.
For example, when you report a problem on this website, we can mention you so
you will receive notifications when there is an update. For this, your username
is sufficient.
When you submit a showcase post or make changed to our content, we can credit
those commits to you if we have both your username and the email address you
use on GitHub.
:::note
If all of this in confusing, you don't have to provide this info. It's an
advanced feature.
:::
## Preferences
These fields register your preferences for using the site.
### Units
FreeSewing support both **metric units** (cm) and **imperial units** (inch).
Here you can choose which type of units you prefer.
Note that you can override these default units in various places, such as on a
specific pattern or measurements set.
### Measurements Sets Comparison {#compare}
We can occasionally show how your sets of measurements compare to other
measurements sets. This allows us to detect potential problems in your
measurements or patterns.
Comparing yourself to others is the fastest way to be unhappy, so if you'd
rather not see any comparisons, you can disable this feature altogether.
### User Experience {#control}
This setting allows you to control what sort of a user experience you want.
One that is more simple, with advanced features hidden. Or one that has all
bells and whistles.
FreeSewing is a rather advanced platform, and that can be intimidating for new
users. This setting was created to allow people to start simple, and then
unlock more features later.
#### Levels and Features
Each User Experience level adds additional features and settings
to the ones provided by the levels below it.
<details>
<summary>Show details of what features are available at the various levels</summary>
| Level | Pattern Drafting UI | Account Settings |
| :---------: | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **1** | **Settings:** Units<br />**Views:** Pattern Editor, Pattern Measurements, Print Layout, Save Pattern As, Export Pattern, Documentation | <br />**Data:** Patterns, Measurement Sets <br />**Settings:** User Experience<br /> **Patterns:** Name, Image<br /> **Measurement Sets:** Name, Image, Units |
| **2** | **Settings:** Seam Allowance, Paperless<br />**UI:** Kiosk Mode<br />**Views:** Pattern Logs | <br />**Data:** Bookmarks<br />**Info:** Username, Bio, Img<br />**Settings:** Language, Units, Newsletter Subscription, Consent & Privacy<br />**Security:** Password<br />**Patterns:** Notes, Created, Updated<br />**Measurement Sets:** Notes, Created, Updated |
| **3** | **Settings:** Language<br />**Views:** Test Design, Time Design | <br />**Info:** Email Address<br />**Settings:** Metricset Comparison<br />**Security:** Two-Factor Authentication<br />**Social:** GitHub, Instagram, Mastodon, Reddit, Twitch, TikTok, Website<br />**Patterns:** Public<br />**Measurement Sets:** Public |
| <br />**4** | <br />**Settings:** Details, Expand, Included Parts, Scale, Margin<br />**UI:** Render Engine<br />**Views:** Edit Settings by Hand, Pattern Inspector | **Data:** API Keys<br />**Security:** API Keys<br />**Patterns:** ID<br />**Measurement Sets:** ID |
| <br />**5** | <br />("_Are you sure?_" confirmation guardrails removed.) | <br />("_Are you sure?_" confirmation guardrails removed.) |
</details>
### Newsletter
This allows you to subscribe to the FreeSewing newsletter. Or not.
### Password
Your password guards your account so that only you can access it.
We do not enforce a password policy, but recommend you
enable [Two-Factor Authentication](/account/mfa/).
## Internal
These fields are required for the site to function. You cannot change them.
### User ID {#uid}
Every FreeSewing user has a user ID, sometimes referred to as `UID` or just
`ID`. It is a number that uniquely identifies one particular user.
You can find it on [your account page](/account) under **info**. Or navigate
to [/id](/id) and -- if you are logged in -- you will see your ID there.
:::tip
Make sure to always mention your ID when [contacting support](/support).
:::
### Role
Every FreeSewing user has a role that determines their privileges on the site.
You can see your role on [your account page](/account) under **info**. Or
navigate to [/id](/id) and -- if you are logged in -- you will see your role
there.
The following roles exist:
- **user**
- **bughunter**
- **support**
- **admin**
### User
More that 99.99% of FreeSewing users have the **user** role. It is the default
role, and it is exceedingly rare to have a user that has a different role.
### Bughunter
The **bughunter** role grants you permission to read measurments and patterns
data from other users.
It is a role that is reserved for people in the community who want to help
other users troubleshoot their patterns.
### Support
The **support** role grants you permission to read all account data from other
users.
It is a role reserved for contributors who hunt down bugs reported by users.
### Admin
The **admin** role grants you all permissions, including changing the roles of
other users.
Only [joost](/users/user?id=1) holds the admin role.

View file

@ -1,41 +0,0 @@
---
title: Role
jargon: true
---
Every FreeSewing user has a role that determines their privileges on the site.
You can see your role on [your account page](/account) under **info**.
Or navigate to [/id](/id) and -- if you are logged in -- you will see your role there.
The following roles exist:
- **user**
- **bughunter**
- **support**
- **admin**
## User
More that 99.99% of FreeSewing users have the **user** role.
It is the default role, and it is exceedingly rare to have a user that has a different role.
## Bughunter
The **bughunter** role grants you permission to read measurments and patterns
data from other users.
It is a role that is reserved for people in the community who want to help
other users troubleshoot their patterns.
## Support
The **support** role grants you permission to read all account data from other users.
It is a role reserved for contributors who hunt down bugs reported by users.
## Admin
The **admin** role grants you all permissions, including changing the roles of other users.
Only [joost](/users/user?id=1) holds the admin role.

View file

@ -1,11 +0,0 @@
---
title: Units
---
FreeSewing support both **metric units** (cm) and **imperial units** (inch).
Here you can choose which type of units you prefer.
Note that you can override these default units in various places, such as on a
specific pattern or measurements set.

View file

@ -1,11 +0,0 @@
---
title: Username
---
Your username is special name that uniquely identifies you.
You can choose your own username, so anything goes.
To avoid confusion, usernames must be unique when lowercased.
In other words, the username `Joost` will not be available if a user `joost` exists.

View file

@ -1,13 +0,0 @@
---
title: Expiry
---
Every API key has an **expiry date** after which the key will stop working.
By default, API keys expire after 1 month, but we support up to two years.
:::note
When your key is about to expire, you must replace it with a new one.
You cannot extend the expiry date of a key once set.
:::

View file

@ -1,19 +0,0 @@
---
title: Permission level
---
Every API key has a **permission level** the controls what the key can do.
The permission level is a number from `0` to `4` with the following significance:
- `0` : Authenticate only
- `1` : Read access to your own patterns and measurements sets
- `2` : Read access to all your account data
- `3` : Write access to your own patterns and measurements sets
- `4` : Write access to all your account data
:::tip
For more details, refer to [the backend documentation on FreeSewing.dev](https://freesewing.dev/reference/backend/rbac#permission-levels)
:::

View file

@ -1,16 +0,0 @@
---
title: Name
---
Every API key has a **name** attribute that is mandatory.
In other words, you must give each of your API keys a name, but that name can be anything you want.
Typically, people give names that describe where the key is used, like:
- Production backend
- GitLab runner
- Local development on my laptop
But you do you.

View file

@ -1,21 +1,60 @@
--- ---
title: API Keys title: Your API Keys
sidebar_position: 60
--- ---
An _API_ key is a unique identifier used to authenticate and authorize a request to the FreeSewing backend. An _API_ key is a unique identifier used to authenticate and authorize a
Whereas a username (and password) are intended for users, API keys (and secret) are intended to authenticate and authorize a robot, program, or script rather than a human user. request to the FreeSewing backend. Whereas a username (and password) are
intended for users, API keys (and secret) are intended to authenticate and
authorize a robot, program, or script rather than a human user.
To create a FreeSewing API key, you need to provide the following fields: To create a FreeSewing API key, you need to provide the following fields:
<ReadMore /> - [Name](#name)
- [Permission level](#level)
- [Expiry](#expiry)
:::note :::note
API keys are an advanced feature aimed at developers and geeky users.
API keys are an advanced feature aimed at developers.
<a class="btn btn-secondary" href="/new/apikey/">Create a new API key</a>
::: :::
## Name
Every API key has a **name** attribute that is mandatory.
In other words, you must give each of your API keys a name, but that name can
be anything you want.
Typically, people give names that describe where the key is used, like:
- Production backend
- GitLab runner
- Local development on my laptop
But you do you.
## Permission level {#level}
Every API key has a **permission level** the controls what the key can do.
The permission level is a number from `0` to `4` with the following significance:
- `0` : Authenticate only
- `1` : Read access to your own patterns and measurements sets
- `2` : Read access to all your account data
- `3` : Write access to your own patterns and measurements sets
- `4` : Write access to all your account data
:::tip
For more details, refer to [the backend documentation on FreeSewing.dev](https://freesewing.dev/reference/backend/rbac#permission-levels)
:::
## Expiry
Every API key has an **expiry date** after which the key will stop working.
By default, API keys expire after 1 month, but we support up to two years.
:::note
When your key is about to expire, you must replace it with a new one.
You cannot extend the expiry date of a key once set.
:::

View file

@ -1,8 +0,0 @@
---
title: Location
---
Every bookmark has a **location** attribute that is mandatory. It holds the URL of the bookmark.
A bookmark without a location or URL is useless, as this holds the location the bookmark should point to.

View file

@ -1,5 +1,6 @@
--- ---
title: Bookmarks title: Your Bookmarks
sidebar_position: 50
--- ---
FreeSewing bookmarks work just like in your browser. You can bookmark FreeSewing bookmarks work just like in your browser. You can bookmark
@ -11,4 +12,32 @@ bookmark (public) patterns or measurements sets from other FreeSewing users.
A FreeSewing bookmark has the following fields: A FreeSewing bookmark has the following fields:
<ReadMore /> - [Title](#title)
- [Type](#type)
- [Location](#location)
## Title
Every bookmark has a **title** attribute that is mandatory.
In other words, you must give each of your bookmarks a title, but that title
can be anything you want.
## Type
Every bookmark has a **type** attribute that is mandatory.
When you manually create a bookmark, the type is always **custom** so you
cannot choose it.
Other types include **pattern**, **doc**, or **set** which will automatically
be set when you bookmark a pattern, documentation page, or measurements set
respectively.
## Location
Every bookmark has a **location** attribute that is mandatory. It holds the URL
of the bookmark.
A bookmark without a location or URL is useless, as this holds the location the
bookmark should point to.

View file

@ -1,8 +0,0 @@
---
title: Title
---
Every bookmark has a **title** attribute that is mandatory.
In other words, you must give each of your bookmarks a title, but that title can be anything you want.

View file

@ -1,10 +0,0 @@
---
title: Type
---
Every bookmark has a **type** attribute that is mandatory.
When you manually create a bookmark, the type is always **custom** so you cannot choose it.
Other types include **pattern**, **doc**, or **set** which will automatically be set when you bookmark a pattern, documentation page, or measurements set respectively.

View file

@ -1,5 +1,6 @@
--- ---
title: Curated measurements sets title: Curated measurements sets
sidebar_position: 70
--- ---
FreeSewing's **curated measurements sets** are a collection of FreeSewing's **curated measurements sets** are a collection of

View file

@ -1,10 +0,0 @@
---
title: Pattern Details
---
This setting -- which is enabled by default -- will give you a pattern with all
details included.
If you disable it, you will instead get a pattern that does not include any
details such as text or annotations, and only include the seamlines.

View file

@ -1,18 +0,0 @@
---
title: Pattern expansion
---
This option suppresses all efforts to make the pattern consume less
space/paper.
Designers will often take steps to reduce the amount of paper consumed by a
pattern. For example, a strip of fabric used for binding, or a simple
rectangular part may not be included, or only partially.
This option -- which is disabled by default -- allows you to suppress the space
saving and indicate you rather want to get full-sized views on all pattern
parts.

View file

@ -1,11 +0,0 @@
---
title: Margin
---
The margin setting controls how much space will be added around each pattern
part when calculating the pattern layout.
Each pattern part is laid out as a rectangle on the page. The spacing around
(and between) these rectangles is controlled by this setting.

View file

@ -1,14 +0,0 @@
---
title: Included Parts
---
This setting allows you to specify which patterns parts you want to generate.
This can be useful if you want to only use a specific part. For example perhaps
you have a shirt pattern and you only want to generate a different collar
style.
It can also be used to include pattern parts that -- for whatever reason -- are
hidden by default.

View file

@ -1,12 +0,0 @@
---
title: Paperless Patterns
---
The paperless setting lets you generate a sewing pattern that includes extra
dimensions as well as a grid (in either metric or imperial, based on your
choice of units).
This allows you to skip printing the pattern altogether. Instead you can
transfer it directly onto the fabric, or an intermediate medium such as pattern
paper.

View file

@ -1,18 +0,0 @@
---
title: Core Settings
---
import ControlTip from '@site/docs/_controltip.mdx'
The **Core Settings** menu allows you to tweak various aspects of the
FreeSewing Core library, which -- under the hood -- generates your pattern for
you.
In contrast to **Design options** which are
specific for a given design, these Core Settings are the same for every design.
So you will find this menu always provides the same settings, regardless of
what design you are generating a pattern for.
<ReadMore />
<ControlTip />

View file

@ -1,16 +0,0 @@
---
title: Render Engine
---
This setting allows you to choose how your pattern will be rendered. In other
words, how it will be drawn on the screen. There are two options:
- `React` allows for more interactivity, and is optimized for displaying
patterns on-screen
- `SVG` does not allow interactivity like the `React` option does. Instead it
is optimized for printing
By default, this website only uses SVG when you are exporting your pattern.
While you are generating and tweaking your pattern, we use React, unless you
use this setting to change that to SVG.

View file

@ -1,24 +0,0 @@
---
title: Include Seam Allowance
---
This [Core Setting][core-settings] controls whether or not to include seam
allowance on your pattern.
By default, seam allowance is not included. To generate a pattern with seam
allowance, you should enable it by changing this option to **Yes**.
:::note
FreeSewing's core library only takes a single setting to handle seam allowance: `sa`.
However, for convenience, we've split this up into two different settings on the website:
- **[Include Seam Allowance](/docs/about/site/draft/core-settings/sabool)**: Controls whether or not to include seam allowance
- **[Seam Allowance Size](/docs/about/site/draft/core-settings/samm)**: Controls how big to make the seam allowance, if it is included
The latter will only be shown if you've enabled the former.
:::
[core-settings]: /docs/about/site/draft/core-settings/

View file

@ -1,23 +0,0 @@
---
title: Seam Allowance Size
---
This [Core Setting][core-settings] controls the base size of your seam
allowance. In other words, the default seam allowance will be this size. Other
allowance that is intended to be wider, like hem allowance, will be a multiple
of this size.
:::note
FreeSewing's core library only takes a single setting to handle seam allowance: `sa`.
However, for convenience, we've split this up into two different settings on the website:
- **[Include Seam Allowance](/docs/about/site/draft/core-settings/sabool)**: Controls whether or not to include seam allowance
- **[Seam Allowance Size](/docs/about/site/draft/core-settings/samm)**: Controls how big to make the seam allowance, if it is included
The latter will only be shown if you've enabled the former.
:::
[core-settings]: /docs/about/site/draft/core-settings/

View file

@ -1,11 +0,0 @@
---
title: Scale
---
The scale settings allow you to scale those parts of a pattern that do not scale with measurements.
Things like logos, line widths, font sizes, and so on.
This setting was added at the requests of people who like to use our patterns to make doll clothes.
When generating such a small pattern, the arrowheads, titles, and so on tend to obscure much of the pattern.
This setting allows you to scale them down or -- if you so wish -- scale them up.

View file

@ -1,12 +0,0 @@
---
title: Units
---
This controls the units used on your pattern. FreeSewing supports both metric
and imperial units.
Note that as a FreeSewing user, you can configure your units in your account,
and those are the units that will be used by default. However, if you want to
override those settings on an individual basis -- perhaps you are generating a
pattern on behalf of someone else -- this setting allows you to do that.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

View file

@ -1,63 +1,234 @@
--- ---
title: How to generate bespoke sewing patterns title: How to generate bespoke sewing patterns
sidebar_position: 10
--- ---
import ControlTip from '@site/docs/_controltip.mdx' import ControlTip from '@site/docs/_controltip.mdx'
Generating custom sewing patterns based on your measurements is the flagship feature of our website. Generating custom sewing patterns based on your measurements is the flagship
We provide an online environment that allows you to customize various aspects of your pattern. feature of our website. We provide an online environment that allows you to
customize various aspects of your pattern.
This environment provides a wide range of features, and on these pages we will explain all of them. :::warning FIXME
Adapt this for the most recent editor changes
:::
This environment provides a wide range of features, and on these pages we will
explain all of them.
<ControlTip /> <ControlTip />
## The editor ## The editor
Below is a screenshot of FreeSewing's pattern editor in **kiosk mode** which hides the site header and footer and lets the editor take up the entire screen. It also has the **View menu** (on the left) expanded. By default you will only see the icons, and not the text of the menu on the left. Below is a screenshot of FreeSewing's pattern editor in **kiosk mode** which
hides the site header and footer and lets the editor take up the entire screen.
It also has the **View menu** (on the left) expanded. By default you will only
see the icons, and not the text of the menu on the left.
![Screenshot of FreeSewing's pattern editor](editor.png "Screenshot of Freesewing's pattern editor") ![Screenshot of FreeSewing's pattern editor](editor.png "Screenshot of Freesewing's pattern editor")
### The view menu ### The view menu
The **View menu** on the left allows you to select the view. Each view serves a different purpose. The different views are: The **View menu** on the left allows you to select the view. Each view serves a
different purpose. The different views are:
- **Pattern editor**: This is where you can tweak your pattern - **Pattern editor**: This is where you can tweak your pattern
- **Pattern measurements**: This is where you can choose which measurements set to use to generate the pattern, or tweak measurements manually - **Pattern measurements**: This is where you can choose which measurements set
- **Pattern tests**: Allows you to test the pattern. This is an advanced feature. to use to generate the pattern, or tweak measurements manually
- **Print layout**: Allows you to manually arrange the pattern parts to optimize the layout for printing - **Pattern tests**: Allows you to test the pattern. This is an advanced
feature.
- **Print layout**: Allows you to manually arrange the pattern parts to
optimize the layout for printing
- **Save pattern as...**: Allows you to save the pattern to your account - **Save pattern as...**: Allows you to save the pattern to your account
- **Export pattern**: Allows you to export the pattern as PDF or SVG - **Export pattern**: Allows you to export the pattern as PDF or SVG
- **Edit settings by hand**: Allows you to -- you guessed it -- edit the settings to generate the pattern by hand. This is an advanced feature. - **Edit settings by hand**: Allows you to -- you guessed it -- edit the
- **Pattern logs**: This shows the logs generated when drafting the pattern. This is an advanced feature. settings to generate the pattern by hand. This is an advanced feature.
- **Pattern inspector**: Allows pattern designer to inspect various aspects of the pattern. This is an advanced feature. - **Pattern logs**: This shows the logs generated when drafting the pattern.
This is an advanced feature.
- **Pattern inspector**: Allows pattern designer to inspect various aspects of
the pattern. This is an advanced feature.
- **Documentation**: Provides links to the documentation. - **Documentation**: Provides links to the documentation.
Feel free to check out the other views, but our focus here is on the **Pattern editor**. Feel free to check out the other views, but our focus here is on the **Pattern
editor**.
### The settings menu ### The settings menu
On the right side of the screen is the **Settings menu** which in turn is made up of four sections: On the right side of the screen is the **Settings menu** which in turn is made
up of four sections:
- **Messages from the designer**: Holds information the designer of the pattern flagged for your attention. Note that these are not generic remarks about the design in general (those go in the documentation), but rather information specific to this very pattern. Make sure to check them out. As such, these messages will be different for every user, measurements set, or even combination of design options. - **Messages from the designer**: Holds information the designer of the pattern
- **Design options**: Holds all the different options the designer has added that allow you to tweak your pattern. These options will be different for each design. Refer to the design documentation for a list of all available options, or check the inline documentation. flagged for your attention. Note that these are not generic remarks about the
- **Core settings**: These are settings that are not provided by the design(er) but rather by FreeSewing's core library. As such, the settings you'll find here are the same accross all designs as they all use the same core library. Refer to [Core Settings](/docs/about/site/draft/core-settings) for all details, or check the inline documentation. design in general (those go in the documentation), but rather information
- **UI settings**: And finally, these settings do not control the pattern as such, but rather the user interface. For example, here you can enable kiosk mode or tweak the user experience setting to see more or less features. Like the core settings, the UI settings are the same for every design. Refer to [UI Settings](/docs/about/site/draft/ui-settings) or check the inline documentation. specific to this very pattern. Make sure to check them out. As such, these
messages will be different for every user, measurements set, or even
combination of design options.
- **Design options**: Holds all the different options the designer has added
that allow you to tweak your pattern. These options will be different for
each design. Refer to the design documentation for a list of all available
options, or check the inline documentation.
- **Core settings**: These are settings that are not provided by the design(er)
but rather by FreeSewing's core library. As such, the settings you'll find
here are the same accross all designs as they all use the same core library.
Refer to [Core Settings](/docs/about/site/draft/core-settings) for all
details, or check the inline documentation.
- **UI settings**: And finally, these settings do not control the pattern as
such, but rather the user interface. For example, here you can enable kiosk
mode or tweak the user experience setting to see more or less features. Like
the core settings, the UI settings are the same for every design. Refer to
[UI Settings](/docs/about/site/draft/ui-settings) or check the inline
documentation.
### The header menu ### The header menu
At the top is a header with icons to give you quick access to both Core settings and UI settings. There is also an icon to clear your settings, clear both settings and measurements, or to bookmark the current pattern. At the top is a header with icons to give you quick access to both Core
settings and UI settings. There is also an icon to clear your settings, clear
both settings and measurements, or to bookmark the current pattern.
### The inline documentation ## Design Options Menu
Most, if not all, settings or options that you will tweaks have a little documentation icon next to it (shown in blue in the screenshot below). Each FreeSewing design can define a list of options that allow you to further
customize your pattern. You can find them in the **Design Options** menu.
![Screenshot of the docs icon](docs.png) Since each design has its own options, the contents of the menu will be
different for each design, but you typically find options to adjust the fit --
such as changing the amount of ease -- as well options to change the style of
the pattern.
You you can click that icon to open the inline documentation. ## Core Settings Menu
This allows you to quickly verify the specific role of a setting or option without having to leave the editor.
## Editor modes The editor's **Core Settings** menu allows you to tweak various aspects of the
FreeSewing Core library, which -- under the hood -- generates your pattern for
you.
:::note FIXME In contrast to Design options which are
Complete these docs specific for a given design, these Core Settings are the same for every design.
So you will find this menu always provides the same settings, regardless of
what design you are generating a pattern for.
The following core settings are available:
### Pattern Details
This setting -- which is enabled by default -- will give you a pattern with all
details included.
If you disable it, you will instead get a pattern that does not include any
details such as text or annotations, and only include the seamlines.
### Pattern expansion
This option suppresses all efforts to make the pattern consume less
space/paper.
Designers will often take steps to reduce the amount of paper consumed by a
pattern. For example, a strip of fabric used for binding, or a simple
rectangular part may not be included, or only partially.
This option -- which is disabled by default -- allows you to suppress the space
saving and indicate you rather want to get full-sized views on all pattern
parts.
### Margin
The margin setting controls how much space will be added around each pattern
part when calculating the pattern layout.
Each pattern part is laid out as a rectangle on the page. The spacing around
(and between) these rectangles is controlled by this setting.
### Included Parts
This setting allows you to specify which patterns parts you want to generate.
This can be useful if you want to only use a specific part. For example perhaps
you have a shirt pattern and you only want to generate a different collar
style.
It can also be used to include pattern parts that -- for whatever reason -- are
hidden by default.
### Paperless Patterns
The paperless setting lets you generate a sewing pattern that includes extra
dimensions as well as a grid (in either metric or imperial, based on your
choice of units).
This allows you to skip printing the pattern altogether. Instead you can
transfer it directly onto the fabric, or an intermediate medium such as pattern
paper.
### Render Engine
This setting allows you to choose how your pattern will be rendered. In other
words, how it will be drawn on the screen. There are two options:
- `React` allows for more interactivity, and is optimized for displaying
patterns on-screen
- `SVG` does not allow interactivity like the `React` option does. Instead it
is optimized for printing
By default, this website only uses SVG when you are exporting your pattern.
While you are generating and tweaking your pattern, we use React, unless you
use this setting to change that to SVG.
### Include Seam Allowance {#sabool}
This [Core Setting][core-settings] controls whether or not to include seam
allowance on your pattern.
By default, seam allowance is not included. To generate a pattern with seam
allowance, you should enable it by changing this option to **Yes**.
:::note
FreeSewing's core library only takes a single setting to handle seam allowance: `sa`.
However, for convenience, we've split this up into two different settings on the website:
- **[Include Seam Allowance](/docs/about/site/draft#sabool)**: Controls whether or not to include seam allowance
- **[Seam Allowance Size](/docs/about/site/draft/#samm)**: Controls how big to make the seam allowance, if it is included
The latter will only be shown if you've enabled the former.
::: :::
[core-settings]: /docs/about/site/draft/core-settings/
### Seam Allowance Size {#samm}
This Core Setting controls the base size of your seam
allowance. In other words, the default seam allowance will be this size. Other
allowance that is intended to be wider, like hem allowance, will be a multiple
of this size.
:::note
FreeSewing's core library only takes a single setting to handle seam allowance: `sa`.
However, for convenience, we've split this up into two different settings on the website:
- **[Include Seam Allowance](/docs/about/site/draft/core-settings/sabool)**: Controls whether or not to include seam allowance
- **[Seam Allowance Size](/docs/about/site/draft/core-settings/samm)**: Controls how big to make the seam allowance, if it is included
The latter will only be shown if you've enabled the former.
:::
### Scale
The scale settings allow you to scale those parts of a pattern that do not scale with measurements.
Things like logos, line widths, font sizes, and so on.
This setting was added at the requests of people who like to use our patterns to make doll clothes.
When generating such a small pattern, the arrowheads, titles, and so on tend to obscure much of the pattern.
This setting allows you to scale them down or -- if you so wish -- scale them up.
### Units
This controls the units used on your pattern. FreeSewing supports both metric
and imperial units.
Note that as a FreeSewing user, you can configure your units in your account,
and those are the units that will be used by default. However, if you want to
override those settings on an individual basis -- perhaps you are generating a
pattern on behalf of someone else -- this setting allows you to do that.
## UI Preferences
The **UI Preferences** menu allows you to tweak certain aspects of the user
interface (UI).

View file

@ -1,12 +0,0 @@
---
title: UI Settings
---
import ControlTip from '@site/docs/_controltip.mdx'
The **UI Settings** menu allows you to tweak certain aspects of the user interface (UI).
Those aspects are:
<ReadMore />
<ControlTip />

View file

@ -1,12 +0,0 @@
---
title: What to do after saving a new pattern?
---
When you create a new pattern in FreeSewing's pattern editor, you have the option to save the pattern to your account.
After you save the pattern to your account, there are several options for what you might want to do next:
- Continue editing the saved patter
- Display the pattern information page
Because we cannot read your mind, you can choose what you would like to happen when you save a new pattern to your account.

View file

@ -1,8 +0,0 @@
---
title: Image
---
If you'd like you can add an **image** to your pattern, for example of the finished make.
This can help you remember exactly what this pattern was, which can be useful as you can end up having many patterns saved to your account.

View file

@ -1,8 +0,0 @@
---
title: Name
---
Every pattern has a **name** attribute that is mandatory.
In other words, you must give each of your patterns sets a name, but that name can be anything you want.

View file

@ -1,13 +0,0 @@
---
title: Notes
---
Every pattern has a **notes** attribute that is optional.
The notes field allows you to add your notes to a pattern.
This field supports markdown, so you can use rich formatting, or even embed images.
:::note
If you make your pattern public, your notes will also be public.
:::

View file

@ -1,8 +0,0 @@
---
title: Public
---
This settings controls whether your pattern will accessible by the **public** or not.
By default, patterns are private and only you can access your own patterns.
If you'd like to share your pattern with others -- perhaps because they showed an interest or you are looking for input -- you should first make it public.

View file

@ -1,23 +1,73 @@
--- ---
title: Patterns title: Your Sewing Patterns
sidebar_position: 40
--- ---
(sewing) Patterns is why most people end up on FreeSewing.org, so they are an important part of the website. Our sewing patterns (patterns for short) is why most people end up on
FreeSewing.org, so they are an important part of the website.
FreeSewing does not store the pattern itself, instead we store your settings you used to draft the design, this includes: FreeSewing does not store the pattern itself, instead we store your settings
you used to draft the design, this includes:
- Any design options you tweaked - Any [design options](/docs/about/site/draft/#design-options) you tweaked
- Any core settings you changes - Any [core settings](/docs/about/site/draft/#core-settings) you changed
- The measurements used - The [UI preferences](/docs/about/site/draft/#ui-preferences) you used
- The measurements you used
With this, we can regenerate the pattern. So this is all we store. With this, we can regenerate the pattern. So this is all we store.
This also means that if a pattern goes through significant changes, or a new major version with breaking changes is released, we may no longer be able to generate the (old) pattern. For this reason, you should download the pattern as PDF or SVG and save it locally if you want to archive it. This also means that if a pattern goes through significant changes, or a new
major version with breaking changes is released, we may no longer be able to
generate the (old) pattern. For this reason, you should download the pattern as
PDF or SVG and save it locally if you want to archive it.
:::tip :::tip
Backup your patterns if you intent to keep them for a long time Backup your patterns if you intent to keep them for a long time
::: :::
In addition to the settings required to recreate the pattern, patterns are stored with the following fields: In addition to the settings required to recreate the pattern, patterns are
stored with the following fields:
<ReadMore /> - [Name](#name)
- [Notes](#notes)
- [Image](#image)
- [Public](#public)
### Name
Every pattern has a **name** attribute that is mandatory.
In other words, you must give each of your patterns sets a name, but that name
can be anything you want.
### Notes
Every pattern has a **notes** attribute that is optional.
The notes field allows you to add your notes to a pattern.
This field supports markdown, so you can use rich formatting, or even embed
images.
:::note
If you make your pattern public, your notes will also be public.
:::
### Image
If you'd like you can add an **image** to your pattern, for example of the
finished make.
This can help you remember exactly what this pattern was, which can be useful
as you can end up having many patterns saved to your account.
:::note
If you make your pattern public, your image will also be public.
:::
### Public
This settings controls whether your pattern will accessible by the **public** or not.
By default, patterns are private and only you can access your own patterns. If
you'd like to share your pattern with others -- perhaps because they showed an
interest or you are looking for input -- you should first make it public.

View file

@ -1,10 +0,0 @@
---
title: Image
---
Every measurements set has a **image** attribute that is optional.
A picture says more than a 1000 words, so if you have multiple measurements sets, this can help you tell them apart.
So if you want, you can add an image to your measurements set. It's up to you.

View file

@ -1,15 +0,0 @@
---
title: Name
---
Every measurements set has a **name** attribute that is mandatory.
In other words, you must give each of your measurements sets a name, but that name can be anything you want.
Typically, people give names that describe the set, like:
- Myself, January 2024
- Tony with binder
- Jenny post augmentation
But you do you.

View file

@ -1,13 +0,0 @@
---
title: Notes
---
Every measurements set has a **notes** attribute that is optional.
The notes field allows you to add your notes to a measurements set.
This field supports markdown, so you can use rich formatting, or even embed images.
:::note
If you make your measurements set public, your notes will also be public.
:::

View file

@ -1,18 +0,0 @@
---
title: Public
---
Every measurements set has a **public** attribute that controls whether or not the measurements set is public.
By default, measurements sets are private and you are the only one who can use them.
But, you can choose to make your measurements set public which allows other
users to utilize the measurements in this set to generate or test their own
patterns.
:::note
If you make your measurements set public, this applies to all data in the measurements set.
In other words, not only the measurements, but also the name, notes, and picture will be visible to other users.
:::

View file

@ -1,9 +1,82 @@
--- ---
title: Measurements Sets title: Your Measurements Sets
sidebar_position: 30
--- ---
A _measurements set_ holds a set of measurements along with meta data. A _measurements set_ holds a set of measurements along with meta data.
In addition to the measurements -- which is the most important data in a set -- a FreeSewing measurements set also has the following fields: In addition to the measurements -- which is the most important data in a set --
a FreeSewing measurements set also has the following fields:
<ReadMore /> - [Name](#name)
- [Notes](#notes)
- [Image](#img)
- [Units](#units)
- [Public](#public)
## Name
Every measurements set has a **name** attribute that is mandatory.\
In other words, you must give each of your measurements sets a name, but that
name can be anything you want.
Typically, people give names that describe the set, like:
- Myself, January 2024
- Tony with binder
- Jenny post augmentation
But you do you.
## Notes
Every measurements set has a **notes** attribute that is optional.\
The notes field allows you to add your notes to a measurements set.
This field supports markdown, so you can use rich formatting, or even embed images.
:::note
If you make your measurements set public, your notes will also be public.
:::
### Image
Every measurements set has a **image** attribute that is optional.
A picture says more than a 1000 words, so if you have multiple measurements
sets, this can help you tell them apart.
So if you want, you can add an image to your measurements set. It's up to you.
:::note
If you make your measurements set public, your image will also be public.
:::
## Units
Every measurements set has a **units** attribute that controls what units will
be used to display measurements in the set.
While each FreeSewing user has a **units** setting in their account that
controls their overall preference between imperial or metric units, it is common
to also have measurements sets for different people, and those different people
might have other preferences.
That is why we allow you to set the units on each measurements set.
## Public
Every measurements set has a **public** attribute that controls whether or not
the measurements set is public.
By default, measurements sets are private and you are the only one who can use
them.
But, you can choose to make your measurements set public which allows other
users to utilize the measurements in this set to generate or test their own
patterns.
:::note
If you make your measurements set public, this applies to all data in the
measurements set. In other words, not only the measurements, but also the
name, notes, and picture will be visible to other users.
:::

View file

@ -1,14 +0,0 @@
---
title: Units
---
Every measurements set has a **units** attribute that controls what units will
be used to display measurements in the set.
While each FreeSewing user has a **units** setting in their account that
controls their overall preference between imperial or metric units, it is common
to also have measurements sets for different people, and those different people
might have other preferences.
That is why we allow you to set the units on each measurements set.

View file

@ -1,20 +0,0 @@
---
title: Documentation
---
Welcome to the FreeSewing documentation for makers. Here you will find all the [documentation for our various designs](/docs/designs) as
well as [how to take measurements](/docs/measurements/), documentation for [various sewing terms and techniques](/docs/sewing/).
If you're new to FreeSewing, please take a moment to read the [getting started documentation](/docs/about/guide/).
<ReadMore recurse />
:::tip
If you're looking for
developer/contributor docs, please refer to
[FreeSewing.dev](https://freesewing.dev/) instead.
:::