Skip to main content

Definition files of the DiceBear avatar styles.

Project description

DiceBear avatar styles

This repository contains all official avatar style definitions for DiceBear. An avatar style definition is a JSON file that describes how to create an avatar. It contains all necessary information like available elements and colors. The JSON files are ideal for creating avatars in different programming languages with the corresponding DiceBear wrapper. The JSON schema for the avatar style definitions can be found in the @dicebear/schema package.

Generate definitions

Most of the JSON files were created using the DiceBear Exporter for Figma. The used Figma files are linked in the figma folder. Files created with this plugin are marked accordingly and should not be adjusted manually, but exported again with the Figma plugin.

Usage

JavaScript

npm install @dicebear/styles
import adventurer from '@dicebear/styles/adventurer.json' with { type: 'json' };
import lorelei from '@dicebear/styles/lorelei.json' with { type: 'json' };

PHP

composer require dicebear/styles
$basePath = \Composer\InstalledVersions::getInstallPath('dicebear/styles');

$adventurer = json_decode(file_get_contents($basePath . '/src/adventurer.json'), true);
$lorelei    = json_decode(file_get_contents($basePath . '/src/lorelei.json'), true);

Python

pip install dicebear-styles
import json
from importlib.resources import files

adventurer = json.loads(files('dicebear_styles').joinpath('adventurer.json').read_text('utf-8'))
lorelei    = json.loads(files('dicebear_styles').joinpath('lorelei.json').read_text('utf-8'))

Rust

Each style is gated behind a feature of the same name, so a binary only embeds the styles it opts into (use the all feature to pull in every style):

cargo add dicebear-styles --features adventurer,lorelei

The enabled styles are embedded at compile time and exposed as raw JSON (&'static str). Parse them with serde_json:

use dicebear_styles::{ADVENTURER, LORELEI};

let adventurer: serde_json::Value = serde_json::from_str(ADVENTURER)?;
let lorelei: serde_json::Value = serde_json::from_str(LORELEI)?;

// Or look one up by name at runtime (None if unknown or its feature is off):
let style = dicebear_styles::get("adventurer");

// all() lists every style compiled into this build.
let all = dicebear_styles::all();

Go

go get github.com/dicebear/styles/v10

Every style is embedded at compile time and exposed as raw JSON (string), both as an exported variable and by name via Get. Parse it with encoding/json:

import (
	"encoding/json"

	styles "github.com/dicebear/styles/v10"
)

var adventurer map[string]any
_ = json.Unmarshal([]byte(styles.Adventurer), &adventurer)

// Or look one up by name (ok is false if the style is unknown):
raw, ok := styles.Get("lorelei")

// All() lists every embedded style.
all := styles.All()

Dart

dart pub add dicebear_styles

Each style is a Dart string constant in its own library, so a compiled app only embeds the styles it imports. Parse the raw JSON with dart:convert:

import 'dart:convert';

import 'package:dicebear_styles/adventurer.dart';
import 'package:dicebear_styles/lorelei.dart';

final adventurerStyle = jsonDecode(adventurer);
final loreleiStyle = jsonDecode(lorelei);

Or import the umbrella library, which pulls in every style and adds a runtime lookup by name:

import 'package:dicebear_styles/dicebear_styles.dart' as styles;

// null if the style is unknown:
final raw = styles.get('adventurer');

// `all` lists every embedded style.
final names = styles.all;

Contributing

See CONTRIBUTING.md for local development, testing, and the release process.

License

The avatar styles are licensed under different licenses. More information can be found in the file LICENSE.md or in the definition files themselves.

Sponsors

Advertisement: Many thanks to our sponsors who provide us with free or discounted products.

bunny.net

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dicebear_styles-10.3.0rc1.tar.gz (688.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dicebear_styles-10.3.0rc1-py3-none-any.whl (715.4 kB view details)

Uploaded Python 3

File details

Details for the file dicebear_styles-10.3.0rc1.tar.gz.

File metadata

  • Download URL: dicebear_styles-10.3.0rc1.tar.gz
  • Upload date:
  • Size: 688.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dicebear_styles-10.3.0rc1.tar.gz
Algorithm Hash digest
SHA256 2631c5f731f2dc8343c77e5dc928c64d57dc4acf14289e2c5bfb31d2da3a5710
MD5 47048b36f1cf8df0364b37c477f423e9
BLAKE2b-256 6614279140ef01859018f5ed307c36f9eb66e68b470d98b95ff91a06ccd5d653

See more details on using hashes here.

Provenance

The following attestation bundles were made for dicebear_styles-10.3.0rc1.tar.gz:

Publisher: publish.yml on dicebear/styles

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dicebear_styles-10.3.0rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for dicebear_styles-10.3.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 69ba792ad8bef1f1a610d8f63c5340d2fcc367cfeb8fe4f02f7b5a5d7e87f738
MD5 546680925abef7dcb3591af2368585fe
BLAKE2b-256 42c802fc68859ca954aa70425a032bbd44c53701ef43d82855ab238bfb2932dc

See more details on using hashes here.

Provenance

The following attestation bundles were made for dicebear_styles-10.3.0rc1-py3-none-any.whl:

Publisher: publish.yml on dicebear/styles

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page