@fuelrats/koa-adorable-avatars
TypeScript icon, indicating that this package has built-in type declarations

0.1.2 • Public • Published

koa-adorable-avatars

What is it?

This repository contains the Koa middleware that can be used to host your own avatars service!

How do I use it?

First, you'll need the @fuelrats/koa-adorable-avatars package:

npm install @fuelrats/koa-adorable-avatars --save

or

yarn add @fuelrats/koa-adorable-avatars

Then, use the routers within your application:

// your_server.js
import Koa from 'koa';
import Router from '@koa/router';
import AvatarsRouter from 'adorable-avatars';

const router = new Router()
router.use('/avatars', AvatarsRouter.routes(), AvatarsRouter.allowedMethods());

const app = new Koa();
app.use(router.routes());
app.use(router.allowedMethods());

That's it! Your server now includes the avatars endpoints!

Endpoints

Assuming your server lives at myserver.com, and you've configured the middleware as above, you now have the following endpoints:

  • myserver.com/avatars/:id
    • returns an avatar for the provided id.
    • id can be anything (email, username, md5 hash, as long as it's a valid URI)
    • defaults to 400px
  • myserver.com/avatars/:size/:id
    • returns an avatar for the provided id at the specified size
    • size cannot exceed 400px
  • myserver.com/avatars/face/:eyes/:nose/:mouth/:color/:size?
    • Allows you to generate a custom avatar from the specified parts and color, and size
    • e.g. myserver.com/avatars/face/eyes1/nose2/mouth4/DEADBF/300
  • myserver.com/avatars/list
    • returns JSON of all valid parts for the custom endpoint above
    • myserver.com/avatars/:size?/random
      • returns a random avatar, different each time
      • e.g. myserver.com/avatars/300/random

Development

If you're developing locally, you'll first need to bootstrap (assumes nvm):

# use correct node version
nvm use

# install dependencies
npm install

Then, there are several npm scripts that will be useful:

# run the unit tests
npm test

# run both a dev server and eslint
npm run dev

# run a dev server
npm run dev:server

# run eslint
npm run dev:lint

# compile the application
npm run build

Contributing

Please read the contributors' guide

Open-source Contributors

Readme

Keywords

none

Package Sidebar

Install

npm i @fuelrats/koa-adorable-avatars

Weekly Downloads

2

Version

0.1.2

License

MIT

Unpacked Size

629 kB

Total Files

63

Last publish

Collaborators

  • trezy
  • xlexious
  • clapton