Deterministic pixel-style avatars from any name
Live Demo β’ npm Package
- 13 Style Variants β Band, Crescent, Wave, Ring & more
- Facial Customization β 6 eye shapes, 5 mouth styles, glasses, hats
- 100+ Color Palettes β Beautiful built-in combinations
- Deterministic β Same name always produces identical avatars
- Zero Dependencies β Lightweight React component
- SVG Output β Perfect scaling at any size
npm install pixelpeepsimport Avatar from 'pixelpeeps';
<Avatar name="user@example.com" size={128} /><Avatar
name="Ada Lovelace"
size={180}
colors={["#06b6a4", "#73a9ff"]}
bg={["#f0f9ff", "#e0f2fe"]}
variant="crescent"
eyeShape="surprised"
mouthShape="smile"
glasses="round"
hat="beanie"
eyebrows={true}
blush={true}
/>| Prop | Type | Default | Description |
|---|---|---|---|
name |
string |
required | Seed for generation |
size |
number |
128 |
Avatar size (px) |
variant |
string |
"auto" |
Style: band, crescent, wave, etc. |
headShape |
string |
"circle" |
circle or square |
eyeShape |
string |
"random" |
circle, wink, sleepy, etc. |
mouthShape |
string |
"random" |
smile, frown, open, etc. |
glasses |
string |
"random" |
none, round, square |
hat |
string |
"random" |
none, beanie, cap |
colors |
string | array |
"random" |
Character colors |
bg |
string | array |
"random" |
Background colors |
Full API: See all props in playground
PixelPeeps uses deterministic hashing (CYRB128) to ensure identical avatars from the same input:
Input Name β Hash β Deterministic RNG β Avatar Features β SVG
Same name = Same avatar, every time. Perfect for user profiles!
Contributions welcome! Fork, create a branch, commit changes, and open a PR.
git clone https://github.com/TheCHARITH/PixelPeeps.git
npm install
npm run devMIT Β© Charith Pramodya
π Try Playground β’ π¦ View onnpm β’ β Star on GitHub
Made with
and too much
by TheCHARITH