The client for Pokémon Showdown
Go to file
Guangcong Luo 7fa72c1d20 Convert teambuilder from utilichart.js to search.js
The teambuilder is now running on search.js! Not all new features I'd
like to be in are in, but we've now reached feature parity, and most
of the bugs I found during testing have been fixed.

New in search.js is on-demand DOM loading, which basically means
much faster performance because instead of trying to load every single
row of e.g. the pokemon list at once, we just load the part that's
visible, and load the rest only when you scroll it into view.

Also new in search.js is a dexsearch-like feature, replacing the old
details-search system. The new filter system is simpler and more powerful
and has the same API as /dexsearch, although not all the more advanced
dexsearch features are supported.

On-demand DOM loading makes teambuilder loading pretty much completely
instantaneous. There are other small differences in how selection of
pokemon/items/abilities/moves works, but it should overall make more
sense.
2015-12-22 00:06:27 -06:00
data New Close Combat animation 2015-12-09 11:46:09 +00:00
desktop Update desktop client Windows installer 2015-07-05 15:40:44 -05:00
fx Run optipng on fx/ 2015-12-14 07:20:04 +01:00
githooks Convert teambuilder from utilichart.js to search.js 2015-12-22 00:06:27 -06:00
graphics-src Remove old client background files 2015-12-12 04:05:03 -06:00
js Convert teambuilder from utilichart.js to search.js 2015-12-22 00:06:27 -06:00
lib More consistent CORS support 2015-11-26 03:53:56 -05:00
style Convert teambuilder from utilichart.js to search.js 2015-12-22 00:06:27 -06:00
swf Update soundManager 2014-01-12 01:26:57 -06:00
.eslintrc.js Convert teambuilder from utilichart.js to search.js 2015-12-22 00:06:27 -06:00
.gitignore Add githooks/build-indexes 2015-12-21 20:09:55 -06:00
.htaccess Add githooks/build-indexes 2015-12-21 20:09:55 -06:00
.travis.yml Implement basic linting 2015-12-03 03:36:01 -05:00
action.php Fix minor error when Referer header not sent 2015-11-05 03:21:26 -05:00
apple-touch-icon.png New icon for iOS 2013-09-02 22:07:23 -05:00
cache.manifest Populate with current state of client 2013-01-23 16:39:14 -08:00
crossdomain.php Fix HTTPS support in IE11 2015-12-16 01:25:07 -05:00
crossprotocol.html Fix HTTPS support in IE11 2015-12-16 01:25:07 -05:00
customcss.php Save some more bandwidth 2015-07-22 18:14:21 -04:00
favicon-16.png Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon-32.png Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon-48.png Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon-128.png Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon-256.png New 256x256 icon 2013-11-09 00:18:38 -06:00
favicon-notify.gif Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon-notify.ico Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon-notify2.ico Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon.gif Populate with current state of client 2013-01-23 16:39:14 -08:00
favicon.ico Update favicon 2013-09-02 22:07:32 -05:00
index.template.html Convert teambuilder from utilichart.js to search.js 2015-12-22 00:06:27 -06:00
ladder.php Ladder refactor 2015-11-25 17:36:28 -05:00
news-embed.php iframe for news page 2013-09-20 16:48:31 -05:00
package.json Add githooks/build-indexes 2015-12-21 20:09:55 -06:00
pokedex.php Update jQuery to 2.1.4 2015-06-28 00:50:16 -04:00
pokemonshowdown.png New logo 2013-04-27 01:51:38 -07:00
pokemonshowdown.psd New logo 2013-04-27 01:51:38 -07:00
pokemonshowdownbeta.png New logo 2013-04-27 01:51:38 -07:00
README.md README: Improve links and intro 2014-06-19 01:41:27 -05:00
robots.txt Embed news into HTML for faster loading 2013-09-20 16:48:31 -05:00
showdown.crx Populate with current state of client 2013-01-23 16:39:14 -08:00
showdown.webapp Move Firefox webapp manifest author URL to pokemonshowdown.com 2013-09-08 21:18:15 -05:00
testclient.html Convert teambuilder from utilichart.js to search.js 2015-12-22 00:06:27 -06:00

Pokémon Showdown Client

Navigation: Website | Server repository | Client 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

You can make and test client changes simply by 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 everything necessary to run a full Pokémon Showdown client.

In particular, it doesn't include a login/authentication server, nor does it include the database abstraction library used by the ladder library (although it's similar enough to mysqli that you can use that with minimal changes).

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

In other words, this repository is incomplete and NOT intended for people who wish to serve their own Pokémon Showdown client (you can, but it'll require you to rewrite some things). Rather, it's intended for people who wish to contribute and submit pull requests to Pokémon Showdown's client.

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.