An implementation of the classic Battleship game in Vanilla HTML, CSS and JavaScript.
💻 Live Demo 💻
- Single and Local Multiplayer modes.
- Ship placing using drag&drop and random placement.
- AI shooting automatically (randomly), when it's turn.
- Gameboard status showing active/sunken ships, hits and misses.
- HTML, vanilla CSS and JS.
- Test Driven Development for all non-UI modules. Jest used as a unit testing library
- Module pattern used for design of all JS logic.
- Logic and User Interface modules separated using a pub/sub events package (@perugi/events)
- User Interface implemented as a stateless module, complete game is playable through the console.
- Webpack bundler, ESlint and Prettier, used as part of my standard vanilla web toolchain.
