FreeSewing Documentation

website·Indexed 32 days ago

https://freesewing.dev

Technical reference and API documentation for the FreeSewing core library, plugins, and React components. Includes guides on parametric pattern design using Point, Path, and Design constructors, as well as specialized plugins like @freesewing/plugin-flip, @freesewing/plugin-i18n, and @freesewing/plugin-gore.

Tokens
134.2K
Snippets
1.2K
Records
1.4K
Agent score
64%

What's inside FreeSewing

  1. Introduction to Git for FreeSewing contributors

    Git is a distributed version control system used for managing the FreeSewing codebase. For developers new to version control or those who find Git intimidating, the following resources are recommended for onboarding:

    • For a quick introduction to Git and version control: "Learn Git in 15 Minutes".
    • For a deeper conceptual understanding of how Git works: "Git For Ages 4 And Up".
  2. Overview of FreeSewing parametric sewing library

    FreeSewing is an open-source JavaScript library designed for on-demand garment manufacturing. It treats sewing patterns as code, allowing developers to mix and match design parts, extend existing designs, and create multiple variations from a single base design.
  3. Overview of the Svg object in FreeSewing core

    The Svg object represents an SVG document within the FreeSewing core library. It is not exposed directly to the user but is accessible via the svg attribute of a Pattern object. While its methods are primarily used internally, its attributes are intended for developers creating plugins or custom layouts.
  4. Overview of @freesewing/core library

    The @freesewing/core library is a parametric design toolbox published on NPM, primarily focused on sewing patterns but applicable to various 2D design tasks.
  5. Overview of Vercel for FreeSewing development

    Vercel is used in the FreeSewing ecosystem to build and deploy web apps and websites. It allows developers to preview designs and code changes without maintaining a local development environment. While Vercel automatically previews pull requests submitted to the main repository, creating a personal Vercel account allows developers to preview their own forks and share build links with others. A free "Hobby" account is available for personal, non-commercial use.
  6. Overview of FreeSewing maintained packages

    FreeSewing maintains a suite of packages to support its pattern-generating library, designs, websites, and infrastructure. The primary library is provided by the @freesewing/core package, while other supporting packages include @freesewing/collection, @freesewing/config, @freesewing/i18n, @freesewing/models, @freesewing/prettier-config, @freesewing/react, @freesewing/snapseries, @freesewing/studio, and @freesewing/utils.
  7. Access Jett design metadata and i18n data

    Metadata and internationalization (i18n) data for the Jett design are available as named exports about and i18n respectively.
    import { about, i18n } from '@freesewing/jett'
  8. Understand Git's data structure (DAG)

    Git stores data as a Directed Acyclic Graph (DAG). This structure has two primary constraints:

    1. Directed: Relationships (edges) are one-way only; they flow in a single direction.
    2. Acyclic: No loops are allowed. A branch can split and later re-converge downstream, but it can never loop back to a point before the branch occurred.

    In Git, each version of work is represented as a node (commit) in this graph.

  9. Conceptual foundation of Git: Directed Acyclic Graph (DAG)

    Git is built on the concept of a Directed Acyclic Graph (DAG). In this context, a graph is a data structure that stores both information and the relationships between that information.

    • Nodes: Represent the data points (e.g., specific versions or states of the project).
    • Edges: Represent the relationships or connections between those nodes (e.g., which version preceded another).
  10. Understand the FreeSewing Part object

    A Part in FreeSewing is the fundamental building block of a Design. It encapsulates all data, logic, and configuration required for a specific piece of the design. Most importantly, it provides a draft() method that executes the actual parametric drafting process.
  11. Use the Store object for shared data management

    The Store object provides a simple key/value store used to store and retrieve data. Because it is shared across the pattern, it is the recommended mechanism for passing data between different parts of the application.
  12. Understand the purpose of Git as a Version Control System

    Git is a Version Control System (VCS) designed to solve the problem of tracking changes to files over time. It allows developers to maintain a history of edits, revert to earlier versions of a project, and enable multiple collaborators to work on the same set of files without overwriting each other's changes, replacing inefficient manual versioning (e.g., naming files draft_01.md, draft_final.md).