Setting up the FreeSewing development environment

FreeSewing provides a development environment to help you design and develop patterns.

There are two ways to run this development environment:

Monorepo development

NOTE|

This is the recommended way for (aspiring) FreeSewing contributors

TL;DR

Bash prompt
git clone https://github.com/freesewing/freesewing
cd freesewing
yarn kickstart
TIP

Even better: clone your own fork

Bash prompt
git clone https://github.com/your-username/freesewing
cd freesewing
yarn kickstart

This sets up the monorepo. If you would like to create a new design, run the following command:

Shell prompt
yarn new design

If you’d like to create a new plugin, run this variant instead:

Shell prompt
yarn new plugin

Step by step

COMMENT by joost

These docs assume you have git installed. But if you’re running Linux, you have git, right?

joost

Install yarn

Our repository uses yarn workspaces. So you’ll need yarn to work with it.

To install it run:

Bash prompt
npm install yarn --global

Fork our repository

You’ll want to fork our repository. This way you have your own copy where you can make all the changes you want. To do so, visit https://github.com/freesewing/freesewing/fork

Clone the forked repository

Now that you have your very own fork, it’s time to clone it locally.

Bash prompt
git clone <url to your fork>

Make sure to use the URL to your own fork, typically https://github.com/your-username/freesewing but obviously with your real username rather than your-username.

Install dependencies

Enter the directory that was created, and run the yarn kickstart command:

Bash prompt
cd freesewing
yarn kickstart

Now you’re ready to start the development environment.

NOTE

There is another yarn command that comes with some Linux distributions, installed as part of the cmdtest package and used for command line scenario testing. If you get an ERROR: There are no scenarios; must have at least one. message when trying to run the yarn command, it may be because the wrong yarn is being used.

Possible workarounds for this include uninstalling the cmdtest package or making sure that npm yarn is installed and comes first in your PATH environment variable.

Creating a new design

If you would like to create a new design, run the following command:

Shell prompt
yarn new design

Creating a new plugin

If you’d like to create a new plugin, run the following command:

Shell prompt
yarn new plugin

Stand-alone development

With Node.js installed, all you need to do to setup the stand-alone development environment is run this command:

Bash prompt
npx @freesewing/new-design

After you’ve answered some questions, it will take a while to set everything up. When it’s done, you will have a new folder with the development environment inside.

Now you’re ready to start the development environment.

TIP|

The folder will have the name you chose above.

NOTE

Questions

What template to use

Use From scratch unless you want to start from our of our blocks:

  • Use Extend Brian to start from Brian
  • Use Extend Bent to start from Bent
  • Use Extend Bella to start from Bella
  • Use Extend Breanna to start from Breanna
  • Use Extend Titan to start from Titan

What name to use

This will become the name of your design. Stick to [a-z] here to avoid problems.

If you’re not certain what to pick, just mash some keys, it doesn’t matter.

What package manager to use

You may wish to choose yarn since that is the package manager that we use when doing work in the monorepo, and many of our tutorials are written to use yarn. However, it doesn’t really matter. You can choose either yarn or npm as you wish.