@instgame/cli
v1.0.2
Published
CLI tool and mock API server for discovering and integrating instgame.com H5 games
Maintainers
Readme
instgame-cli
CLI tool for discovering and integrating instgame.com H5 games.
For H5 game players — quickly search and find games to play. For H5 game site developers — spin up a mock API server to integrate games into your site.
Install
npm install -g @instgame/cliOr run directly from source:
git clone [email protected]:instgame/cli.git
cd cli
npm install -g .Or use npx without installing:
npx @instgame/cli <command>Update
npm update -g @instgame/cliFor Players
Search games
instgame list # browse all 535+ games
instgame list -s "billiard" # fuzzy search (typos tolerated)
instgame list -c "Sports" # filter by category
instgame list -t "Pool" # filter by tagView game details
instgame show 8-ball-billiards-classicOutput includes play URL, icon, banner, category, and tags — click the play URL to start playing.
Random picks
instgame random # 3 random games
instgame random -n 10 # 10 random games
instgame random -c "Sports" # random picks from a categoryFor Developers
Mock API server
instgame serve # starts at 127.0.0.1:3000
instgame serve -p 8080 # custom portAPI Endpoints
| Endpoint | Description | Example |
|---|---|---|
| GET /api/games | Random games, distributed across categories | ?count=5 |
| GET /api/games | Filtered random games | ?category=Sports&count=5 |
| GET /api/games | Fuzzy search | ?search=billiard&count=3 |
| GET /api/latest | Latest updated games (default 10) | ?count=5 |
| GET /api/latest | Latest by creation time | ?count=5&sort=created |
| GET /api/categories | Category list with counts | |
| GET /api/tags | Tag list with counts | |
| GET /api/health | Server health check | |
Quick integration
// 1. Fetch 5 random games for a recommendation widget
const res = await fetch('http://127.0.0.1:3000/api/games?count=5');
const games = await res.json();
games.forEach(g => {
console.log(`<iframe src="${g.playUrl}"></iframe>`);
});
// 2. Fetch 3 latest new games
const latest = await fetch('http://127.0.0.1:3000/api/latest?count=3');
// 3. Get category list for navigation
const cats = await fetch('http://127.0.0.1:3000/api/categories');JSON output (no server)
instgame random -j # JSON array of play URLs
instgame list -j # full game data as JSON
instgame show <slug> -j # single game as JSONOther Commands
instgame categories # list all categories
instgame tags # list all tags
instgame sync # update game data from remoteData
Game data is stored in data/games.json. Run instgame sync to update.
Test
npm test