# Icons Icons is a clean vector avatar style that drops a single Bootstrap Icons pictogram onto a tinted background. Generate scalable profile icons ideal for dashboards, admin panels, and enterprise tools where character faces would feel out of place. - **Style name:** `icons` - **Category:** Minimalist - **Animated:** no - **Creator:** The Bootstrap Authors (https://getbootstrap.com/) - **Source:** https://github.com/twbs/icons - **License:** MIT (https://github.com/twbs/icons/blob/main/LICENSE) ## Usage Every library below produces the same SVG for the same seed and options. HTTP API: ``` https://api.dicebear.com/10.x/icons/svg?seed=John ``` JavaScript: ``` npm install @dicebear/core @dicebear/styles --save ``` ```js import { Style, Avatar } from '@dicebear/core'; import definition from '@dicebear/styles/icons.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("icons.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 icons ``` ```rust use dicebear_core::{Avatar, Style}; use serde_json::json; let style = Style::from_str(dicebear_styles::ICONS)?; 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.Icons)) 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/icons.dart'; final style = Style.parse(icons); final avatar = Avatar(style, {'seed': 'John'}); final svg = avatar.svg; ``` CLI: ``` npm install --global dicebear ``` ``` dicebear icons ``` ## Presets 9 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:** Four warm browns behind the icon. - **Greyscale:** Four greys, no hue at all. - **Duotone:** One indigo for every avatar. - **Muted:** Six dusty backgrounds. - **Electric:** Six backgrounds at full saturation. - **Pastel Wall:** Five soft backgrounds. - **Bold Pop:** Five saturated backgrounds. - **Sunrise:** A warm gradient behind the icon. - **Stencil:** One dark ground for everyone. The full option set of each one is at https://www.dicebear.com/styles/icons/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 | | `iconVariant` | enum (array allowed) | `alarm`, `archive`, `award`, `bag`, `bandaid`, `bank`, `basket`, `basket2`, `basket3`, `bell`, `bicycle`, `binoculars`, `book`, `bookshelf`, `boombox`, `box`, `boxSeam`, `boxes`, `bricks`, `briefcase`, `brightnessHigh`, `brush`, `bucket`, `bug`, `building`, `calculator`, `camera`, `cameraReels`, `cart2`, `cashCoin`, `clock`, `cloud`, `cloudDrizzle`, `cloudMoon`, `cloudSnow`, `clouds`, `coin`, `compass`, `controller`, `cup`, `cupStraw`, `dice5`, `disc`, `display`, `doorClosed`, `doorOpen`, `dpad`, `droplet`, `easel`, `egg`, `eggFried`, `emojiHeartEyes`, `emojiLaughing`, `emojiSmile`, `emojiSmileUpsideDown`, `emojiSunglasses`, `emojiWink`, `envelope`, `eyeglasses`, `flag`, `flower1`, `flower2`, `flower3`, `gem`, `gift`, `globe`, `globe2`, `handThumbsUp`, `handbag`, `hdd`, `heart`, `hourglass`, `hourglassSplit`, `house`, `houseDoor`, `inbox`, `inboxes`, `key`, `keyboard`, `ladder`, `lamp`, `laptop`, `lightbulb`, `lightning`, `lightningCharge`, `lock`, `magic`, `mailbox`, `map`, `megaphone`, `minecart`, `minecartLoaded`, `moon`, `moonStars`, `mortarboard`, `mouse`, `mouse2`, `newspaper`, `paintBucket`, `palette`, `palette2`, `paperclip`, `pen`, `pencil`, `phone`, `piggyBank`, `pinAngle`, `plug`, `printer`, `projector`, `puzzle`, `router`, `scissors`, `sdCard`, `search`, `send`, `shop`, `shopWindow`, `signpost`, `signpost2`, `signpostSplit`, `smartwatch`, `snow`, `snow2`, `snow3`, `speaker`, `star`, `stoplights`, `stopwatch`, `sun`, `tablet`, `thermometer`, `ticketPerforated`, `tornado`, `trash`, `trash2`, `tree`, `trophy`, `truck`, `truckFlatbed`, `tsunami`, `umbrella`, `wallet`, `wallet2`, `watch`, `webcam` | | `iconProbability` | 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` | | `iconColor` | color (array allowed) | Hex color, `#` optional | | `iconColorFill` | enum (array allowed) | `solid`, `linear`, `radial` | | `iconColorFillStops` | range | | | `iconColorAngle` | range | -360 to 360 | | `iconColorOrder` | enum | `random`, `fixed` | The same table is available as JSON at `https://api.dicebear.com/10.x/icons/options.json`, and the raw definition at `https://api.dicebear.com/10.x/icons/definition.json`.