Giter Site home page Giter Site logo

lichess-org / flutter-chessground Goto Github PK

View Code? Open in Web Editor NEW
35.0 10.0 21.0 39.23 MB

Chessboard package for flutter

License: GNU General Public License v3.0

Dart 98.37% Kotlin 0.07% Swift 0.21% Objective-C 0.02% Ruby 0.69% Shell 0.65%
chessboard dart flutter lichess

flutter-chessground's People

Contributors

bclehmann avatar csdodd avatar ebraminio avatar eeqk avatar nav-28 avatar schlawg avatar tedzards509 avatar tiagoamaro avatar veloce avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

flutter-chessground's Issues

Premove cancel behavior

Right now the only way a premove can be cancelled is by tapping the piece that has been premoved twice. On the website, premoves are cancelled on clicking anywhere on the board.
I think this is a reasonable approach and should be mirrored in this package.

Are there any screenshots?

I'd like to create some screen designs in Figma. Are there any screenshots about what this library is capable of?

Small pieces on large screens

This occurs on my 1440p Desktop screen. It appears to be due to the pieces resolution being too small. I can't test if this also occurs on high resolution phone screens, but if so, it should probably be fixed.

image
image

Promotion selector is not shown.

When the movement of the chessboard is using playunchecked() and a pawn arrived to the other side the promotion selector is now shown and the pawn stays stuck there forever.

Support 2 players sitting opposite to each other

To support this scenario I think two features should be implemented:

  • the black pieces should be display rotated by 180 degrees
  • the board coordinates should be displayed twice: For white and for black (once again rotated by 180 degrees)

Embedded Shape Drawing Support

You wanted the users to be able to draw shapes by touching with one finger and moving the other. This is not possible using a gesture detector as far as I could tell, so a custom solution using listeners to touch events is necessary one way or another. Implementing this without Riverpod seems tedious, so I think the optimal solution would be to refactor it using callback functions provided by the app using flutter-chessground while providing a "default" GestureDetector to slot in which doesn't allow for drawing shapes natively.

When using Riverpod or at least callbacks, it is also possible to differentiate events by input device type, such as a stylus. This could allow for the users to draw shapes with a stylus while playing normally with fingers.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.