Ambi lets you execute any function ambidextrously; providing you the ability to execute any function (be it synchronous, asynchronous, returns, callbacks, promises) as if it returned a promise.
Installations
npm install ambi
Developer Guide
Typescript
Yes
Module System
ESM, UMD
Min. Node Version
>=4
Node Version
20.10.0
NPM Version
10.2.3
Releases
Unable to fetch releases
Contributors
Unable to fetch Contributors
Languages
TypeScript (88.68%)
JavaScript (11.32%)
Developer
bevry
Download Statistics
Total Downloads
41,364,219
Last Day
12,955
Last Week
55,280
Last Month
248,751
Last Year
3,544,838
GitHub Statistics
15 Stars
584 Commits
3 Forks
2 Watching
1 Branches
6 Contributors
Bundle Size
1.51 kB
Minified
633.00 B
Minified + Gzipped
Sponsor this package
Package Meta Information
Latest Version
10.9.0
Package Id
ambi@10.9.0
Unpacked Size
51.11 kB
Size
12.56 kB
File Count
18
NPM Version
10.2.3
Node Version
20.10.0
Publised On
28 Dec 2023
Total Downloads
Cumulative downloads
Total Downloads
41,364,219
Last day
-53.7%
12,955
Compared to previous day
Last week
-27.7%
55,280
Compared to previous week
Last month
0.9%
248,751
Compared to previous month
Last year
-0.4%
3,544,838
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
ambi
Ambi lets you execute any function ambidextrously; providing you the ability to execute any function (be it synchronous, asynchronous, returns, callbacks, promises) as if it returned a promise.
Usage
Install
npm
- Install:
npm install --save ambi
- Import:
import pkg from ('ambi')
- Require:
const pkg = require('ambi').default
Deno
1import pkg from 'https://unpkg.com/ambi@^10.9.0/edition-deno/index.ts'
Skypack
1<script type="module"> 2 import pkg from '//cdn.skypack.dev/ambi@^10.9.0' 3</script>
unpkg
1<script type="module"> 2 import pkg from '//unpkg.com/ambi@^10.9.0' 3</script>
jspm
1<script type="module"> 2 import pkg from '//dev.jspm.io/ambi@10.9.0' 3</script>
Editions
This package is published with the following editions:
ambi
aliasesambi/index.cjs
which uses the Editions Autoloader to automatically select the correct edition for the consumer's environmentambi/source/index.ts
is TypeScript source code with Import for modulesambi/edition-browsers/index.js
is TypeScript compiled against ES2022 for web browsers with Import for modulesambi/edition-es2022/index.js
is TypeScript compiled against ES2022 for Node.js 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modulesambi/edition-es5/index.js
is TypeScript compiled against ES5 for Node.js 4 || 6 || 8 || 10 || 12 || 14 || 16 || 18 || 20 || 21 with Require for modulesambi/edition-es2022-esm/index.js
is TypeScript compiled against ES2022 for Node.js 12 || 14 || 16 || 18 || 20 || 21 with Import for modulesambi/edition-types/index.d.ts
is TypeScript compiled Types with Import for modulesambi/edition-deno/index.ts
is TypeScript source code made to be compatible with Deno
History
Discover the release history by heading on over to the HISTORY.md
file.
Backers
Code
Discover how to contribute via the CONTRIBUTING.md
file.
Authors
- Benjamin Lupton — Accelerating collaborative wisdom.
Maintainers
- Benjamin Lupton — Accelerating collaborative wisdom.
Contributors
- Benjamin Lupton — view contributions
- Chris Tavares — view contributions
- Sean Fridman — view contributions
Finances
Sponsors
- Andrew Nesbitt — Software engineer and researcher
- Balsa — We're Balsa, and we're building tools for builders.
- Codecov — Empower developers with tools to improve code quality and testing.
- Poonacha Medappa
- Rob Morris
- Sentry — Real-time crash reporting for your web apps, mobile apps, and games.
- Syntax — Syntax Podcast
Donors
- Andrew Nesbitt
- Armen Mkrtchian
- Balsa
- Chad
- Codecov
- dr.dimitru
- Elliott Ditman
- entroniq
- GitHub
- Hunter Beast
- Jean-Luc Geering
- Michael Duane Mooring
- Michael Harry Scepaniak
- Mohammed Shah
- Mr. Henry
- Nermal
- Pleo
- Poonacha Medappa
- Rob Morris
- Robert de Forest
- Sentry
- ServieJS
- Skunk Team
- Syntax
- WriterJohnBuck
License
Unless stated otherwise all works are:
- Copyright © Benjamin Lupton
and licensed under:
![Empty State](/_next/static/media/empty.e5fae2e5.png)
No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
security policy file detected
Details
- Info: security policy file detected: SECURITY.md:1
- Info: Found linked content: SECURITY.md:1
- Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1
- Info: Found text in security policy: SECURITY.md:1
Reason
no binaries found in the repo
Reason
30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Reason
SAST tool is run on all commits
Details
- Info: all commits (30) are checked with a SAST tool
Reason
license file detected
Details
- Info: project has a license file: LICENSE.md:0
- Warn: project license file does not contain an FSF or OSI license.
Reason
1 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Warn: jobLevel 'contents' permission set to 'write': .github/workflows/bevry.yml:80
- Warn: no topLevel permission defined: .github/workflows/bevry.yml:1
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bevry.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/bevry.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bevry.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bevry.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bevry.yml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/bevry.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bevry.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/bevry.yml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/bevry.yml:74: update your workflow using https://app.stepsecurity.io/secureworkflow/bevry/ambi/bevry.yml/master?enable=pin
- Info: 0 out of 5 GitHub-owned GitHubAction dependencies pinned
- Info: 0 out of 4 third-party GitHubAction dependencies pinned
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
branch protection not enabled on development/release branches
Details
- Warn: branch protection not enabled for branch 'master'
Score
6.1
/10
Last Scanned on 2025-01-27
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More