A chess viewer written using Ember.js
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
css
js
README.md
index.html
presentation.js

README.md

Ember-Chess

Ember-Chess is a chess viewer written using Ember.js (ember on github).

See a classic game in action here, and a not-so-classic game here.

Purpose

Ember-Chess was built as part of a presentation which was intended to provide a fun, clear way to present a crash course on Ember.js.

  • The presentation can be found in presentation.js. Some of it may be a bit vague in the absence of the talky parts, but it should still do a decent job of exploring the app while pointing to some of the features of Ember and how they work.

  • The code corresponding directly to the original presentation can be found at the presentation-v1 tag.

Todos

  • More controls ('begin', 'end', 'reset', etc.) would clearly be nice

  • Provide a way to swap between some predefined games

  • Related to resetting and loading different games, it would be nice to define a better interface for the app than "Chess.gameController.set('gameDefinition', Chess.game);"

  • There's a missed opportunity here to show off one of the huge benefits of using Ember to bring structure to this app: there should be tests demonstrating how testable the app is

  • A .pgn -> Chess.Game parser would be totally badass. We could even have a text input so that people can paste in any game they want, and the app plays it through

  • A completely different "view" would be a compelling demonstration of the app architecture. Should be easy to instantiate a gameController (but no Em.Views), and step through it console.logging each move on a text 'board')

  • The unicode pieces are fun, but it'd be nice to have some slick images instead. In fact, it would be sweet if someone with non-trivial design savvy gave the whole thing a coat of paint...

  • Provide a mobile-friendly view

  • Super-ambitious todo: it would be neat to make a version of this which is actually playable, ideally over the network with a friend. It could potentially do fun stuff like 'record' the game as you play for later playback.

Browser Compatibility

  • Runs in all the usual suspects (even IE6!... though the IE6 I tested with doesn't seem to recognize the unicode chess chars)
  • Works on Android, except the game piece font size is jacked
  • Haven't tried it on iOS yet...