Whot
A Game API for the Nigerian Whot Card Game. https://github.com/mykeels/whot-server, https://github.com/CodeByOmar/whot-app
Install / Use
/learn @mykeels/WhotREADME
Whot!
<p align="center"> <a href="https://github.com/mykeels/whot/actions/workflows/ci-app-test.yml"> <img src="https://github.com/mykeels/whot/actions/workflows/ci-app-test.yml/badge.svg" alt="build status" /> </a> <a href="https://github.com/mykeels/whot/graphs/contributors" alt="Contributors" > <img src="https://img.shields.io/github/contributors/mykeels/whot" /> </a> <a href="https://twitter.com/intent/follow?screen_name=mykeels"> <img src="https://img.shields.io/twitter/follow/mykeels?style=social&logo=twitter" alt="follow on Twitter" /> </a> </p>Whot! is the national card game of Nigeria. It is played by young and old, and has come to be associated with fond memories, by me and a lot of people I know. Read More
This is a JS Library that will facilitate the Nigerian Whot! Game Play.
Why
I have started this project because I hope someone else builds a beautiful UI/UX around it (cos I can't).
I also want to play this game with my friends and family from my phone and laptop, and experience the same amount of fun I did playing it as a child.
How
npm install whot
import Game from "whot";
const game = new Game({
noOfDecks: 1, //number of card decks to be used
noOfPlayers: 4,
});
You can subscribe to the events that the Game instance offers via its emitter property.
To play a card:
const player = game.turn.next();
if (player.canPlay()) {
/** pick a random card from the player's hand */
const compatibleCardIndex = player
.hand()
.findIndex((card) => card.matches(game.pile.top()));
player.play(compatibleCardIndex);
game.turn.execute(game.pile.top());
} else {
const marketCards = player.pick();
game.turn.switch();
}
Read more in docs
Testing
-
See test suite
-
Run
npm test
Who
If you're interested, see the Contribution Guide.
When
On-going! Now on version 1.0.6 🙌
Related Projects
- HTTP Server by @mykeels
- Web App by @CodeByOmar
Related Skills
node-connect
347.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
347.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
347.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
