holiday-avatar

Vue library for generating nice user avatar. (Inspired by react-nice-avatar)
1,550 60
Install
npm install holiday-avatar
Latest Version:0.0.5
Vue:3
License:MIT
Last Updated:Jul 3, 2021
Links: GitHub  ·  npm
Maintainer: chiling.wjq

holiday-avatar

Introduction

Vue library for generating nice user avatar. (Inspired by react-nice-avatar)

Version npm download

Online Editor / Preview

Assets

Installation

npm install holiday-avatar
# or
yarn add holiday-avatar
# or
pnpm install holiday-avatar

Usage

Import Directly (Recommended)

You can import component directly and use it. In this form, only components imported will be bundled.

<template>
  <HldAvatar />
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
});
</script>

or

<template>
  <hld-avatar></hld-avatar>
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
});
</script>

Install Globally (Not Recommended)

No tree-shaking. Bundle will have redundant codes.

import { createApp } from 'vue';
import App from './App.vue';
import Avatar from 'holiday-avatar';

createApp(App).use(Avatar).mount('#app');

After the installation. You can use all the components in you SFC like this.

<template>
  <HldAvatar />
</template>

or

<template>
  <hld-avatar></hld-avatar>
</template>

Generate Config

Generate random config, the config can be saved into your database to use later.

<template>
  <HldAvatar v-bind="{ ...config }" />
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar, genConfig } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
  setup() {
    const config = genConfig();

    return {
      config,
    };
  },
});
</script>

If you need to customize the configuration, there are two ways to provide you with the ability to customize.

<template>
  <HldAvatar v-bind="{ ...config }" />
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar, genConfig } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
  setup() {
    // You can also pass in other options in the option list below. e.g. `{ sex: 'female', eyeType: 'smile' }`
    const config = genConfig({ bgColor: '#000' });

    return {
      config,
    };
  },
});
</script>

or

<template>
  <!-- You can also pass in other options in the option list below with kebab-case. e.g. `sex="female" eye-type="smile"` -->
  <HldAvatar v-bind="{ ...config }" bg-color="#000" />
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar, genConfig } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
  setup() {
    const config = genConfig();

    return {
      config,
    };
  },
});
</script>

NOTE: The latter option will override the previous!

<template>
  <!-- `bg-color` will be overridden as `#fff` -->
  <HldAvatar v-bind="{ ...config }" bg-color="#fff" />
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar, genConfig } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
  setup() {
    const config = genConfig({ bgColor: '#000' });

    return {
      config,
    };
  },
});
</script>

Same as above.

<template>
  <!-- `bg-color` will be overridden as `#000` -->
  <HldAvatar bg-color="#fff" v-bind="{ ...config }" />
</template>

<script>
import { defineComponent } from 'vue';
import { Avatar, genConfig } from 'holiday-avatar';

export default defineComponent({
  components: {
    HldAvatar: Avatar,
  },
  setup() {
    const config = genConfig({ bgColor: '#000' });

    return {
      config,
    };
  },
});
</script>

Options

The options can be passed into genConfig or as Vue props.

key type default accept tips
bgColor string
hatColor string
faceColor string
hairColor string
shirtColor string
hairColorRandom boolean false
sex string male, female
earSize string small, big
eyeType string circle, oval, smile
hatType string none, beanie, turban
hairType string normal, thick, mohawk, femaleLong, femaleShort
noseType string short, long, round
mouthType string laugh, smile, peace
shirtType string hoody, short, polo
glassesType string none, round, square
shape string circle circle, rounded, square

License

Released under MIT by @wjq990112.

Related Packages

vue-image-pro

An Image Component for Vue.js | 一个Vue图片增强组件

1,340 5
vue-avatar

Avatar component for Vue.js

466,478 612
vue-avatar-3

A useful avatar component for Vue 3, with support for letter avatars.

7,661 1
@alexrafael10/vue-avatar

Avatar component for Vue.js

6,112 2
vue-nice-avatar

Dummy avatar generator

539 106

Version History

Version Released Vue License
0.0.5 >=3.0.0 MIT
0.0.3 >=3.0.0 MIT
0.0.2 >=3.0.0 MIT
0.0.1 ^3.1.1 MIT
Pre-releases (19)
Version Released Vue License
0.0.3-beta.2 >=3.0.0 MIT
0.0.3-beta.1 >=3.0.0 MIT
0.0.3-beta.0 >=3.0.0 MIT
0.0.3-alpha.0 >=3.0.0 MIT
0.0.2-beta.6 >=3.0.0 MIT