Skip to main content

ui-avatars

CI PyPI Python versions License

Deterministic avatar URLs that work great on both light and dark designs: a real Gravatar photo if there's an email, otherwise colored initials from a hash via ui-avatars.com. Same input, same URL, always.

Install

pip install ui-avatars

Usage

from ui_avatars import avatar_url

avatar_url(name="Ada Lovelace", email="ada@example.com")
# Gravatar photo, falling back to generated initials

avatar_url(name="Ada Lovelace")
# straight ui-avatars.com URL, no Gravatar lookup

avatar_url(email="ada@example.com")
# initials from the first two letters of the email

avatar_url(name="Ada Lovelace", alpha=0.75, size=256, rounded=True)
# alpha, size, and ui-avatars.com rendering options as one-off overrides

avatar_url(name="Ada Lovelace", color="#dc2626")
# pick a specific color, skipping the palette

avatar_url(name="Ada Lovelace", alpha=1, color=("#dc2626", "#fff"))
# supply background and text color separately via a tuple

Configuration

Reconfigure the shared avatars instance once, at startup, to change the palette for every call:

from ui_avatars import avatars

avatars.configure(colors=["#1d4ed8", "#b91c1c"], size=256, rounded=True)

Or build your own instance instead:

from ui_avatars import Avatars

avatars = Avatars(colors=["#1d4ed8", "#b91c1c"], size=256)
avatars.build(name="Ada Lovelace", email="ada@example.com")

The default palette is tailwind_colors's RAINBOW_500. You can swap the whole palette like so:

from tailwind_colors import TCH

avatars.configure(colors=TCH.RAINBOW_300)

For an independent background/text color instead of one tinted from the other, use a (background, text) tuple as a colors entry — alpha still applies to whichever background results:

avatars.configure(colors=[("#fee2e2", "#ef4444"), ("#ffedd5", "#f97316")])

Development

poetry install
poetry run pytest
poetry run ruff check .

License

MIT

Download files

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

Source Distribution

ui_avatars-1.0.0.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

ui_avatars-1.0.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file ui_avatars-1.0.0.tar.gz.

File metadata

  • Download URL: ui_avatars-1.0.0.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ui_avatars-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a3c893fd57322c663bf8f73b7dfa19c3f06cd45ee3b27a8fbe854e48d5975b99
MD5 fe5f021027e8c7d277d70656d63aa14f
BLAKE2b-256 dec870e0e1ff5765782f8d836530963f52a5850f134d8e7b9174079da6d0c7eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ui_avatars-1.0.0.tar.gz:

Publisher: release.yml on stevelacey/ui-avatars

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

File details

Details for the file ui_avatars-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ui_avatars-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for ui_avatars-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bd738dfebc2d071d2455f78ea5712ef4dab18f3975904e86c2913b1209f5a9ce
MD5 b35583358e8eff1124ed0bea390ca17f
BLAKE2b-256 433e2c3002e66fc5386f0261cbce92f2c217cd3fdc6db62c78fb794df6a6b0d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ui_avatars-1.0.0-py3-none-any.whl:

Publisher: release.yml on stevelacey/ui-avatars

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

Release history Release notifications | RSS feed

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.1

2 files

1.1.0

2 files

This release

1.0.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page