# Patchwork Patchwork lays a quilt from traditional blocks such as pinwheel, flying geese and rail fence. Each avatar picks two of the eighteen blocks and repeats them as diagonal twins rotated by 180 degrees, so every quilt comes out point symmetric. Generate textile abstract avatars for user accounts and placeholders. - **Style name:** `patchwork` - **Category:** Minimalist - **Animated:** no - **Creator:** DiceBear (https://www.dicebear.com) - **Source:** https://www.dicebear.com - **License:** CC0 1.0 (https://creativecommons.org/publicdomain/zero/1.0/) ## Usage Every library below produces the same SVG for the same seed and options. HTTP API: ``` https://api.dicebear.com/10.x/patchwork/svg?seed=John ``` JavaScript: ``` npm install @dicebear/core @dicebear/styles --save ``` ```js import { Style, Avatar } from '@dicebear/core'; import definition from '@dicebear/styles/patchwork.json' with { type: 'json' }; const style = new Style(definition); const avatar = new Avatar(style, { seed: 'John' }); const svg = avatar.toString(); ``` PHP: ``` composer require dicebear/core dicebear/styles ``` ```php 'John']); $svg = (string) $avatar; ``` Python: ``` pip install dicebear-core dicebear-styles ``` ```python from importlib.resources import files from dicebear import Avatar, Style style = Style.from_json( files("dicebear_styles").joinpath("patchwork.json").read_text("utf-8") ) avatar = Avatar(style, {"seed": "John"}) svg = avatar.to_string() ``` Rust: ``` cargo add dicebear-core serde_json cargo add dicebear-styles --features patchwork ``` ```rust use dicebear_core::{Avatar, Style}; use serde_json::json; let style = Style::from_str(dicebear_styles::PATCHWORK)?; let avatar = Avatar::new(&style, json!({ "seed": "John" }))?; let svg = avatar.to_svg(); ``` Go: ``` go get github.com/dicebear/dicebear-go/v10 go get github.com/dicebear/styles/v10 ``` ```go import ( dicebear "github.com/dicebear/dicebear-go/v10" "github.com/dicebear/styles/v10" ) style, _ := dicebear.NewStyle([]byte(styles.Patchwork)) avatar, _ := dicebear.NewAvatar(style, map[string]any{"seed": "John"}) svg := avatar.SVG() ``` Dart: ``` dart pub add dicebear_core dicebear_styles ``` ```dart import 'package:dicebear_core/dicebear_core.dart'; import 'package:dicebear_styles/patchwork.dart'; final style = Style.parse(patchwork); final avatar = Avatar(style, {'seed': 'John'}); final svg = avatar.svg; ``` CLI: ``` npm install --global dicebear ``` ``` dicebear patchwork ``` ## Presets 8 ready-made option sets for this style. Each is a plain set of render options: pass it to any of the libraries or send it as HTTP-API query parameters. You do not need to install anything for them, and any option a preset leaves out keeps varying with the seed. - **Sepia:** Three browns for the quilt. - **Greyscale:** Three greys, no hue at all. - **Duotone:** Three steps of one indigo. - **Muted:** Dusty fabrics on unbleached cloth. - **Electric:** Acid fabrics on near black. - **Pastel Wall:** Soft fabrics throughout. - **Bold Pop:** Primary colors, no shading. - **Close Up:** Scaled in on a couple of blocks. The full option set of each one is at https://www.dicebear.com/styles/patchwork/presets/index.md. ## Options Every option below works in all libraries and as a query parameter of the HTTP API. The ones built from a component name (`Variant`, `Probability`) or from a color group (`Color`, `ColorFill`, `ColorFillStops`, `ColorAngle`, `ColorOrder`) belong to this style; the rest are [core options](https://www.dicebear.com/guides/core-options/) that every style accepts. | Option | Type | Values | | --- | --- | --- | | `seed` | string | | | `size` | number | 1 to 4096 | | `idRandomization` | boolean | | | `title` | string | | | `flip` | enum (array allowed) | `none`, `horizontal`, `vertical`, `both` | | `fontFamily` | string (array allowed) | | | `fontWeight` | number (array allowed) | 1 to 1000 | | `scale` | range | 0 to 10 | | `borderRadius` | range | 0 to 50 | | `rotate` | range | -360 to 360 | | `translateX` | range | -1000 to 1000 | | `translateY` | range | -1000 to 1000 | | `blockVariant` | enum (array allowed) | `brokenDishes`, `checker`, `corners`, `economy`, `fan`, `geese`, `halfSquare`, `hourglass`, `mountains`, `peak`, `petals`, `pinwheel`, `rails`, `rings`, `shells`, `sunrise`, `swirl`, `target` | | `blockProbability` | number | 0 to 100 | | `backgroundColor` | color (array allowed) | Hex color, `#` optional | | `backgroundColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `backgroundColorFillStops` | range | | | `backgroundColorAngle` | range | -360 to 360 | | `backgroundColorOrder` | enum | `random`, `fixed` | | `fabricAColor` | color (array allowed) | Hex color, `#` optional | | `fabricAColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `fabricAColorFillStops` | range | | | `fabricAColorAngle` | range | -360 to 360 | | `fabricAColorOrder` | enum | `random`, `fixed` | | `fabricBColor` | color (array allowed) | Hex color, `#` optional | | `fabricBColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `fabricBColorFillStops` | range | | | `fabricBColorAngle` | range | -360 to 360 | | `fabricBColorOrder` | enum | `random`, `fixed` | | `fabricCColor` | color (array allowed) | Hex color, `#` optional | | `fabricCColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `fabricCColorFillStops` | range | | | `fabricCColorAngle` | range | -360 to 360 | | `fabricCColorOrder` | enum | `random`, `fixed` | The same table is available as JSON at `https://api.dicebear.com/10.x/patchwork/options.json`, and the raw definition at `https://api.dicebear.com/10.x/patchwork/definition.json`.