Miniature/Development: Difference between revisions

From Maemo Wiki
Jump to navigationJump to search
imported>qgil
imported>qgil
Line 44: Line 44:
   |priority=High
   |priority=High
   |status=unconfirmed,new,assigned,needinfo,reopened,resolved,verified
   |status=unconfirmed,new,assigned,needinfo,reopened,resolved,verified
   |sort=priority,severity,priority,status,id
   |sort=status,severity,id
}}
}}



Revision as of 19:27, 2 September 2011

Miniature - Play chess everywhere you go!
.: Home : Releases : Wish list : Development : Coding style :.
The Berlin Defence, as seen in Miniature

The concept

Miniature is a chess board that is always with you, ready to let you play and learn wherever you go.

  • The main use case is playing online against other players at http://www.freechess.org/ (FICS)
  • Now imagine that you can also chat with the other player.
  • Play P2P games against other players next to you or remotely with your Contacts.
  • Learning is important: watch games live, review stored games and also process offline the lessons offered at FICS.
  • And not only regular chess. Think also on Suicide, Crazyhouse...

Miniature is a Qt application with a C/C++ backend and a QML UI. The architecture is modular, thinking on the addition of different servers and types of interaction.

We are targeting our development on MeeGo Harmattan and the Nokia N9 but we welcome maintainers for other ports e.g. MeeGo upstream, Symbian, Android-Necessitas, Qt powered desktops...

Project news

  • 2011-08-29: first patch from Uwe Kaminski aka jukey committed to the Miniature project. Thank you!
  • 2011-08-28: "New seek" feature implemented, mikhas and jukey play the first Miniature vs Miniature game from their devices.
  • 2011-08-26: First real & unstable FICS games played. First it was mikhas against himhelf, then mikhas-qgil.  :)
  • 2011-08-25: How quick I got started with Qt Quick - blog post from Quim Gil featuring Miniature.
  • 2011-08-25: Miniature 0.3 runs in MeeGo 1.2 CE on a Nokia N900 (with some bugs).
  • 2011-08-23: Miniature 0.3 Berlin Defence released.
  • 2011-08-15: New Miniature UX concepts integrated to the master branch - the new engine gets a UI (screenshot).
  • 2011-08-13: Miniature can be developed using Qt Creator (instructions).
  • 2011-08-01: Miniature 0.2.1 released! The new Encore engine and the new QML UI, together for the first time. The game can do real seeks but still no real games.
  • 2011-07-27: New UI targetting MeeGo Harmattan developed in parallel - source & packages for Nokia N9/N950.
  • 2011-07-18: engine refactored around Encore, a GNUChess wrapper. This is the beginning of a rewrite.
  • 2011-07-06: request to port to Meego : http://forum.meego.com/showthread.php?p=25031

The Miniature project was born as a proposal sent to the Maemo community on 2009-10-31. Check the archive if you want to dig in the past.

Project status

Tasks for the next release get a HIGH priority. All the rest falls in the Backlog.

Miniature 0.4 release

See Miniature/0.4_De_Lucena

{{#bugzilla:

 |columns=id,summary,severity,priority,status
 |product=Miniature
 |priority=High
 |status=unconfirmed,new,assigned,needinfo,reopened,resolved,verified
 |sort=status,severity,id

}}

Backlog

{{#bugzilla:

 |columns=id,summary,severity,priority,status
 |product=Miniature
 |priority=Medium,Low,Unspecified
 |status=unconfirmed,new,assigned,needinfo,reopened
 |sort=status,id

}}

Easyfix (suited for newcomers)

{{#bugzilla:

 |columns=id,summary,severity,priority,status
 |product=Miniature
 |keywords=easyfix
 |status=unconfirmed,new,assigned,reopened
 |sort=priority,severity,priority,status,id

}}

Looking for more? There is more at the Wishlist.

Get involved

Contributions are welcome! This is how you can get started:

  • Download or build Miniature, and tell us what you think
  • Spread the Miniature love among your Chess friendly contacts
  • Test the game and check/file bugs
    • Follow all of the project's bug by entering general@miniature.garage.bugs into the Add users to my watch list (comma separated list) input field
  • Fix an open bug in the Backlog, for instance an easyfix.
  • Help planning and implementing new features
  • Help porting Miniature to more platforms

Localization

The localization work hasn't started yet and as a matter of fact our string are still not L10n ready. It's in our ToDo list, do you want to help?

SDK instructions

Currently you can build Miniature with the latest Qt SDK (including the Harmattan target) or the Harmattan Platform SDK. The Miniature sources and commit logs are available at https://gitorious.org/miniature/ . Both SDKs come with an emulator for deploying your app. All the better if you have a Nokia N950 or N9 to test on device.

Instructions to set you Miniature development environment:

  • Qt SDK
  • Harmattan Platform SDK instructions are currently missing. fwiw the Maemo Platform SDK might help since both are based on Scratchbox...

Set up a personal clone repository of Minature

If you plan to get involved deeper into development it's a good idea to create a personal clone of the Minature git source repository. This allows you to do merge requests for patches you created in your clone repository. The cloned repository should be connected to Minature as upstream to make it easy to fetch changes from there. Step-by-step description:

  • Create an gitorious account or log in and make sure to have an SSH-Key in place
  • Clone repository
  • To allow pushing to your clone repository Follow the instructions you will get if you click onto the little green question mark next to the clone URL.
  • enable upstream: Open a terminal and switch into the local folder of your clone project and enter:
git remote add upstream git://gitorious.org/miniature/miniature.git
  • fetch upstream data:
git fetch upstream master
  • Create merge requests: You can use the "Request merge" button in your gitorious clone project website.

Send us patches!

Found a bug? Spotted code smell? We glady accept patches! There are three ways to send patches to us:

  • By reporting the bug, and hopefully attaching a patch that solves the stated problem (but just reporting bugs is also appreciated).
  • By using the chess-devel mailing list: A ML-friendly patch can be created with "git format-patch HEAD~n", where n specifices how many commits (starting from HEAD) should be converted to patches;
  • By issuing a merge request: Send us a link to your public git repo (including branch/revision), or use the merge request feature from http://gitorious.org.

Architecture

See the Miniature architecture wiki page. (outdated)

Contributors

Maintainers:

Gave a big hand:

Special thanks: