
These are some changes in the way the monorepo is structured, that are aimed at making it easier to get started. There are two important changes: **Multiple workspaces** We had a yarn workspaces setup at `packages/*`. But our monorepo has grown to 92 packages which can be overwhelming for people not familiar with the package names. To remedy this, I've split it into 4 different workspaces: - `designs/*`: Holds FreeSewing designs (think patterns) - `plugins/*`: Holds FreeSewing plugins - `packages/*`: Holds other packages published on NPM - `sites/*`: Holds software that is not published as an NPM package, such as our various websites and backend API This should make it easier to find things, and to answer questions like *where do I find the code for the plugins*. **Updated reconfigure script to handle build order** One problem when bootstrapping the repo is inter-dependencies between packages. For example, building a pattern will only work once `plugin-bundle` is built. Which will only work once all plugins in the bundle or built. And that will only work when `core` is built, and so on. This can be frustrating for new users as `yarn buildall` will fail. And it gets overlooked by seasoned devs because they're likely to have every package built in their repo so this issue doesn't concern them. To remedy this, we now have a `config/build-order.mjs` file and the updated `/scripts/reconfigure.mjs` script will enforce the build order so that things *just work*.
3.9 KiB
A JavaScript library for made-to-measure sewing patterns
unice example
This project was bootstrapped with Create Freesewing Pattern:
npm init freesewing-pattern
This example folder is part of the local development environment. It is not part of the pattern's source code.
To run this example, follow these steps:
- In the folder above this one, run:
yarn start
(ornpm start
) - Then, in new terminal, run the same command in this folder:
yarn start
(ornpm start
)
This will spin up the development environment, similar to our online demo.
About FreeSewing 🤔
Where the world of makers and developers collide, that's where you'll find FreeSewing.
Our core library is a batteries-included toolbox for parametric design of sewing patterns. It's a modular system (check our list of plugins and getting started is as simple as:
npm init freesewing-pattern
The [getting started] section on freesewing.dev is a good entrypoint to our documentation, but you'll find a lot more there, including our API documentation, as well as examples, and best practices.
If you're a maker, checkout freesewing.org where you can generate our sewing patterns adapted to your measurements.
Support FreeSewing: Become a patron 🥰
FreeSewing is an open source project run by a community, and financially supported by our patrons.
If you feel what we do is worthwhile, you too should become a patron.
Links 👩💻
- 💻 Makers website: freesewing.org
- 💻 Developers website: freesewing.dev
- 💬 Chat: gitter.im/freesewing
- 🐦 Twitter: @freesewing_org
- 📷 Instagram: @freesewing_org
License: MIT 🤓
© Joost De Cock. See the license file for details.
Where to get help 🤯
Our chatroom on Gitter is the best place to ask questions, share your feedback, or just hang out.
If you want to report a problem, please create an issue.