Miniature/Development

Contents

Intro

Miniature is based on the official Qt 4.6 for Maemo and its Graphics View framework. Most of our work focuses on developing a UI layer optimized for mobile touch devices. When it comes to the backend we want to recycle as much as possible from existing chess engines.

The development is guided by the roadmap and is organized by phases bringing new features to our users. The organization of the roadmap is based on a pragmatical implementation of the Miniature concept taking into account features missing in Maemo, existing chess projects and the requests from current and potential users.

Project status

Development channels

Roadmap

(Draft, sorted by priority.)

Items with "?" are to be decided upon once we focus the discussion on them. These items might be moved to later phases of development, or removed from the roadmap altogether.

  1. Play games online
    1. Chess game basics, demonstrated off-line.
    2. Online chess basics, targeting http://www.freechess.org/ first
    3. Online chess advanced
  2. Chat with your opponent
    1. Landscape support.
    2. Chatting.
  3. Customization
    1. Download and select different boards and pieces.
    2. Download and select different engines.
  4. Methods of connectivity to play against human
    1. Bluetooth.
    2. WLAN.
    3. GPRS.
  5. Learn chess lessons with moves + text
    1. Positions can be set manually.
  6. Play local tournaments e.g. via Telepathy Tubes
  7. Play against computer
    1. Basic need covered by pre-installed Chess app.
    2. Default engine selection.
  8. Chess variants
    1. Antichess
    2. Chess960
  9. Display games by you or others, live or stored
    1. Low priority: Chessmonk is concentrating on this for Maemo 5 => not that urgent for Miniature)
    2. History of an opening.
    3. Take a picture of a printed game, process the notations with OCR and display it.
    4. Display several games at a time.
    5. Watch game via webcam stream

Proposals

Add your proposals here. Remember to sign them so we know where do they come from. Just explain the brief concept. If you have further explanations post them somewhere and link from here. Thank you!

  1. Chess clock only function: It would be great to use the N900 as a chess clock only if there is a real board and a "real" opponent is available. The functionality will be in the apllication so a nice UI for this function is all what is needed.--jukey 21:57, 9 November 2009 (UTC)
  2. Possibility to play a game human vs. human offline. In this case the board should flip 180° between two moves.--jukey 21:57, 9 November 2009 (UTC)

Architecture

See the Miniature architecture wiki page.

Get involved

New contributors are welcome! You can help testing and bugfixing new releases focusing on the current phase or you can pick one item more distant in the roadmap and go ahead with it. No matter what you do we recommend you to stay on focus.

See the instructions to setup your Miniature development environment. Also, do not forget to install the more hildonized Qt4 for Maemo5 package from extras-devel! Thanks, qgil =)

References

  • Crafty is a free, open-source computer chess program.
  • EBoard and Crafty for the N810/N800/N770 - OS2007 Downloads page.
  • Knights aimed to be the ultimate chess resource for the K Desktop Environment... years ago.
  • pacaq is a chess game visualizing and analysis tool done with the Maemo 4.1 Qt4 port - Talk thread.
    • From all programs on this list, this is the only one were reading the code is worth your time.
  • SCID, a chess database application for Windows, Linux and Mac OS operating systems.
  • Xboard is a graphical user interface for chess in all its major forms.
  • freechess.org Website of the Free Intrnet Chess Server (FICS)