The client for Pokémon Showdown
Go to file
Guangcong Luo 0e5b3aa84c Stop reporting failed assertions
We had a great run, but honestly I don't have anything particularly
interesting to do with this data, so I'm turning it off now.
2018-10-28 14:54:12 -04:00
build-tools Fix errors caught by LGTM 2018-10-27 04:32:11 -05:00
config Fix build tools 2018-05-17 11:52:32 -05:00
data TypeScript data/graphics.js 2018-05-18 17:10:58 -05:00
desktop Shrink assets 2016-02-02 19:44:24 -05:00
fx Update move animations 2018-04-01 09:11:28 +01:00
graphics-src Update icons 2016-04-08 05:25:25 -07:00
js Stop reporting failed assertions 2018-10-28 14:54:12 -04:00
lib Fix some bugs caught by LGTM 2018-09-05 16:48:27 -05:00
src Suppress LGTM warnings 2018-10-28 14:54:12 -04:00
style Fix Play/Resume button location 2018-06-11 03:24:32 -07:00
swf Update soundManager 2014-01-12 01:26:57 -06:00
test Add mocha tests to npm test 2018-10-16 03:31:27 -05:00
.babelrc Add Preact dependency 2018-10-16 14:53:27 -05:00
.editorconfig Editorconfig: Increase indent size to 3 spaces (#1043) 2017-11-05 16:42:36 -08:00
.eslintignore Add mocha tests to npm test 2018-10-16 03:31:27 -05:00
.eslintrc.js Fix some bugs caught by LGTM 2018-09-05 16:48:27 -05:00
.gitignore Support headless client Battle (#1151) 2018-10-16 02:48:59 -05:00
.htaccess Update replay auto-redirect 2018-05-19 19:16:01 -04:00
.npmrc Disable package-lock.json 2018-05-14 17:14:27 -05:00
.travis.yml Bump Node version requirement to 10 2018-10-16 03:52:16 -05:00
action.php Move session library inside repository 2016-10-20 13:16:06 -04:00
ads.txt Add ads.txt 2017-11-14 19:26:16 -05:00
apple-touch-icon.png Shrink assets 2016-02-02 19:44:24 -05:00
build Bump Node version requirement to 10 2018-10-16 03:52:16 -05:00
cache.manifest Add homescreen app manifest for Android Chrome 2017-10-29 21:16:05 -04:00
composer.json Support Google login (two-factor auth) (#999) 2017-09-13 16:20:38 -04:00
composer.lock Support Google login (two-factor auth) (#999) 2017-09-13 16:20:38 -04:00
CONTRIBUTING.md Update CONTRIBUTING.md for new polyfills 2018-10-14 22:05:10 -05:00
crossdomain.php Improve HTTPS support for side servers 2017-11-21 07:50:32 -05:00
crossprotocol.html Fix cross-origin postMessage usage in Chrome Canary 2016-03-19 00:22:37 -05:00
customcss.php Shorten customcss timeout time 2017-06-21 23:13:16 -04:00
favicon-16.png Shrink assets 2016-02-02 19:44:24 -05:00
favicon-32.png Update icons 2016-04-08 05:25:25 -07:00
favicon-48.png Update icons 2016-04-08 05:25:25 -07:00
favicon-128.png Update icons 2016-04-08 05:25:25 -07:00
favicon-192.png Add 192x192 icon 2017-11-21 07:50:32 -05:00
favicon-256.png Shrink assets 2016-02-02 19:44:24 -05:00
favicon-notify.ico Update icons 2016-04-08 05:25:25 -07:00
favicon.ico Compress favicon.ico 2016-01-02 16:14:18 +01:00
index.template.html Remove jQuery-JSON dependency 2018-10-14 22:07:55 -05:00
ladder.php Remove COIL 2018-02-16 04:55:01 -05:00
LICENSE Create LICENSE 2017-03-08 12:29:33 -06:00
manifest.json Add 192x192 icon 2017-11-21 07:50:32 -05:00
news-embed.php iframe for news page 2013-09-20 16:48:31 -05:00
package.json Add TypeScript to npm test 2018-10-16 21:45:18 -05:00
pokemonshowdown.png Shrink assets 2016-02-02 19:44:24 -05:00
pokemonshowdown.psd New logo 2013-04-27 01:51:38 -07:00
pokemonshowdownbeta.png Shrink assets 2016-02-02 19:44:24 -05:00
pokemonshowdownbeta@2x.png Implement Retina logo 2016-04-02 03:13:09 -04:00
README.md Bump Node version requirement to 10 2018-10-16 03:52:16 -05:00
recoverteams.html Default to HTTPS 2017-11-21 07:50:32 -05:00
robots.txt Stop banning search indexers 2016-02-22 15:24:26 -05:00
showdown.crx Populate with current state of client 2013-01-23 16:39:14 -08:00
showdown.webapp Default to HTTPS 2017-11-21 07:50:32 -05:00
testclient.html Don't build graphics.js by default 2018-10-16 03:26:51 -05:00
tsconfig.json Add Preact dependency 2018-10-16 14:53:27 -05:00

Pokémon Showdown Client

Navigation: Website | Server repository | Client repository | Dex repository

Introduction

This is a repository for most of the client code for Pokémon Showdown.

This is what runs play.pokemonshowdown.com.

WARNING: You probably want the Pokémon Showdown server, if you're setting up a server.

Testing

Client testing now requires a build step! Install the latest Node.js (we require v10 or later), and run node build (on Windows) or ./build (on other OSes) to build.

You can make and test client changes simply by building after each change, and opening testclient.html. This will allow you to test changes to the client without setting up your own login server.

You can connect to an arbitrary server by navigating to testclient.html?~~host:port. For example, to connect to a server running locally on port 8000, you can navigate to testclient.html?~~localhost:8000.

The following things will fail in testclient.html:

  • Registering
  • Changing name to a registered name other than the one you are currently logged in with (however, changing to an unregistered name will work, and you can even change back to your original registered name afterward)

Everything else can be tested, though.

Warning

This repository is not "batteries included". It does NOT include instructions to run a full Pokémon Showdown login server, and we will not provide them. Please do not ask for help on this; you will be turned away.

If you make a mistake hosting a login server, your users' passwords can get stolen, so we do not want anyone to host a login server unless they can figure out how to do it without help.

It also doesn't include several resource files (namely, the /audio/ and /sprites/ directories) for size reasons.

On the other hand, as long as you don't want to run your own login server, this repository contains everything you need to test changes to the client; just see the "Testing" section above.

License

Pokémon Showdown's client is distributed under the terms of the AGPLv3.

WARNING: This is NOT the same license as Pokémon Showdown's server.