A blazing fast API for Minecraft faces

jomo 9e3ef8087e always use etag, fixes #94 10 lat temu
images 3def0910bc Network rewrite/major cleanup, major caching changes, etc 10 lat temu
lib eeb1939235 remove redundant dashes in render filenames 10 lat temu
logs abeb6116e4 Use forever.js 10 lat temu
public a294a7c57f add 128px logo, polish README 10 lat temu
routes 9e3ef8087e always use etag, fixes #94 10 lat temu
test af03fb63f8 :heart: eslint 10 lat temu
views d4b0a335c4 return 200 for default avatars/renders/skins, fixes #111 10 lat temu
.buildpacks 2873157e97 Add 3d render support 10 lat temu
.editorconfig 16fdf8d1ac add editorconfig for .gitignore 10 lat temu
.gitignore f984b20344 mv modules/ lib/ 10 lat temu
.travis.yml 4dec71c75e only report coverage to coveralls from travis 10 lat temu
CONTRIBUTING.md 8750b863a8 contributing: add tests for fixed issues 10 lat temu
LICENSE e8727a0d0d Happy New Year! :tada: :tada: 10 lat temu
Procfile 5f0a3dcb63 use postinstall script instead of Procfile 10 lat temu
README.md a294a7c57f add 128px logo, polish README 10 lat temu
app.json 27aa12a76b more crafatar/crafatar changes 10 lat temu
package.json 4dec71c75e only report coverage to coveralls from travis 10 lat temu
server.js af03fb63f8 :heart: eslint 10 lat temu

README.md

Crafatar travis Coverage Status Code Climate

dependency status devDependency status docs status

Crafatar serves Minecraft avatars based on the skin for use in external applications. Inspired by Gravatar (hence the name) and Minotar.

Image manipulation is done by lwip. 3D renders are created with node-canvas, based on math by confuser.

Examples

jomo's avatar Jake_0's avatar Notch's avatar sk89q's avatar
jomo's 3d head Jake_0's 3d head Notch's 3d head sk89q's 3d head
jomo's 3d body Jake_0's 3d body Notch's 3d body sk89q's 3d body
jomo's skin Jake_0's skin Notch's skin sk89q's skin

Usage / Documentation

Please visit the website for details.

Contact

Installation

Heroku

Deploy

Dokku

  1. Install the dokku-redis plugin
  2. dokku redis:start
  3. You also might want to use docker-options for persistent storage:

    -v /var/lib/crafatar/images:/app/images
    -v /var/log/crafatar:/app/logs
    
  4. Deploy with ENV config:

    PORT=5000
    BIND=0.0.0.0
    

Local

Tests

npm test

If you want to debug failing tests, you can set the env

VERBOSE_TEST=true

To debug caching, it can be helpful to monitor redis commands while tests are running:

redis-cli monitor