A web implementation of a chess database program like SCID.
--recursive
flagcomposer install
in your projects root directoryphp artisan key:generate
in your project rootphp artisan migrate:install
php artisan migrate
in your project rootnpm install
in your project rootnpm run jspm install
to install all required javascript librariesnpm run bower install
to install the needed Polymer elementsnpm run gulp
to build everythingWARNING: Since this projects is in an extremely early stage of development, there will often be changes which require you to set up additional database tables or change anything else. If you commit such a change, please also leave a notice here where you explain, what other people have to do to perform the same changes on their machines. You should also put some kind of note into your commit message.
The .gitignore file tells git to ignore everything inside test/. However this is NOT were unit tests are supposed to be placed. Use the tests/ directory for that.
Modes: A mode is a set of options which determine e.g. which windows are shown, whether the next move and other information is hidden (useful for tactics/Guess the Move) and even which database is opened. This can be very useful if used effectively. For example you can create a mode for opening preparation, where the tree view is shown and your preferred database for this task is opened. Or you can create one where engine, annotation window and the database with your own games are opened for going over the games you played recently. There will be some default modes using the example databases for the different situations but of course you can delete/modify them and make your one. You can switch between different modes very swiftly using the mode navigation bar on the right side.
Databases: You probably know a database as a collection of chess games. But in WebChess that's only one of several possible types of databases. A database can also be a tactics database, containing tactic exercises (basically they're also just PGN files with an custom FEN as starting position, but a tactics database can contain additional attributes such as difficulty or whether or not you have solved an exercise correctly already). Another possibility is a repertoire database, which takes care of transpositions automatically. Another advantage of these different types of databases is, that WebChess will automatically open specific windows, depending on which type of database you just opened (of course this behaviour can be modified or turned off entirely). Let's say for example you just opened a tactics database. WebChess will automatically start the tactics trainer with that particular database.