# sign3

> Create pre-signed S3 URLs

Latest version **2.2.0** (published 2025-12-19) · Unlicense license · 0 weekly downloads

## Install

```sh
npm install sign3
pnpm add sign3
yarn add sign3
bun add sign3
```

## Health

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

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types.

## Facts

| | |
|---|---|
| Version | 2.2.0 |
| Published | 2025-12-19 |
| First published | 2021-03-16 |
| Weekly downloads | 0 |
| License | Unlicense |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Dependencies | 0 |
| Unpacked size | 3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 8 |
| Author | Rasmus Porsager |
| Maintainers | porsager |
| Keywords | aws, s3, sign, presign, presigned, presignedGetObject, presignedPutObject, getObject, uri, url |

## Links

- npm: https://www.npmjs.com/package/sign3
- Repository: https://github.com/porsager/sign3
- Homepage: https://github.com/porsager/sign3#readme
- Issues: https://github.com/porsager/sign3/issues
- npm.io page: https://npm.io/package/sign3

## Alternatives

- [base64url](https://npm.io/package/base64url.md) — 6.1M weekly downloads
- [get-installed-path](https://npm.io/package/get-installed-path.md) — 502.9K weekly downloads
- [@uppy/url](https://npm.io/package/@uppy/url.md) — 185.8K weekly downloads
- [@d3fc/d3fc-shape](https://npm.io/package/@d3fc/d3fc-shape.md) — 16.2K weekly downloads
- [localizer](https://npm.io/package/localizer.md) — 226 weekly downloads

## Recent versions

- 2.2.0 (latest) — 2025-12-19
- 2.1.0 — 2025-09-26
- 2.0.0 — 2022-12-15
- 1.0.2 — 2021-03-16
- 1.0.1 — 2021-03-16
- 1.0.0 — 2021-03-16

## README

# sign3

Create pre-signed S3 URLs

```js

import sign from 'sign3'

sign('https://accessKey:secretKey@endpoint').get(bucket, key, expiry, headers)
// returns a presigned get url for download

sign('https://accessKey:secretKey@endpoint').put(bucket, key, expiry)
// returns a presigned put url for upload
 
sign('https://accessKey:secretKey@endpoint').head(bucket, key, expiry)
// returns a presigned put url for head
 
sign('https://accessKey:secretKey@endpoint').delete(bucket, key, expiry)
// returns a presigned put url for delete

```

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