npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@totto2727/sleep

v0.1.1

Published

sleep util function

Readme

@totto2727/sleep

概要

他のパッケージとの差別点

インストール

前提

Node.js or Bun

npm add @totto2727/sleep
yarn add @totto2727/sleep
pnpm add @totto2727/sleep
bun add @totto2727/sleep
import * as r from "@totto2727/sleep"

ブラウザ or Deno

import * as r from "https://esm.sh/@totto2727/sleep"

Example

https://github.com/totto2727-org/sleep/blob/main/src/index.test.mts

Usage

sleep

処理を停止しイベントループを回すためのPromiseと、強制的にPromiseを解決させて処理を進める関数を含むオブジェクトを返却します。 非同期処理(Promise、async/await)との併用が前提であり、await sleep(time).promiseといったような形で利用する必要があります。 関数を実行しただけでは待機されない点に注意してください。 また、待機中に並行して処理を行い、その結果に応じて待機を強制的に解除する必要がある場合は、以下の用に別処理に関数を渡して実行した上で、待機させてください。

async function concurrentProcessing(forceResolve: () => void): Promise<void> {
    // ...

    forceResolve();
}

const s = sleep(longTime);
concurrentProcessing(s.forceResolve);

await s.promise;

ミリ秒単位での指定が可能ですが、イベントループの仕様上、他の処理が優先される可能性があるため、厳密には指定した秒数にならない可能性があります。 そのため、最低限この秒数待機できればいい(E2Eテストの待機やスクレイピングの間隔)という場面での利用を推奨しています。 厳密な秒数での停止が必要な場合は、他のライブラリを使用してください。

影響を受けた言語及びライブラリ

開発者向け

開発環境

  • 実行環境
    • Bun >1.0.0

Jetbrains

VSCode

TODO

開発手順

  1. このリポジトリをフォークする
  2. フォークしたリポジトリをローカルにクローンしてプロジェクトルートに移動する
  3. パッケージのインストール
    bun i
  4. 開発する
  5. 変更内容を記述する
    bun changeset
  6. コミット前
    bun precommit
  7. コミット&プッシュ
  8. フォークしたリポジトリからプルリクエストを作成する
  9. 以下は管理者がバージョンアップする場合のみ
  10. バージョンの変更とプッシュ
    bun changeset version
  11. mainブランチにマージする
  12. タグをつけてプッシュ
    bun changeset tag
  13. CI/CDが自動でNPMに公開する