# π§Ά StitchMath Core (`stitchmath-core`) [](https://stitchmath.com) [](https://opensource.org/licenses/MIT) [](src/index.d.ts) ### π Featured & Approved On [](https://www.producthunt.com/products/stitchmath?embed=true&utm_source=badge-featured&utm_medium=badge&utm_campaign=badge-stitchmath) [](https://www.saashub.com/stitchmath?utm_source=badge&utm_campaign=badge&utm_content=stitchmath&badge_variant=color&badge_kind=approved) --- **StitchMath Core** is the open-source mathematical calculation engine and standardized dataset repository by **[StitchMath.com](https://stitchmath.com)**. Built for developers, designers, and craft bloggers, this library eliminates guesswork in knitting and crochet by providing robust algorithms for gauge sizing, even row decreases, yarn WPI classification, and international needle size conversions. > [!IMPORTANT] > **π Need the Full Interactive Web Suite & AI Assistant?** > This repository contains our lightweight algorithmic SDK and public datasets. For the complete visual experienceβincluding **20+ interactive calculators**, our custom **Sweater Pattern Generator**, and the **AI Pattern Assistant**βvisit the official web application at **[https://stitchmath.com](https://stitchmath.com)**. --- ## π Open-Source SDK vs. StitchMath.com Platform | Feature | `stitchmath-core` (This Repo) | [StitchMath.com Official Platform](https://stitchmath.com) | | :--- | :---: | :---: | | **Core Math Algorithms (JS/TS SDK)** | β Yes (Raw Functions) | β Yes (Visual & Interactive) | | **Standardized JSON Datasets** | β Yes (Needles, Yarn WPI, Blankets) | β Yes (Interactive Tables) | | **20+ Visual Web Calculators** | β | β Yes (Gauge, Socks, Sleeves, etc.) | | **AI Pattern Assistant** | β | β Yes (Instant AI Fitment Solving) | | **Custom Sweater Pattern Generator** | β | β Yes (Dynamic Garment Sizing) | | **Printable Guides & Swatch Tutorials**| β | β Yes (Comprehensive Reference Hub) | π **[Experience all interactive tools for free on StitchMath.com β](https://stitchmath.com/calculators/)** --- ## π¦ Features & Datasets - π **Gauge Conversion Algorithm**: Adjust pattern stitch counts precisely based on actual swatch measurements. - β **Increase & Decrease Spacing**: Automatically calculate even stitch distribution and generate row work instructions (`k2tog`, `m1`). - βοΈ **Curated JSON Datasets**: Machine-readable, standardized JSON files for: - **Needle Sizes** (`data/needle-sizes.json`): Comprehensive US, UK/Canadian, and Metric (mm) conversions. - **Yarn Weights & WPI** (`data/yarn-weights.json`): Standard 0β6 classifications, Wraps Per Inch ranges, and UK/Aus Ply equivalents. - **Standard Dimensions** (`data/blanket-sizes.json`): Standard sizes for throws, baby blankets, scarves, and socks. - π **Unit Agnostic**: Seamless bidirectional conversion between US Imperial (`in`, `oz`, `yd`) and Metric (`cm`, `g`, `m`). - π· **Full TypeScript Support**: Bundled with comprehensive type declarations (`src/index.d.ts`). --- ## π€ Model Context Protocol (MCP) Server StitchMath Core now includes a built-in MCP server, allowing AI assistants like Claude Desktop and Cursor to perform 100% accurate knitting math, gauge conversions, and sizing calculations directly within your chats. ### Available AI Tools The server exposes the following tools to LLMs: - `calculate_gauge`: Adjust stitch counts precisely based on actual swatch measurements. - `calculate_even_spacing`: Calculate evenly spaced increases or decreases across a row. - `convert_needle_size`: Convert between US, UK, and Metric needle sizes. - `convert_units`: Convert Imperial / Metric dimensions. - `get_blanket_cast_on`: Get recommended cast-on stitches for standard blanket sizes. ### Installing in Claude Desktop Add the following to your `claude_desktop_config.json`: ```json { "mcpServers": { "stitchmath": { "command": "npx", "args": ["-y", "stitchmath-core"] } } } ``` --- ## π Quick Start (For Developers) ### Installation You can install `stitchmath-core` via npm or yarn into your Node.js, React, Vue, or React Native projects: ```bash npm install stitchmath-core ``` ### Usage Examples #### 1. Calculate Gauge Adjustment When a pattern calls for 20 stitches over 4 inches, but your actual swatch is 22 stitches over 4 inches: ```javascript const { calculateGauge } = require('stitchmath-core'); // How many stitches should you cast on for a 36-inch bust? const castOnStitches = calculateGauge(22, 4, 36); console.log(`Cast on ${castOnStitches} stitches`); // Output: Cast on 198 stitches ``` #### 2. Calculate Even Decreases Across a Row When shaping a sleeve or hat crown and you need to decrease 8 stitches evenly across 80 total stitches: ```javascript const { calculateEvenSpacing } = require('stitchmath-core'); const shaping = calculateEvenSpacing(80, 8, true); // true = decrease console.log(shaping.instructions); // Output: Work 9 sts, then [k2tog (or decrease), work 9 sts] across the row. ``` #### 3. Lookup Needle Sizes & Conversions ```javascript const { convertNeedleSize } = require('stitchmath-core'); const sizeInfo = convertNeedleSize('8', 'us'); console.log(sizeInfo); // Output: { mm: '5.0', us: '8', uk: '6' } ``` --- ## π Standardized JSON Datasets You can import our curated industry datasets directly without importing the calculation functions: ```javascript // Import needle chart dataset directly const needleChart = require('stitchmath-core/data/needle-sizes.json'); // Import yarn weight classifications and WPI standards const yarnChart = require('stitchmath-core/data/yarn-weights.json'); // Import standard blanket and scarf dimensions const blanketDimensions = require('stitchmath-core/data/blanket-sizes.json'); ``` --- ## π Embedding StitchMath on Your Blog or Website Are you a craft blogger, pattern designer, or knitting tutorial author? We encourage you to reference and embed **StitchMath** in your articles! To add a direct link or badge to the official calculation suite on your website, simply copy the following HTML snippet: ```html π§Ά Powered by StitchMath Calculators β ``` By linking to **[StitchMath.com](https://stitchmath.com)**, you help your readers calculate exact gauge swatches and sizing without leaving their browser! --- ## π€ Contributing We welcome contributions from fellow developers, knitters, and crocheters! 1. Fork the repository. 2. Create your feature branch (`git checkout -b feature/amazing-calculation`). 3. Commit your changes (`git commit -m 'Add new sock heel shaping formula'`). 4. Push to the branch (`git push origin feature/amazing-calculation`). 5. Open a Pull Request. --- ## π License This repository is licensed under the **MIT License**. See the [LICENSE](LICENSE) file for details. ---
Made with β€οΈ by the craft tech team at StitchMath.com.
Making knitting and crochet math simple for crafters everywhere.