jGoBoard
Photorealistic go board with JavaScript
News
jGoBoard 4.0 - Modern Build System with Vite
jGoBoard 4.0 brings a major modernization to the build system and module architecture! This release marks a significant step forward in development experience and compatibility.
What's New in 4.0
Modern Build System with Vite
- Migrated from legacy Grunt build system to modern Vite
- Dramatically improved development experience with hot module replacement
- Faster builds and better performance
Multiple Module Format Support
- Now supports ES modules, CommonJS, and UMD formats
- Better tree-shaking support for smaller bundle sizes
- Use UMD version for simple script tag inclusion in browsers
- ES modules and CommonJS support for modern development workflows
Optimized Build Artifacts
- Reduced build artifacts from 13 to 7 files
- Added minified builds for production use
- Source maps included for better debugging experience
- TypeScript definitions for improved developer experience
Distribution Changes
- Download files are now available from the GitHub releases page
- For browser use with script tags, use the UMD version
- Multiple format options provide flexibility for different project setups
The new Vite-based build system follows modern JavaScript best practices and provides a foundation for future improvements. Developers will benefit from faster builds, better debugging tools, and improved compatibility with modern JavaScript tooling.
Check out the latest version on GitHub and download from the releases page for your preferred module format.
Site rewritten with 11ty
The old WordPress site has been removed and a new, simpler one written with help of 11ty.
Old comments and API help for previous jGoBoard versions are unfortunately gone, but as they were over 7 years old, I don't think many will miss them. Enjoy the new speedy site!
jGoBoard 3 released!
BIG news: jGoBoard 3 is now released and available at GitHub:
https://github.com/jokkebk/jgoboard
It is a complete rewrite of jGoBoard using HTML5 canvas. This means greatly improved performance, as over 1000 divs are no longer needed. This should especially help tablet and smartphone users. A few other feature highlights:
- New “large” size textures for board and stones (1k x 1k board and 48×48 stones), alternate walnut board texture, B&W “diagram” styles (i.e. no textures)
- Dynamic rendering allows any board size (up to 19×19) & partial views (nice for tsumego and diagrams)
- Fully parametrized board rendering allows vast amount of customization (background color, grid widths, margins, fonts, amount of star points rendered etc.) and custom boards
- All methods encapsulated in single JGO namespace (JGO.Board, JGO.BLACK, JGO.util.loadSGF etc.) to minimize variable space pollution
- Full auto-generated API docs with JSdoc
- All js files pass checking with JSHint with strict settings enabled
- Automatic build system using Grunt (including script concatenation and minimizing)
- The minimized single .js version is mere 24 kB and only 7 kB gzipped
- No external dependecies in the library (some of the demos use jQuery)
- Automatic diagram generation for blog users
- Project hosted at github for easy cloning and other nice features
I am still in progress of improving the SGF player subsystems so the jgoboard.com SGF viewer will for the moment run on 2.1, but for direct users of jGoBoard the current 3.1 is ready to use. Licensing is the same Creative Commons Non-commercial as for 2.1. Take a look at the demos:
- Simple diagram generation for blogs and websites
- Click to play demo
- New selection type marker for “select search area” type of use case
- Simple player
- Random board showing different markers and other special intersection types (territory, selection)