# Lorelei Lorelei is a hand-drawn vector avatar style rendered in fine black ink lines, with detailed hairstyles, expressive eyes, and sketched collars. Generate illustration-style SVG profile icons for social apps, editorial sites, and user accounts. - **Style name:** `lorelei` - **Category:** Characters - **Animated:** no - **Creator:** Lisa Wischofsky (https://www.instagram.com/lischi_art/) - **Source:** https://www.figma.com/community/file/1198749693280469639 - **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/lorelei/svg?seed=John ``` JavaScript: ``` npm install @dicebear/core @dicebear/styles --save ``` ```js import { Style, Avatar } from '@dicebear/core'; import definition from '@dicebear/styles/lorelei.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("lorelei.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 lorelei ``` ```rust use dicebear_core::{Avatar, Style}; use serde_json::json; let style = Style::from_str(dicebear_styles::LORELEI)?; 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.Lorelei)) 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/lorelei.dart'; final style = Style.parse(lorelei); final avatar = Avatar(style, {'seed': 'John'}); final svg = avatar.svg; ``` CLI: ``` npm install --global dicebear ``` ``` dicebear lorelei ``` ## Presets 12 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. - **Bare:** Black on nothing, every accessory switched off. - **Sepia:** Brown ink on tanned paper, contour included. - **Greyscale:** One grey for the whole drawing. - **Duotone:** Two colors and nothing else, deep teal on mint. - **Muted:** Hair in six dusty tones, black line kept. - **Electric:** Hair at full saturation on near black. - **Pastel Wall:** Five soft backgrounds, the drawing untouched. - **Bold Pop:** Eight backgrounds, eight hair colors, no restraint. - **Night Shift:** Pale face and violet hair on near black. - **Sunrise:** A warm gradient behind, the drawing untouched. - **Sunset Fade:** The hair itself is a gradient, top to bottom. - **Close Up:** Scaled in on the face, for small avatars. The full option set of each one is at https://www.dicebear.com/styles/lorelei/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 | | `beardVariant` | enum (array allowed) | `variant01`, `variant02` | | `beardProbability` | number | 0 to 100 | | `earringsVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03` | | `earringsProbability` | number | 0 to 100 | | `eyebrowsVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03`, `variant04`, `variant05`, `variant06`, `variant07`, `variant08`, `variant09`, `variant10`, `variant11`, `variant12`, `variant13` | | `eyebrowsProbability` | number | 0 to 100 | | `eyesVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03`, `variant04`, `variant05`, `variant06`, `variant07`, `variant08`, `variant09`, `variant10`, `variant11`, `variant12`, `variant13`, `variant14`, `variant15`, `variant16`, `variant17`, `variant18`, `variant19`, `variant20`, `variant21`, `variant22`, `variant23`, `variant24` | | `eyesProbability` | number | 0 to 100 | | `frecklesVariant` | enum (array allowed) | `variant01` | | `frecklesProbability` | number | 0 to 100 | | `glassesVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03`, `variant04`, `variant05` | | `glassesProbability` | number | 0 to 100 | | `hairVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03`, `variant04`, `variant05`, `variant06`, `variant07`, `variant08`, `variant09`, `variant10`, `variant11`, `variant12`, `variant13`, `variant14`, `variant15`, `variant16`, `variant17`, `variant18`, `variant19`, `variant20`, `variant21`, `variant22`, `variant23`, `variant24`, `variant25`, `variant26`, `variant27`, `variant28`, `variant29`, `variant30`, `variant31`, `variant32`, `variant33`, `variant34`, `variant35`, `variant36`, `variant37`, `variant38`, `variant39`, `variant40`, `variant41`, `variant42`, `variant43`, `variant44`, `variant45`, `variant46`, `variant47`, `variant48` | | `hairProbability` | number | 0 to 100 | | `hairAccessoriesVariant` | enum (array allowed) | `flowers` | | `hairAccessoriesProbability` | number | 0 to 100 | | `headVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03`, `variant04` | | `headProbability` | number | 0 to 100 | | `mouthVariant` | enum (array allowed) | `happy01`, `happy02`, `happy03`, `happy04`, `happy05`, `happy06`, `happy07`, `happy08`, `happy09`, `happy10`, `happy11`, `happy12`, `happy13`, `happy14`, `happy15`, `happy16`, `happy17`, `happy18`, `sad01`, `sad02`, `sad03`, `sad04`, `sad05`, `sad06`, `sad07`, `sad08`, `sad09` | | `mouthProbability` | number | 0 to 100 | | `noseVariant` | enum (array allowed) | `variant01`, `variant02`, `variant03`, `variant04`, `variant05`, `variant06` | | `noseProbability` | number | 0 to 100 | | `earringsColor` | color (array allowed) | Hex color, `#` optional | | `earringsColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `earringsColorFillStops` | range | | | `earringsColorAngle` | range | -360 to 360 | | `earringsColorOrder` | enum | `random`, `fixed` | | `eyebrowsColor` | color (array allowed) | Hex color, `#` optional | | `eyebrowsColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `eyebrowsColorFillStops` | range | | | `eyebrowsColorAngle` | range | -360 to 360 | | `eyebrowsColorOrder` | enum | `random`, `fixed` | | `eyesColor` | color (array allowed) | Hex color, `#` optional | | `eyesColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `eyesColorFillStops` | range | | | `eyesColorAngle` | range | -360 to 360 | | `eyesColorOrder` | enum | `random`, `fixed` | | `frecklesColor` | color (array allowed) | Hex color, `#` optional | | `frecklesColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `frecklesColorFillStops` | range | | | `frecklesColorAngle` | range | -360 to 360 | | `frecklesColorOrder` | enum | `random`, `fixed` | | `glassesColor` | color (array allowed) | Hex color, `#` optional | | `glassesColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `glassesColorFillStops` | range | | | `glassesColorAngle` | range | -360 to 360 | | `glassesColorOrder` | enum | `random`, `fixed` | | `hairColor` | color (array allowed) | Hex color, `#` optional | | `hairColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `hairColorFillStops` | range | | | `hairColorAngle` | range | -360 to 360 | | `hairColorOrder` | enum | `random`, `fixed` | | `hairAccessoriesColor` | color (array allowed) | Hex color, `#` optional | | `hairAccessoriesColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `hairAccessoriesColorFillStops` | range | | | `hairAccessoriesColorAngle` | range | -360 to 360 | | `hairAccessoriesColorOrder` | enum | `random`, `fixed` | | `mouthColor` | color (array allowed) | Hex color, `#` optional | | `mouthColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `mouthColorFillStops` | range | | | `mouthColorAngle` | range | -360 to 360 | | `mouthColorOrder` | enum | `random`, `fixed` | | `noseColor` | color (array allowed) | Hex color, `#` optional | | `noseColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `noseColorFillStops` | range | | | `noseColorAngle` | range | -360 to 360 | | `noseColorOrder` | enum | `random`, `fixed` | | `outlineColor` | color (array allowed) | Hex color, `#` optional | | `outlineColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `outlineColorFillStops` | range | | | `outlineColorAngle` | range | -360 to 360 | | `outlineColorOrder` | enum | `random`, `fixed` | | `skinColor` | color (array allowed) | Hex color, `#` optional | | `skinColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `skinColorFillStops` | range | | | `skinColorAngle` | range | -360 to 360 | | `skinColorOrder` | enum | `random`, `fixed` | | `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` | The same table is available as JSON at `https://api.dicebear.com/10.x/lorelei/options.json`, and the raw definition at `https://api.dicebear.com/10.x/lorelei/definition.json`.