├── images ├── mew.png ├── muk.png ├── abra.png ├── arbok.png ├── cubone.png ├── ditto.png ├── dodrio.png ├── doduo.png ├── eevee.png ├── ekans.png ├── fearow.png ├── gastly.png ├── gengar.png ├── gloom.png ├── golbat.png ├── golem.png ├── grimer.png ├── horsea.png ├── hypno.png ├── jynx.png ├── kabuto.png ├── kakuna.png ├── krabby.png ├── lapras.png ├── machop.png ├── magmar.png ├── mankey.png ├── meowth.png ├── mewtwo.png ├── oddish.png ├── onix.png ├── paras.png ├── pidgey.png ├── pinsir.png ├── ponyta.png ├── raichu.png ├── rhydon.png ├── seadra.png ├── seel.png ├── staryu.png ├── tauros.png ├── vulpix.png ├── weedle.png ├── zapdos.png ├── zubat.png ├── alakazam.png ├── arcanine.png ├── articuno.png ├── beedrill.png ├── caterpie.png ├── chansey.png ├── clefable.png ├── clefairy.png ├── cloyster.png ├── dewgong.png ├── diglett.png ├── dratini.png ├── drowzee.png ├── dugtrio.png ├── flareon.png ├── geodude.png ├── goldeen.png ├── golduck.png ├── graveler.png ├── gyarados.png ├── haunter.png ├── ivysaur.png ├── jolteon.png ├── kabutops.png ├── kadabra.png ├── kingler.png ├── koffing.png ├── machamp.png ├── machoke.png ├── magikarp.png ├── magneton.png ├── marowak.png ├── metapod.png ├── moltres.png ├── mr. mime.png ├── nidoking.png ├── nidoran♀.png ├── nidoran♂.png ├── nidorina.png ├── nidorino.png ├── omanyte.png ├── omastar.png ├── parasect.png ├── persian.png ├── pidgeot.png ├── pikachu.png ├── poliwag.png ├── porygon.png ├── primeape.png ├── psyduck.png ├── rapidash.png ├── raticate.png ├── rattata.png ├── rhyhorn.png ├── scyther.png ├── seaking.png ├── shellder.png ├── slowbro.png ├── slowpoke.png ├── snorlax.png ├── spearow.png ├── squirtle.png ├── starmie.png ├── tangela.png ├── vaporeon.png ├── venomoth.png ├── venonat.png ├── venusaur.png ├── voltorb.png ├── weezing.png ├── aerodactyl.png ├── bellsprout.png ├── blastoise.png ├── bulbasaur.png ├── butterfree.png ├── charizard.png ├── charmander.png ├── charmeleon.png ├── dragonair.png ├── dragonite.png ├── electabuzz.png ├── electrode.png ├── exeggcute.png ├── exeggutor.png ├── farfetch'd.png ├── growlithe.png ├── hitmonchan.png ├── hitmonlee.png ├── jigglypuff.png ├── kangaskhan.png ├── lickitung.png ├── magnemite.png ├── nidoqueen.png ├── ninetales.png ├── pidgeotto.png ├── poliwhirl.png ├── poliwrath.png ├── sandshrew.png ├── sandslash.png ├── tentacool.png ├── tentacruel.png ├── victreebel.png ├── vileplume.png ├── wartortle.png ├── weepinbell.png └── wigglytuff.png ├── Dockerfile ├── run-docker.sh ├── cli.js ├── .gitignore ├── package.json ├── uploader.js ├── README.md └── index.js /images/mew.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/mew.png -------------------------------------------------------------------------------- /images/muk.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/muk.png -------------------------------------------------------------------------------- /images/abra.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/abra.png -------------------------------------------------------------------------------- /images/arbok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/arbok.png -------------------------------------------------------------------------------- /images/cubone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/cubone.png -------------------------------------------------------------------------------- /images/ditto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/ditto.png -------------------------------------------------------------------------------- /images/dodrio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/dodrio.png -------------------------------------------------------------------------------- /images/doduo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/doduo.png -------------------------------------------------------------------------------- /images/eevee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/eevee.png -------------------------------------------------------------------------------- /images/ekans.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/ekans.png -------------------------------------------------------------------------------- /images/fearow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/fearow.png -------------------------------------------------------------------------------- /images/gastly.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/gastly.png -------------------------------------------------------------------------------- /images/gengar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/gengar.png -------------------------------------------------------------------------------- /images/gloom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/gloom.png -------------------------------------------------------------------------------- /images/golbat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/golbat.png -------------------------------------------------------------------------------- /images/golem.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/golem.png -------------------------------------------------------------------------------- /images/grimer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/grimer.png -------------------------------------------------------------------------------- /images/horsea.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/horsea.png -------------------------------------------------------------------------------- /images/hypno.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/hypno.png -------------------------------------------------------------------------------- /images/jynx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/jynx.png -------------------------------------------------------------------------------- /images/kabuto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/kabuto.png -------------------------------------------------------------------------------- /images/kakuna.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/kakuna.png -------------------------------------------------------------------------------- /images/krabby.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/krabby.png -------------------------------------------------------------------------------- /images/lapras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/lapras.png -------------------------------------------------------------------------------- /images/machop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/machop.png -------------------------------------------------------------------------------- /images/magmar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/magmar.png -------------------------------------------------------------------------------- /images/mankey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/mankey.png -------------------------------------------------------------------------------- /images/meowth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/meowth.png -------------------------------------------------------------------------------- /images/mewtwo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/mewtwo.png -------------------------------------------------------------------------------- /images/oddish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/oddish.png -------------------------------------------------------------------------------- /images/onix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/onix.png -------------------------------------------------------------------------------- /images/paras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/paras.png -------------------------------------------------------------------------------- /images/pidgey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/pidgey.png -------------------------------------------------------------------------------- /images/pinsir.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/pinsir.png -------------------------------------------------------------------------------- /images/ponyta.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/ponyta.png -------------------------------------------------------------------------------- /images/raichu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/raichu.png -------------------------------------------------------------------------------- /images/rhydon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/rhydon.png -------------------------------------------------------------------------------- /images/seadra.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/seadra.png -------------------------------------------------------------------------------- /images/seel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/seel.png -------------------------------------------------------------------------------- /images/staryu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/staryu.png -------------------------------------------------------------------------------- /images/tauros.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/tauros.png -------------------------------------------------------------------------------- /images/vulpix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/vulpix.png -------------------------------------------------------------------------------- /images/weedle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/weedle.png -------------------------------------------------------------------------------- /images/zapdos.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/zapdos.png -------------------------------------------------------------------------------- /images/zubat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/zubat.png -------------------------------------------------------------------------------- /images/alakazam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/alakazam.png -------------------------------------------------------------------------------- /images/arcanine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/arcanine.png -------------------------------------------------------------------------------- /images/articuno.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/articuno.png -------------------------------------------------------------------------------- /images/beedrill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/beedrill.png -------------------------------------------------------------------------------- /images/caterpie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/caterpie.png -------------------------------------------------------------------------------- /images/chansey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/chansey.png -------------------------------------------------------------------------------- /images/clefable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/clefable.png -------------------------------------------------------------------------------- /images/clefairy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/clefairy.png -------------------------------------------------------------------------------- /images/cloyster.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/cloyster.png -------------------------------------------------------------------------------- /images/dewgong.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/dewgong.png -------------------------------------------------------------------------------- /images/diglett.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/diglett.png -------------------------------------------------------------------------------- /images/dratini.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/dratini.png -------------------------------------------------------------------------------- /images/drowzee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/drowzee.png -------------------------------------------------------------------------------- /images/dugtrio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/dugtrio.png -------------------------------------------------------------------------------- /images/flareon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/flareon.png -------------------------------------------------------------------------------- /images/geodude.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/geodude.png -------------------------------------------------------------------------------- /images/goldeen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/goldeen.png -------------------------------------------------------------------------------- /images/golduck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/golduck.png -------------------------------------------------------------------------------- /images/graveler.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/graveler.png -------------------------------------------------------------------------------- /images/gyarados.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/gyarados.png -------------------------------------------------------------------------------- /images/haunter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/haunter.png -------------------------------------------------------------------------------- /images/ivysaur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/ivysaur.png -------------------------------------------------------------------------------- /images/jolteon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/jolteon.png -------------------------------------------------------------------------------- /images/kabutops.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/kabutops.png -------------------------------------------------------------------------------- /images/kadabra.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/kadabra.png -------------------------------------------------------------------------------- /images/kingler.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/kingler.png -------------------------------------------------------------------------------- /images/koffing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/koffing.png -------------------------------------------------------------------------------- /images/machamp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/machamp.png -------------------------------------------------------------------------------- /images/machoke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/machoke.png -------------------------------------------------------------------------------- /images/magikarp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/magikarp.png -------------------------------------------------------------------------------- /images/magneton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/magneton.png -------------------------------------------------------------------------------- /images/marowak.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/marowak.png -------------------------------------------------------------------------------- /images/metapod.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/metapod.png -------------------------------------------------------------------------------- /images/moltres.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/moltres.png -------------------------------------------------------------------------------- /images/mr. mime.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/mr. mime.png -------------------------------------------------------------------------------- /images/nidoking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/nidoking.png -------------------------------------------------------------------------------- /images/nidoran♀.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/nidoran♀.png -------------------------------------------------------------------------------- /images/nidoran♂.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/nidoran♂.png -------------------------------------------------------------------------------- /images/nidorina.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/nidorina.png -------------------------------------------------------------------------------- /images/nidorino.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/nidorino.png -------------------------------------------------------------------------------- /images/omanyte.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/omanyte.png -------------------------------------------------------------------------------- /images/omastar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/omastar.png -------------------------------------------------------------------------------- /images/parasect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/parasect.png -------------------------------------------------------------------------------- /images/persian.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/persian.png -------------------------------------------------------------------------------- /images/pidgeot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/pidgeot.png -------------------------------------------------------------------------------- /images/pikachu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/pikachu.png -------------------------------------------------------------------------------- /images/poliwag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/poliwag.png -------------------------------------------------------------------------------- /images/porygon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/porygon.png -------------------------------------------------------------------------------- /images/primeape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/primeape.png -------------------------------------------------------------------------------- /images/psyduck.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/psyduck.png -------------------------------------------------------------------------------- /images/rapidash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/rapidash.png -------------------------------------------------------------------------------- /images/raticate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/raticate.png -------------------------------------------------------------------------------- /images/rattata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/rattata.png -------------------------------------------------------------------------------- /images/rhyhorn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/rhyhorn.png -------------------------------------------------------------------------------- /images/scyther.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/scyther.png -------------------------------------------------------------------------------- /images/seaking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/seaking.png -------------------------------------------------------------------------------- /images/shellder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/shellder.png -------------------------------------------------------------------------------- /images/slowbro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/slowbro.png -------------------------------------------------------------------------------- /images/slowpoke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/slowpoke.png -------------------------------------------------------------------------------- /images/snorlax.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/snorlax.png -------------------------------------------------------------------------------- /images/spearow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/spearow.png -------------------------------------------------------------------------------- /images/squirtle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/squirtle.png -------------------------------------------------------------------------------- /images/starmie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/starmie.png -------------------------------------------------------------------------------- /images/tangela.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/tangela.png -------------------------------------------------------------------------------- /images/vaporeon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/vaporeon.png -------------------------------------------------------------------------------- /images/venomoth.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/venomoth.png -------------------------------------------------------------------------------- /images/venonat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/venonat.png -------------------------------------------------------------------------------- /images/venusaur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/venusaur.png -------------------------------------------------------------------------------- /images/voltorb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/voltorb.png -------------------------------------------------------------------------------- /images/weezing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/weezing.png -------------------------------------------------------------------------------- /images/aerodactyl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/aerodactyl.png -------------------------------------------------------------------------------- /images/bellsprout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/bellsprout.png -------------------------------------------------------------------------------- /images/blastoise.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/blastoise.png -------------------------------------------------------------------------------- /images/bulbasaur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/bulbasaur.png -------------------------------------------------------------------------------- /images/butterfree.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/butterfree.png -------------------------------------------------------------------------------- /images/charizard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/charizard.png -------------------------------------------------------------------------------- /images/charmander.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/charmander.png -------------------------------------------------------------------------------- /images/charmeleon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/charmeleon.png -------------------------------------------------------------------------------- /images/dragonair.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/dragonair.png -------------------------------------------------------------------------------- /images/dragonite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/dragonite.png -------------------------------------------------------------------------------- /images/electabuzz.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/electabuzz.png -------------------------------------------------------------------------------- /images/electrode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/electrode.png -------------------------------------------------------------------------------- /images/exeggcute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/exeggcute.png -------------------------------------------------------------------------------- /images/exeggutor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/exeggutor.png -------------------------------------------------------------------------------- /images/farfetch'd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/farfetch'd.png -------------------------------------------------------------------------------- /images/growlithe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/growlithe.png -------------------------------------------------------------------------------- /images/hitmonchan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/hitmonchan.png -------------------------------------------------------------------------------- /images/hitmonlee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/hitmonlee.png -------------------------------------------------------------------------------- /images/jigglypuff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/jigglypuff.png -------------------------------------------------------------------------------- /images/kangaskhan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/kangaskhan.png -------------------------------------------------------------------------------- /images/lickitung.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/lickitung.png -------------------------------------------------------------------------------- /images/magnemite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/magnemite.png -------------------------------------------------------------------------------- /images/nidoqueen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/nidoqueen.png -------------------------------------------------------------------------------- /images/ninetales.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/ninetales.png -------------------------------------------------------------------------------- /images/pidgeotto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/pidgeotto.png -------------------------------------------------------------------------------- /images/poliwhirl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/poliwhirl.png -------------------------------------------------------------------------------- /images/poliwrath.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/poliwrath.png -------------------------------------------------------------------------------- /images/sandshrew.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/sandshrew.png -------------------------------------------------------------------------------- /images/sandslash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/sandslash.png -------------------------------------------------------------------------------- /images/tentacool.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/tentacool.png -------------------------------------------------------------------------------- /images/tentacruel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/tentacruel.png -------------------------------------------------------------------------------- /images/victreebel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/victreebel.png -------------------------------------------------------------------------------- /images/vileplume.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/vileplume.png -------------------------------------------------------------------------------- /images/wartortle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/wartortle.png -------------------------------------------------------------------------------- /images/weepinbell.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/weepinbell.png -------------------------------------------------------------------------------- /images/wigglytuff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fraserxu/slack-pokemon-emoji/HEAD/images/wigglytuff.png -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:6.3 2 | 3 | ENV PROJECT_HOME /opt/slack-pokemon-emoji 4 | 5 | ADD . $PROJECT_HOME 6 | 7 | WORKDIR $PROJECT_HOME 8 | 9 | RUN npm install slack-pokemon-emoji -g 10 | 11 | ENTRYPOINT ["slack-pokemon-emoji"] 12 | -------------------------------------------------------------------------------- /run-docker.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | echo "Building Docker image" 6 | docker build -t slack-pokemon-emoji . 7 | echo "Docker image successfully built" 8 | 9 | echo "Running emoji upload" 10 | docker run --rm -it slack-pokemon-emoji "$@" 11 | -------------------------------------------------------------------------------- /cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | const argv = require('minimist')(process.argv.slice(2)) 4 | const upload = require('./uploader') 5 | 6 | const team = argv._[0] || argv.t || argv.team 7 | const cookie = argv._[1] || argv.c || argv.cookie 8 | 9 | if (!team) { 10 | return console.error('Team name is required.') 11 | } 12 | 13 | if (!cookie) { 14 | return console.error('Cookie is required.') 15 | } 16 | 17 | upload(team, cookie) 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | 5 | # Runtime data 6 | pids 7 | *.pid 8 | *.seed 9 | 10 | # Directory for instrumented libs generated by jscoverage/JSCover 11 | lib-cov 12 | 13 | # Coverage directory used by tools like istanbul 14 | coverage 15 | 16 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 17 | .grunt 18 | 19 | # node-waf configuration 20 | .lock-wscript 21 | 22 | # Compiled binary addons (http://nodejs.org/api/addons.html) 23 | build/Release 24 | 25 | # Dependency directory 26 | # https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git 27 | node_modules 28 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "slack-pokemon-emoji", 3 | "version": "1.0.0", 4 | "description": "A tool to upload all the pokemon to slack emoji.", 5 | "main": "uploader.js", 6 | "bin": "./cli.js", 7 | "repository": { 8 | "type": "git", 9 | "url": "https://github.com/fraserxu/slack-pokemon-emoji.git" 10 | }, 11 | "keywords": [ 12 | "pokemon", 13 | "slack", 14 | "emoji" 15 | ], 16 | "bugs": { 17 | "url": "https://github.com/fraserxu/slack-pokemon-emoji/issues" 18 | }, 19 | "homepage": "https://github.com/fraserxu/slack-pokemon-emoji", 20 | "author": "Fraser Xu", 21 | "license": "MIT", 22 | "dependencies": { 23 | "cheerio": "^0.20.0", 24 | "form-data": "^1.0.0-rc4", 25 | "glob": "^7.0.5", 26 | "gm": "^1.22.0", 27 | "hyperquest": "^2.0.0", 28 | "minimist": "^1.2.0", 29 | "through2": "^2.0.1" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /uploader.js: -------------------------------------------------------------------------------- 1 | const hyperquest = require('hyperquest') 2 | const through = require('through2') 3 | const cheerio = require('cheerio') 4 | const FormData = require('form-data') 5 | const fs = require('fs') 6 | const glob = require('glob') 7 | const path = require('path') 8 | 9 | module.exports = function upload (team, cookie) { 10 | const headers = { 11 | 'Cookie': cookie // get cookie name 12 | } 13 | 14 | getCrumb(function (err, crumb) { 15 | glob(__dirname + '/images/*.png', function (err, files) { 16 | if (!err) { 17 | files.forEach(function (file) { 18 | uploadFile(crumb, file) 19 | }) 20 | } 21 | }) 22 | }) 23 | 24 | function getCrumb (cb) { 25 | const request = hyperquest(`https://${team}.slack.com/customize/emoji`, { 26 | headers: headers 27 | }) 28 | request.pipe(through(write, end)) 29 | 30 | var data = '' 31 | function write (buf, enc, cb) { data += buf; cb() } 32 | function end () { 33 | var $ = cheerio.load(data) 34 | try { 35 | var crumb = $('input[name="crumb"]')[0].attribs.value 36 | cb(null, crumb) 37 | } catch (e) { 38 | return console.log('Can not load page properly, please make sure your team name and cookie is correct.') 39 | } 40 | 41 | } 42 | } 43 | 44 | function uploadFile (crumb, file) { 45 | var name = path.parse(file).name 46 | var filename = path.parse(file).base 47 | 48 | var form = new FormData() 49 | form.append('add', 1) 50 | form.append('crumb', crumb) 51 | form.append('name', name) 52 | form.append('mode', 'data') 53 | 54 | form.append('img', fs.createReadStream(file), { 55 | filename: filename, 56 | contentType: 'image/png' 57 | }) 58 | 59 | form.submit({ 60 | protocol: 'https:', 61 | host: `${team}.slack.com`, 62 | path: '/customize/emoji', 63 | headers: headers 64 | }, function (err, res) { 65 | if (err) { 66 | console.log(`Upload file ${file} error: ${err}`) 67 | } else { 68 | console.log(`Done uplaod ${file}`) 69 | } 70 | }) 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | slack-pokemon-emoji 2 | =================== 3 | 4 | A tool to upload all the pokemon to slack emoji. 5 | 6 | ![slack-pokemon-emoji](https://cloud.githubusercontent.com/assets/1183541/16988491/ea919e58-4ed3-11e6-95cd-312fd8f108a9.png) 7 | 8 | ### Installation 9 | 10 | Install Docker: 11 | https://docs.docker.com/engine/installation/ 12 | 13 | or 14 | 15 | Install Package Locally 16 | ```sh 17 | $ npm install slack-pokemon-emoji -g 18 | ``` 19 | 20 | ### Requirement 21 | 22 | * `team` Your team name. 23 | * `cookie` Slack does not have an api to upload emoji, so we have to emulate a browser environment to pass the cookie to our request. You can find the cookie from the Chrome devtools **Networks** tab, and it's under **Header** tab of any request. 24 | 25 | ![cookie](https://cloud.githubusercontent.com/assets/1183541/17016371/3c1e1f46-4f72-11e6-8950-1a4750c0ce55.png) 26 | 27 | ### Usage 28 | 29 | Docker: 30 | ``` 31 | ./run-docker.sh TEAM "COOKIE" 32 | ``` 33 | 34 | Local Install: 35 | ```sh 36 | $ slack-pokemon-emoji TEAM "COOKIE" 37 | # or 38 | $ slack-pokemon-emoji -t TEAM -c "COOKIE" 39 | # or 40 | $ slack-pokemon-emoji team=TEAM cookie=COOKIE 41 | ``` 42 | 43 | ### How it works? 44 | 45 | #### Fetch pokemon images from http://www.pokemon.com/us/pokedex/ 46 | 47 | Do this in Chrome devtools and get all the pokemon indexs 48 | 49 | ```js 50 | /** 51 | * Quick and dirty jQuery script to extract pokemon name and image url 52 | */ 53 | var pokemons = $($0).find('li').toArray().map(function(li) { 54 | return { 55 | imgSrc: $($(li).find('figure')[0]).find('img')[0].src, 56 | name: $($(li).find('.pokemon-info')[0]).find('h5')[0].innerHTML 57 | } 58 | }) 59 | ``` 60 | 61 | #### Download all the images to local and resize them to 128 * 128 62 | 63 | ```sh 64 | $ node index.js 65 | ``` 66 | 67 | Resize all the images and rename it to pokemonname.png 68 | 69 | ```js 70 | pokemons.forEach(function (pokemon) { 71 | var readStream = hyperquest.get(pokemon.imgSrc) 72 | gm(readStream) 73 | .resize('128', '128') 74 | .stream() 75 | .pipe(fs.createWriteStream(`./images/${pokemon.name.toLowerCase()}.png`)) 76 | }) 77 | ``` 78 | 79 | #### Upload all images to slack 80 | 81 | ```sh 82 | $ node uploader.js 83 | ``` 84 | 85 | ### Tools 86 | 87 | * `gm` A nodejs wrapper for imageMagick, used for resizing image 88 | * `hyperquest` A nodejs stream based http request utils 89 | * `cheerio` A nodejs module to parse html text on server side 90 | * `form-data` A nodejs module to build form data and upload to slack 91 | 92 | Slack does not provide a upload emoji api, and this tool is inspired by [slack-emojinator](https://github.com/smashwilson/slack-emojinator). 93 | 94 | Some of the code here use ES6 syntax so you might need nodejs 4.*.* to run the code. 95 | 96 | ### License 97 | MIT 98 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const hyperquest = require('hyperquest') 2 | const fs = require('fs') 3 | const gm = require('gm').subClass({imageMagick: true}) 4 | 5 | /** 6 | * Source from http://www.pokemon.com/us/pokedex/ 7 | */ 8 | const pokemons = [ 9 | { 10 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/001.png", 11 | "name": "Bulbasaur" 12 | }, 13 | { 14 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/002.png", 15 | "name": "Ivysaur" 16 | }, 17 | { 18 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/003.png", 19 | "name": "Venusaur" 20 | }, 21 | { 22 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/004.png", 23 | "name": "Charmander" 24 | }, 25 | { 26 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/005.png", 27 | "name": "Charmeleon" 28 | }, 29 | { 30 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/006.png", 31 | "name": "Charizard" 32 | }, 33 | { 34 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/007.png", 35 | "name": "Squirtle" 36 | }, 37 | { 38 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/008.png", 39 | "name": "Wartortle" 40 | }, 41 | { 42 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/009.png", 43 | "name": "Blastoise" 44 | }, 45 | { 46 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/010.png", 47 | "name": "Caterpie" 48 | }, 49 | { 50 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/011.png", 51 | "name": "Metapod" 52 | }, 53 | { 54 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/012.png", 55 | "name": "Butterfree" 56 | }, 57 | { 58 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/013.png", 59 | "name": "Weedle" 60 | }, 61 | { 62 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/014.png", 63 | "name": "Kakuna" 64 | }, 65 | { 66 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/015.png", 67 | "name": "Beedrill" 68 | }, 69 | { 70 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/016.png", 71 | "name": "Pidgey" 72 | }, 73 | { 74 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/017.png", 75 | "name": "Pidgeotto" 76 | }, 77 | { 78 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/018.png", 79 | "name": "Pidgeot" 80 | }, 81 | { 82 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/019.png", 83 | "name": "Rattata" 84 | }, 85 | { 86 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/020.png", 87 | "name": "Raticate" 88 | }, 89 | { 90 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/021.png", 91 | "name": "Spearow" 92 | }, 93 | { 94 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/022.png", 95 | "name": "Fearow" 96 | }, 97 | { 98 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/023.png", 99 | "name": "Ekans" 100 | }, 101 | { 102 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/024.png", 103 | "name": "Arbok" 104 | }, 105 | { 106 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/025.png", 107 | "name": "Pikachu" 108 | }, 109 | { 110 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/026.png", 111 | "name": "Raichu" 112 | }, 113 | { 114 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/027.png", 115 | "name": "Sandshrew" 116 | }, 117 | { 118 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/028.png", 119 | "name": "Sandslash" 120 | }, 121 | { 122 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/029.png", 123 | "name": "Nidoran♀" 124 | }, 125 | { 126 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/030.png", 127 | "name": "Nidorina" 128 | }, 129 | { 130 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/031.png", 131 | "name": "Nidoqueen" 132 | }, 133 | { 134 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/032.png", 135 | "name": "Nidoran♂" 136 | }, 137 | { 138 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/033.png", 139 | "name": "Nidorino" 140 | }, 141 | { 142 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/034.png", 143 | "name": "Nidoking" 144 | }, 145 | { 146 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/035.png", 147 | "name": "Clefairy" 148 | }, 149 | { 150 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/036.png", 151 | "name": "Clefable" 152 | }, 153 | { 154 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/037.png", 155 | "name": "Vulpix" 156 | }, 157 | { 158 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/038.png", 159 | "name": "Ninetales" 160 | }, 161 | { 162 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/039.png", 163 | "name": "Jigglypuff" 164 | }, 165 | { 166 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/040.png", 167 | "name": "Wigglytuff" 168 | }, 169 | { 170 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/041.png", 171 | "name": "Zubat" 172 | }, 173 | { 174 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/042.png", 175 | "name": "Golbat" 176 | }, 177 | { 178 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/043.png", 179 | "name": "Oddish" 180 | }, 181 | { 182 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/044.png", 183 | "name": "Gloom" 184 | }, 185 | { 186 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/045.png", 187 | "name": "Vileplume" 188 | }, 189 | { 190 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/046.png", 191 | "name": "Paras" 192 | }, 193 | { 194 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/047.png", 195 | "name": "Parasect" 196 | }, 197 | { 198 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/048.png", 199 | "name": "Venonat" 200 | }, 201 | { 202 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/049.png", 203 | "name": "Venomoth" 204 | }, 205 | { 206 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/050.png", 207 | "name": "Diglett" 208 | }, 209 | { 210 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/051.png", 211 | "name": "Dugtrio" 212 | }, 213 | { 214 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/052.png", 215 | "name": "Meowth" 216 | }, 217 | { 218 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/053.png", 219 | "name": "Persian" 220 | }, 221 | { 222 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/054.png", 223 | "name": "Psyduck" 224 | }, 225 | { 226 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/055.png", 227 | "name": "Golduck" 228 | }, 229 | { 230 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/056.png", 231 | "name": "Mankey" 232 | }, 233 | { 234 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/057.png", 235 | "name": "Primeape" 236 | }, 237 | { 238 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/058.png", 239 | "name": "Growlithe" 240 | }, 241 | { 242 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/059.png", 243 | "name": "Arcanine" 244 | }, 245 | { 246 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/060.png", 247 | "name": "Poliwag" 248 | }, 249 | { 250 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/061.png", 251 | "name": "Poliwhirl" 252 | }, 253 | { 254 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/062.png", 255 | "name": "Poliwrath" 256 | }, 257 | { 258 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/063.png", 259 | "name": "Abra" 260 | }, 261 | { 262 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/064.png", 263 | "name": "Kadabra" 264 | }, 265 | { 266 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/065.png", 267 | "name": "Alakazam" 268 | }, 269 | { 270 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/066.png", 271 | "name": "Machop" 272 | }, 273 | { 274 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/067.png", 275 | "name": "Machoke" 276 | }, 277 | { 278 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/068.png", 279 | "name": "Machamp" 280 | }, 281 | { 282 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/069.png", 283 | "name": "Bellsprout" 284 | }, 285 | { 286 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/070.png", 287 | "name": "Weepinbell" 288 | }, 289 | { 290 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/071.png", 291 | "name": "Victreebel" 292 | }, 293 | { 294 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/072.png", 295 | "name": "Tentacool" 296 | }, 297 | { 298 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/073.png", 299 | "name": "Tentacruel" 300 | }, 301 | { 302 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/074.png", 303 | "name": "Geodude" 304 | }, 305 | { 306 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/075.png", 307 | "name": "Graveler" 308 | }, 309 | { 310 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/076.png", 311 | "name": "Golem" 312 | }, 313 | { 314 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/077.png", 315 | "name": "Ponyta" 316 | }, 317 | { 318 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/078.png", 319 | "name": "Rapidash" 320 | }, 321 | { 322 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/079.png", 323 | "name": "Slowpoke" 324 | }, 325 | { 326 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/080.png", 327 | "name": "Slowbro" 328 | }, 329 | { 330 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/081.png", 331 | "name": "Magnemite" 332 | }, 333 | { 334 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/082.png", 335 | "name": "Magneton" 336 | }, 337 | { 338 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/083.png", 339 | "name": "Farfetch'd" 340 | }, 341 | { 342 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/084.png", 343 | "name": "Doduo" 344 | }, 345 | { 346 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/085.png", 347 | "name": "Dodrio" 348 | }, 349 | { 350 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/086.png", 351 | "name": "Seel" 352 | }, 353 | { 354 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/087.png", 355 | "name": "Dewgong" 356 | }, 357 | { 358 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/088.png", 359 | "name": "Grimer" 360 | }, 361 | { 362 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/089.png", 363 | "name": "Muk" 364 | }, 365 | { 366 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/090.png", 367 | "name": "Shellder" 368 | }, 369 | { 370 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/091.png", 371 | "name": "Cloyster" 372 | }, 373 | { 374 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/092.png", 375 | "name": "Gastly" 376 | }, 377 | { 378 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/093.png", 379 | "name": "Haunter" 380 | }, 381 | { 382 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/094.png", 383 | "name": "Gengar" 384 | }, 385 | { 386 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/095.png", 387 | "name": "Onix" 388 | }, 389 | { 390 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/096.png", 391 | "name": "Drowzee" 392 | }, 393 | { 394 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/097.png", 395 | "name": "Hypno" 396 | }, 397 | { 398 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/098.png", 399 | "name": "Krabby" 400 | }, 401 | { 402 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/099.png", 403 | "name": "Kingler" 404 | }, 405 | { 406 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/100.png", 407 | "name": "Voltorb" 408 | }, 409 | { 410 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/101.png", 411 | "name": "Electrode" 412 | }, 413 | { 414 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/102.png", 415 | "name": "Exeggcute" 416 | }, 417 | { 418 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/103.png", 419 | "name": "Exeggutor" 420 | }, 421 | { 422 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/104.png", 423 | "name": "Cubone" 424 | }, 425 | { 426 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/105.png", 427 | "name": "Marowak" 428 | }, 429 | { 430 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/106.png", 431 | "name": "Hitmonlee" 432 | }, 433 | { 434 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/107.png", 435 | "name": "Hitmonchan" 436 | }, 437 | { 438 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/108.png", 439 | "name": "Lickitung" 440 | }, 441 | { 442 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/109.png", 443 | "name": "Koffing" 444 | }, 445 | { 446 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/110.png", 447 | "name": "Weezing" 448 | }, 449 | { 450 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/111.png", 451 | "name": "Rhyhorn" 452 | }, 453 | { 454 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/112.png", 455 | "name": "Rhydon" 456 | }, 457 | { 458 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/113.png", 459 | "name": "Chansey" 460 | }, 461 | { 462 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/114.png", 463 | "name": "Tangela" 464 | }, 465 | { 466 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/115.png", 467 | "name": "Kangaskhan" 468 | }, 469 | { 470 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/116.png", 471 | "name": "Horsea" 472 | }, 473 | { 474 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/117.png", 475 | "name": "Seadra" 476 | }, 477 | { 478 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/118.png", 479 | "name": "Goldeen" 480 | }, 481 | { 482 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/119.png", 483 | "name": "Seaking" 484 | }, 485 | { 486 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/120.png", 487 | "name": "Staryu" 488 | }, 489 | { 490 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/121.png", 491 | "name": "Starmie" 492 | }, 493 | { 494 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/122.png", 495 | "name": "Mr. Mime" 496 | }, 497 | { 498 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/123.png", 499 | "name": "Scyther" 500 | }, 501 | { 502 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/124.png", 503 | "name": "Jynx" 504 | }, 505 | { 506 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/125.png", 507 | "name": "Electabuzz" 508 | }, 509 | { 510 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/126.png", 511 | "name": "Magmar" 512 | }, 513 | { 514 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/127.png", 515 | "name": "Pinsir" 516 | }, 517 | { 518 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/128.png", 519 | "name": "Tauros" 520 | }, 521 | { 522 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/129.png", 523 | "name": "Magikarp" 524 | }, 525 | { 526 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/130.png", 527 | "name": "Gyarados" 528 | }, 529 | { 530 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/131.png", 531 | "name": "Lapras" 532 | }, 533 | { 534 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/132.png", 535 | "name": "Ditto" 536 | }, 537 | { 538 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/133.png", 539 | "name": "Eevee" 540 | }, 541 | { 542 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/134.png", 543 | "name": "Vaporeon" 544 | }, 545 | { 546 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/135.png", 547 | "name": "Jolteon" 548 | }, 549 | { 550 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/136.png", 551 | "name": "Flareon" 552 | }, 553 | { 554 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/137.png", 555 | "name": "Porygon" 556 | }, 557 | { 558 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/138.png", 559 | "name": "Omanyte" 560 | }, 561 | { 562 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/139.png", 563 | "name": "Omastar" 564 | }, 565 | { 566 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/140.png", 567 | "name": "Kabuto" 568 | }, 569 | { 570 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/141.png", 571 | "name": "Kabutops" 572 | }, 573 | { 574 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/142.png", 575 | "name": "Aerodactyl" 576 | }, 577 | { 578 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/143.png", 579 | "name": "Snorlax" 580 | }, 581 | { 582 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/144.png", 583 | "name": "Articuno" 584 | }, 585 | { 586 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/145.png", 587 | "name": "Zapdos" 588 | }, 589 | { 590 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/146.png", 591 | "name": "Moltres" 592 | }, 593 | { 594 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/147.png", 595 | "name": "Dratini" 596 | }, 597 | { 598 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/148.png", 599 | "name": "Dragonair" 600 | }, 601 | { 602 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/149.png", 603 | "name": "Dragonite" 604 | }, 605 | { 606 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/150.png", 607 | "name": "Mewtwo" 608 | }, 609 | { 610 | "imgSrc": "http://assets.pokemon.com/assets/cms2/img/pokedex/detail/151.png", 611 | "name": "Mew" 612 | } 613 | ] 614 | 615 | pokemons.forEach(function (pokemon) { 616 | var readStream = hyperquest.get(pokemon.imgSrc) 617 | gm(readStream) 618 | .resize('128', '128') 619 | .stream() 620 | .pipe(fs.createWriteStream(`./images/${pokemon.name.toLowerCase()}.png`)) 621 | }) 622 | --------------------------------------------------------------------------------