cleankill

Hook SIGINT and cleanly shut down your async code

Usage no npm install needed!

<script type="module">
  import cleankill from 'https://cdn.skypack.dev/cleankill';
</script>

README

Cleankill

CleanKill hooks the interrupt handler, and provides callbacks for your code to cleanly shut down before the process exits.

As an escape hatch, if the user mashes interrupt, the process will be immediately killed.

Using It

var cleankill = require('cleankill');

To register a handler:

cleankill.onInterrupt(() => {
  return new Promise((resolve) => {
    // do things.
    resolve();
  });
});

If you wish to shut down any existing handlers (without exiting the process):

cleankill.close().then(() => {
  // All handlers have cleaned things up.
});