npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

iscc-core-ts

v0.1.0

Published

Iscc core TypeScript implementation of iscc-core reference

Downloads

247

Readme

iscc-core-ts

Iscc core TypeScript implementation of iscc-core python reference

Project summary

The “ISCC-CORE typescript implementation library” goal is to implement core functions of the new ISCC standard ISO 24138:2024 in Typescript programming language. This typescript core library will be useful for the javascript ecosystem and developers ( frontend, backend ) to use and work with this new standard in their project.

The ISCC stands for “International Standard Content Code”. More detail at https://iscc.codes/

The ISCC is a similarity preserving fingerprint and identifier for digital media assets.

ISCCs are generated algorithmically from digital content, just like cryptographic hashes. However, instead of using a single cryptographic hash function to identify data only, the ISCC uses various algorithms to create a composite identifier that exhibits similarity-preserving properties (soft hash).

The component-based structure of the ISCC identifies content at multiple levels of abstraction. Each component is self-describing, modular, and can be used separately or with others to aid in various content identification tasks. The algorithmic design supports content deduplication, database synchronization, indexing, integrity verification, timestamping, versioning, data provenance, similarity clustering, anomaly detection, usage tracking, allocation of royalties, fact-checking and general digital asset management use-cases.

Work In progress

This library is under development. It is not ready for production. The current development planning can be check here

| Functions | Implementation | test coverage | ---------- | -------------- | -------- | | gen_meta_code_v0 | Done | ☑ test_0001_title_only | | | ☑ test_0002_title_extra | | | ☑ test_0003_96_bits | | | ☑ test_0004_128_bits | | | ☑ test_0005_160_bits | | | ☑ test_0006_192_bits | | | ☑ test_0007_224_bits | | | ☑ test_0008_256_bits | | | ☑ test_0009_i18n | | | ☑ test_0010_normalizeation | | | ☑ test_0011_trim | | | ☑ test_0012_trim_i18n | | | ☐ test_0013_norm_i18n_256 | | | ☑ test_0014_meta_object_json | | | ☑ test_0015_meta_object_json_ld | | | ☑ test_0016_meta_data_url | gen_text_code_v0 | Done | ☑ test_0000_empty_str | | | ☑ test_0001_hello_world | | | ☑ test_0002_hello_world_256_bits | | | ☑ test_0003_i18n | | | ☑ test_0004_more
| gen_image_code_v0 | Done | ☑ test_0000_all_black_64 | | | ☑ test_0001_all_white_128 | | | ☑ test_0003_img_256 | gen_audio_code_v0 | Done | ☑ test_0000_empty_64 | | | ☑ test_0001_one_128 | | | ☑ test_0002_two_256 | | | ☑ test_0003_test_neg_256 | | | ☑ test_0004_cv_256 | gen_video_code_v0 | Done | ☑ test_0000_one_zero_frame_64 | | | ☑ test_0001_multiple_frames_128 | | | ☑ test_0003_range_256 | gen_mixed_code_v0 | TODO | ☐ test_0000_std_64 | | | ☐ test_0001_128_truncated | gen_data_code_v0 | TODO | ☐ test_0000_two_bytes_64 | | | ☐ test_0001_empty_64 | | | ☐ test_0002_zero_128 | | | ☐ test_0003_static_256 | gen_instance_code_v0 | TODO | ☐ test_0000_empty_64 | | | ☐ test_0001_zero_128 | | | ☐ test_0002_static_256 | gen_iscc_code_v0 | TODO | ☐ test_0000_standard | | | ☐ test_0001_no_meta | | | ☐ test_0002_no_meta_content_256 | | | ☐ test_0003_no_meta_content_128 | | | ☐ test_0004_ordering

Prerequiste

We recomand to use nvm to install and target node and npm versions. Here an NVM install guide.

Nvm version used:

nvm --version
0.40.1

Install node 21

nvm install --lts
Installing latest LTS version.
v20.18.0 is already installed.
Now using node v22.11.0 (npm v10.9.0)

Install and build

npm i
npm run build

Tests

npm run test
npm run test-isolated
npm run test-esm
npm run test-esm-isolated