# @sempervirens/tools

> A set of tools for various purposes

Latest version **1.0.0** (published 2026-07-06) · MIT license · 0 weekly downloads

## Install

```sh
npm install @sempervirens/tools
pnpm add @sempervirens/tools
yarn add @sempervirens/tools
bun add @sempervirens/tools
```

## Health

**Score 50/100 (C)** — status: active.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types.

## Facts

| | |
|---|---|
| Version | 1.0.0 |
| Published | 2026-07-06 |
| First published | 2022-07-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Dependencies | 6 |
| Unpacked size | 22.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | Luke Dupuis |
| Maintainers | sempervirens |
| Keywords | tools, helpers |

## Links

- npm: https://www.npmjs.com/package/@sempervirens/tools
- Repository: https://github.com/lukedupuis/sempervirens-tools
- Homepage: https://github.com/lukedupuis/sempervirens-tools#readme
- Issues: https://github.com/lukedupuis/sempervirens-tools/issues
- npm.io page: https://npm.io/package/@sempervirens/tools

## Dependencies (6)

- [ssh2](https://npm.io/package/ssh2.md) ^1.17.0
- [globby](https://npm.io/package/globby.md) ^16.2.1
- [moment](https://npm.io/package/moment.md) ^2.30.1
- [archiver](https://npm.io/package/archiver.md) ^8.0.0
- [ssh2shell](https://npm.io/package/ssh2shell.md) ^2.0.9
- [cross-spawn](https://npm.io/package/cross-spawn.md) ^7.0.6

## Alternatives

- [lodash.assign](https://npm.io/package/lodash.assign.md) — 2.3M weekly downloads
- [lodash.chunk](https://npm.io/package/lodash.chunk.md) — 1.8M weekly downloads
- [react-native-ios-utilities](https://npm.io/package/react-native-ios-utilities.md) — 138.5K weekly downloads
- [@technically/lodash](https://npm.io/package/@technically/lodash.md) — 50.9K weekly downloads
- [@fluid-topics/ft-icon](https://npm.io/package/@fluid-topics/ft-icon.md) — 20.6K weekly downloads

## Recent versions

- 1.0.0 (latest) — 2026-07-06
- 0.5.5 — 2022-08-11
- 0.5.4 — 2022-08-11
- 0.5.3 — 2022-08-11
- 0.5.2 — 2022-08-11
- 0.5.1 — 2022-08-11
- 0.5.0 — 2022-08-10
- 0.4.0 — 2022-08-02
- 0.3.1 — 2022-07-12
- 0.3.0 — 2022-07-12
- 0.2.1 — 2022-07-02
- 0.2.0 — 2022-07-01
- 0.1.0 — 2022-07-01

## README

# Sempervirens Tools

A set of tools for various purposes

![Tests badge](https://github.com/lukedupuis/sempervirens-tools/actions/workflows/main.yml/badge.svg?event=push) ![Version badge](https://img.shields.io/static/v1?label=Node&labelColor=30363c&message=16.x&color=blue)

## Installation

`npm i @sempervirens/tools`;

## Tools

### Server Tools

#### startServer

Starts a Node Express server while keeping a set of sockets in order to stop the server later. (Mainly for use in tests.)

#### stopServer

Stops a server by ID started with `startServer`. (Mainly for use in tests.)

#### stopAllServers

Stops all servers started with `startServer`. (Mainly for use in tests.)

### timestamp

Uses Moment.js to return a default format `[MM-DD-YY hh:mm:ssa]` and formattable string.

### duration

Calculates a duration between a `start` and `end` parameter, both of which may be a `moment` or `Date` object. If not given, `end` is the current moment.

---
_Source: https://npm.io/package/@sempervirens/tools · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
