poku icon indicating copy to clipboard operation
poku copied to clipboard

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

Logo

Poku

Poku can show you how simple testing can be ๐ŸŒฑ

Node.js Version Bun Version Deno Version TypeScript Version
GitHub Workflow Status (with event) GitHub Workflow Status (with event) Coverage NPM Downloads License

Enjoying Poku? Consider giving him a star โญ๏ธ


๐Ÿท Documentationย ย โ€ขย ย ๐Ÿงช Examplesย ย โ€ขย ย ๐Ÿ”ฌ Compare the Most Popular Test Runners


Reasons to Adopt a Poku โ†’

check No configurations
ย ย ย ย ย check Auto detect ESM and CJS
ย ย ย ย ย check Auto detect Typescript files
ย ย ย ย ย check Don't export your server (just run it) ๐Ÿš€

check Less verbose
check High isolation level per file
ย ย ย ย ย check No eval needed ๐Ÿ”
ย ย ย ย ย check No global state
check Parallel and Sequential runs ๐Ÿƒ๐Ÿฝ๐Ÿƒ๐Ÿป

check Poku is 100% documented
check Designed to be human-friendly
check Compatible with Coverage tools
check Node.js, Bun and Deno compatibility ๐Ÿฉต

โœจ You are free to work with the packages you desire
๐Ÿง‘๐Ÿปโ€๐ŸŽ“ You don't need to learn it all at once to get started
๐Ÿง‘๐Ÿปโ€๐Ÿ”ฌ Poku adapts to your test, not the other way around
โ˜ Zero external dependencies (that means lightweight)
๐Ÿ‘ด๐Ÿผ Poku doesn't restrict you from testing in legacy environments


Quickstart

Install ๐Ÿ“ฆ

Install Size

npm i -D poku
npm i -D poku tsx
bun add -d poku
import { poku } from 'npm:poku';

Test it ๐Ÿ”ฌ

test/file.test.js
import { assert } from 'poku';

assert(true, 'Poku will describe it ๐Ÿท');

Note that these examples use ESM, but you can use CJS as well.

Run it ๐Ÿš€

npx poku
bun poku
deno run npm:poku

That's it ๐ŸŽ‰


Available Methods

Essentials

Helpers

See the complete documentation.


Overview

poku

Sequential Concurrent

See the complete poku's documentation.


assert

  • ๐Ÿ’š Use it exactly as it's for Node.js
  • ๐Ÿท Node.js, Bun and Deno compatibility
Using poku Using node

See the complete assert's documentation.


Documentation and Examples

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


Community

I'm continuously working to improve Poku. If you've got something interesting to share, feel free to submit a Pull Request. If you notice something wrong, I'd appreciate if you'd open an Issue.


Contributing

Please check the CONTRIBUTING.md for instructions ๐Ÿš€


Philosophy

Please check the Philosophy section from Documentation.


License

Poku is under the MIT License.


Security Policy

Please check the SECURITY.md and the section Is Poku Safe? from Documentation.


Limitations

  • Poku is still a bit lonely, without an active community around him, but we can change it ๐Ÿค
  • Each file generates a sub-process during its execution. This can be reflected in projects with an extremely high volume of test files when run in parallel.

Acknowledgements

Contributors

Contributors


Author

wellwelwel
@wellwelwel