Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jzeuzs/sodium
Libsodium for Node.js
https://github.com/jzeuzs/sodium
dryoc libsodium napi napi-rs nodejs rust sodium
Last synced: 5 days ago
JSON representation
Libsodium for Node.js
- Host: GitHub
- URL: https://github.com/jzeuzs/sodium
- Owner: jzeuzs
- License: mit
- Archived: true
- Created: 2022-03-16T09:45:26.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-07-28T19:01:03.000Z (12 months ago)
- Last Synced: 2024-07-06T04:52:18.437Z (6 days ago)
- Topics: dryoc, libsodium, napi, napi-rs, nodejs, rust, sodium
- Language: Rust
- Homepage: https://devtomio.github.io/sodium
- Size: 5.12 MB
- Stars: 14
- Watchers: 1
- Forks: 4
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Lists
- awesome-stars - jzeuzs/sodium - Libsodium for Node.js (Rust)
README
# @devtomio/sodium
[![GitHub](https://img.shields.io/github/license/devtomio/sodium)](https://github.com/devtomio/sodium/blob/main/LICENSE)
[![Continuous Delivery](https://github.com/devtomio/sodium/actions/workflows/continuous-delivery.yml/badge.svg)](https://github.com/devtomio/sodium/actions/workflows/continuous-delivery.yml)
[![Continuous Integration](https://github.com/devtomio/sodium/actions/workflows/continuous-integration.yml/badge.svg)](https://github.com/devtomio/sodium/actions/workflows/continuous-integration.yml)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium?color=crimson&logo=npm&style=flat-square)](https://www.npmjs.com/package/@devtomio/sodium)**Packages**
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-android-arm64?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-android-arm64)](https://www.npmjs.com/package/@devtomio/sodium-android-arm64)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-darwin-arm64?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-darwin-arm64)](https://www.npmjs.com/package/@devtomio/sodium-darwin-arm64)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-darwin-x64?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-darwin-x64)](https://www.npmjs.com/package/@devtomio/sodium-darwin-x64)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-freebsd-x64?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-freebsd-x64)](https://www.npmjs.com/package/@devtomio/sodium-freebsd-x64)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-linux-arm64-gnu?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-linux-arm64-gnu)](https://www.npmjs.com/package/@devtomio/sodium-linux-arm64-gnu)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-linux-arm64-musl?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-linux-arm64-musl)](https://www.npmjs.com/package/@devtomio/sodium-linux-arm64-musl)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-linux-x64-gnu?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-linux-x64-gnu)](https://www.npmjs.com/package/@devtomio/sodium-linux-x64-gnu)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-linux-x64-musl?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-linux-x64-musl)](https://www.npmjs.com/package/@devtomio/sodium-linux-x64-musl)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-win32-x64-msvc?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-win32-x64-msvc)](https://www.npmjs.com/package/@devtomio/sodium-win32-x64-msvc)
[![npm](https://img.shields.io/npm/v/@devtomio/sodium-linux-arm-gnueabihf?color=crimson&logo=npm&style=flat-square&label=@devtomio/sodium-linux-arm-gnueabihf)](https://www.npmjs.com/package/@devtomio/sodium-linux-arm-gnueabihf)## Features
- Fully ready for TypeScript!
- Includes ESM ready entrypoint
- Easy to use
- Has the same API as libsodium
- Faster than similar libraries (see [benchmarks](#benchmarks))
- Powered by [Rust](https://github.com/brndnmtthws/dryoc)---
## Usage
**_For complete usages, please dive into our [documentation]_**
### Basic usage
Generating a keypair
```typescript
import * as sodium from '@devtomio/sodium';const { public_key, secret_key } = sodium.crypto_box_keypair();
```## Benchmarks
```sh
$ yarn benchRunning "keypair generation" suite...
Progress: 100%libsodium-wrappers:
5 109 ops/s, ±3.12% | 85.44% slowertweetnacl:
1 108 ops/s, ±1.11% | slowest, 96.84% slowerchloride:
21 946 ops/s, ±7.45% | 37.46% slowersodium:
23 691 ops/s, ±1.00% | 32.49% slower@devtomio/sodium:
35 092 ops/s, ±2.84% | fastestFinished 5 cases!
Fastest: @devtomio/sodium
Slowest: tweetnacl
```## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
Tomio
💻 📖 💡 🤔 🚇 🚧 📦
WhiteSource Renovate
🚧
renovate[bot]
🚧
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
## License
This software is released under the MIT License, see [LICENSE](https://github.com/devtomio/sodium/blob/main/LICENSE).
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fdevtomio%2Fsodium.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fdevtomio%2Fsodium?ref=badge_large)
[documentation]: https://devtomio.github.io/sodium