Disclaimer : This README.md has been redacted with AI. This is not the case for the code as my goal was to work with as little assistance from AI models as possible
jchess is a lightweight and versatile JavaScript chess interface/framework.
The goal is to provide:
- 🎨 a clean and reusable chess UI
- 🖱️ simple board interaction
- 🔌 an easy-to-use API
- 🧱 a solid base for chess-related projects
Most chess projects are not really about rendering a board.
They are about:
- 🤖 chess engines
- 🧠 move generation
- 📊 AI / algorithms
- 👁️ visualization
- 🧩 puzzle solving
- 🧪 experimentation
- 📚 educational tools
jchess aims to handle the interface layer so developers can focus on the logic.
Think of it as a plug-and-play frontend for JavaScript chess projects.
- ♟️ simple playable chess games
- 🤖 chess engine visualization
- 🧮 algorithm experimentation
- 🧠 chess AI projects
- ✅ move validation systems
- 📚 educational tools
- 🧩 puzzle solvers
- 👑 the 8 queens problem
- 🔀 custom chess variants
- 🧪 board-based experiments
jchess is intentionally lightweight and framework-agnostic.
The project focuses on:
- ✨ simplicity
- 📖 readability
- 🧩 modularity
- 🎨 visual clarity
- 🔧 hackability
No heavy dependencies. No unnecessary abstraction. Just a clean chess interface developers can build upon.
Early-stage development.
The API and architecture are still evolving.
- ♟️ board rendering
- 🖱️ piece movement
- ✨ move highlighting
- 🎨 configurable themes
- 🔌 board state API
- 🎞️ animation support
- 📄 FEN support
- 📝 PGN support
- 🧩 extension/plugin system
Clone the repository:
git clone https://github.com/zornyy/jchess.git
cd jchessRun locally with any static server.
Example:
python -m http.serverThen open:
http://localhost:8000
MIT