SkillAgentSearch skills...

Poku

๐Ÿท Poku makes testing easy for Node.js, Bun, Deno, and you at the same time.

Install / Use

/learn @wellwelwel/Poku

README

<div align="center"> <img height="180" alt="Poku's Logo" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/poku.svg">

Poku

Enjoying Poku? Give him a star to show your support ๐ŸŒŸ

NPM Version NPM Downloads Coverage<br /> GitHub Workflow Status (Linux) GitHub Workflow Status (OSX) GitHub Workflow Status (Windows)


๐Ÿท Website<span>ย ย โ€ขย ย </span>๐Ÿ“˜ Documentation<span>ย ย โ€ขย ย </span>๐Ÿงช Examples<span>ย ย โ€ขย ย </span>๐Ÿง‘๐Ÿปโ€๐ŸŽ“ Tutorials

</div>

Why does Poku exist?

๐Ÿ’ก Poku is a cross-platform test runner that brings the JavaScript essence back to testing.

</span><img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> High isolation level per file<br /> </span><img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Performant and lightweight<br /> <img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Auto detect ESM, CJS, and TypeScript files<br /> <img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Run the same test suite for [Node.js][node-version-url], [Bun][bun-version-url], and [Deno][deno-version-url]<br /> <img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Easily handle servers, processes, ports, and even containers โœจ


Quickstart

<img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Install

<table> <tr> <td width="225">
# Node.js
npm i -D poku
</td> <td width="225">
# TypeScript (Node.js)
npm i -D poku tsx
</td> <td width="225">
# Bun
bun add -d poku
</td> <td width="225">
# Deno (optional)
deno add npm:poku
</td> </tr> </table>

<img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Test

<table> <tr> <td> <blockquote>test/file.test.mjs</blockquote> </td> </tr> <tr> <td width="1200">
import { assert } from 'poku';

assert(true, 'Poku will describe it ๐Ÿท');
</td> </tr> </table>

<img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Run

<table> <tr> <td><blockquote><i>Node.js (and TypeScript)</i></blockquote></td> <td><blockquote><i>Bun</i></blockquote></td> <td><blockquote><i>Deno</i></blockquote></td> </tr> <tr> <td width="400">
npx poku
</td> <td width="400">
bun poku
</td> <td width="400">
deno run npm:poku
</td> </tr> </table>

Features

<img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Essentials

<table> <tr> <td width="280"><a href="https://poku.io/docs/category/-poku">poku</a></td> <td width="770">๐Ÿงช Test runner.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/assert">assert</a></td> <td>๐Ÿ” Test assertion <i>(<strong>Node.js</strong> familiar <strong>API</strong>)</i>.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/assert">strict</a></td> <td>๐Ÿ”ฌ Strict test assertion <i>(<strong>Node.js</strong> familiar <strong>API</strong>)</i>.</td> </tr> </table>

<img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Helpers

<table> <tr> <td width="250"><a href="https://poku.io/docs/documentation/helpers/test">test</a> โ€ข <a href="https://poku.io/docs/documentation/helpers/describe">describe</a> โ€ข <a href="https://poku.io/docs/documentation/helpers/it">it</a></td> <td width="800">๐Ÿคน๐Ÿปโ€โ™€๏ธ Organize, group, and isolate tests.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/env">envFile</a></td> <td>โš™๏ธ Process an environment file <i>(out-of-box)</i>.</td> </tr> <tr> <td><a href="https://poku.io/docs/category/-before-and-after-each">beforeEach</a> โ€ข <a href="https://poku.io/docs/category/-before-and-after-each">afterEach</a></td> <td>๐Ÿƒ Hooks for test setup and teardown.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/startScript">startScript</a></td> <td>๐ŸŒ Run package.json scripts in background.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/startService">startService</a></td> <td>๐ŸŒ Run files in background.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/containers">docker</a></td> <td>๐Ÿณ Build, start, compose, stop, remove, and test containers.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/processes/kill">kill</a></td> <td>๐Ÿ”Œ Terminate ports, port ranges, and PIDs.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/processes/wait-for-port">waitForPort</a></td> <td>๐Ÿ˜ด Wait for specified ports to become active.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/processes/wait-for-expected-result">waitForExpectedResult</a></td> <td>๐Ÿฅฑ Retry until an expected result or times out.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/skip">skip</a></td> <td>โญ๏ธ Skip tests when necessary.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/only">only</a></td> <td>๐ŸŒŒ Debug tests by enabling selective runs.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/helpers/processes/get-pids">getPIDs</a></td> <td>๐Ÿ•ต๐Ÿป Debug processes IDs using ports and port ranges.</td> </tr> </table>

<img width="16" height="16" alt="check" src="https://raw.githubusercontent.com/wellwelwel/poku/main/.github/assets/readme/check.svg"> Common Options

<table> <tr> <td width="280"><a href="https://poku.io/docs/documentation/poku/options/watch">watch</a></td> <td width="770">๐Ÿฟ Watch for changes and re-run related test files.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/poku/options/debug">debug</a></td> <td>๐Ÿ•ต๐Ÿป Shows all logs.</td> </tr> <tr> <td><a href="https://poku.io/docs/documentation/poku/config-files">config</a></td> <td>โš™๏ธ Customize your Poku options in a config file.</td> </tr> </table>

and much more ๐Ÿ‘‡๐Ÿป


Documentation and Examples

To see the detailed documentation, please visit the Documentation and Examples sections in the Poku's website.


Tutorials

Poku offers mini-lessons for different users needs in the Quick Tutorials section.


Common Issues (FAQ)


Quick Comparisons

Performance

Poku is continuously tested to ensure the following average expectations for basic usage:

  • ~4.6x faster than [*Jest

Related Skills

View on GitHub
GitHub Stars1.2k
CategoryDevelopment
Updated6h ago
Forks27

Languages

TypeScript

Security Score

100/100

Audited on Apr 8, 2026

No findings