Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Chess Bundle

Chess Bundle Laravel Package

p-chess/chess-bundle

A Symfony bundle for chess applications, providing integration with the p-chess library for board state, legal move validation, FEN/PGN handling, and game management. Add chess logic to your Symfony services and controllers without building the rules engine from scratch.

View on GitHub
Deep Wiki
Context7

p-chess/chess-bundle brings reliable chess game logic to PHP applications. It offers a clean API for representing boards, validating moves, and tracking game state—ideal for web apps, APIs, and chess-related tools.

  • Board & piece management for setting up and updating positions
  • Move validation to enforce legal chess moves
  • Game-state detection for check, checkmate, and stalemate
  • Lightweight integration into existing PHP projects
Frequently asked questions about Chess Bundle
Is p-chess/chess-bundle compatible with Laravel?
p-chess/chess-bundle is a Symfony bundle, not a Laravel package: there is no Laravel service provider, facade, or publishable config. The reusable part is the framework-agnostic p-chess/chess rules engine, which you can require directly in Laravel. For a Laravel-first codebase, consume the engine and keep board markup in your own Blade components.
How do I install p-chess/chess-bundle?
In Symfony, install with composer require p-chess/chess-bundle and register the bundle in config/bundles.php; add Twig if you want the bundled board templates. In Laravel, install the underlying p-chess/chess engine instead, since the Symfony bundle layer will not auto-wire. Always inspect the package composer.json for the actual PHP and Symfony constraints before pinning.
Which PHP and Symfony versions does p-chess/chess-bundle support?
The v1.5.0 release notes do not state a PHP or Symfony floor change, and the minor version bump implies the 1.x public surface is intact. Check composer.json for the real PHP and Symfony constraints rather than relying on the changelog. Because a Laravel integration is engine-only, the bundle's Twig and Symfony constraints are largely irrelevant to you.
Does p-chess/chess-bundle support FEN and PGN parsing?
Yes, the underlying p-chess/chess engine provides FEN and PGN parsing along with board and piece representation. That makes it suitable for PGN import, position round-trips, analysis tools, and puzzle setup. In Laravel, call the engine directly from a service class rather than going through the bundle.
Can p-chess/chess-bundle detect check, checkmate, and stalemate?
Yes, the engine includes legal move generation plus check, checkmate, and stalemate detection. You can use it to validate user moves, enforce rules in a game loop, or drive puzzle logic. Wrap those calls behind a ChessEngine interface so your controllers and jobs stay framework-agnostic.
What changed in p-chess/chess-bundle v1.5.0?
The v1.5.0 release contains one change: scaling board pieces with the square (PR #11), a presentation-layer adjustment for non-default board dimensions. No public API, rules-engine, dependency, or PHP-version change is signalled. The changelog is a single line with no linked issue, screenshots, or stated test coverage, so verify rendering across board sizes before adopting it.
Is the board rendering layer in p-chess/chess-bundle tested?
The provided evaluation does not establish test coverage for the rendering layer, and visual scaling is often the least-tested part of a chess package. There is no signal of visual or DOM assertions for the piece-scaling change. If you adopt the Twig templates, add your own screenshot or DOM tests; if you port markup to Blade, test the component there.
Should I use p-chess/chess-bundle or the p-chess/chess engine in a Laravel app?
Use p-chess/chess directly in Laravel and treat chess-bundle as a reference implementation and template source. Bind the engine behind a ChessEngine interface, keep board markup in Blade components, and port any useful Twig logic once rather than adding a transitive Symfony dependency. This removes Symfony from your dependency graph, which is the right trade for a Laravel-first shop.
How do I test chess move validation in Laravel with p-chess/chess?
Start with a standalone spike of the engine using real cases: PGN import, legal-move validation, and FEN round-trip. Put the engine behind a thin Laravel service and write unit tests around that boundary. Add feature tests for your Blade board component and any validation endpoints, since the bundle's rendering tests are not documented.
What license and maintenance risks should I consider with p-chess/chess-bundle?
Verify the repository license (MIT or GPL) clears your distribution model with legal before shipping. The evaluation flags maintainer concentration: a single contributor appears on the release, and small-project bus factor should be priced in. A published security policy and release cadence are not established in the materials reviewed, so pin versions and review each release.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource