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 🙏

© 2025 – Pkg Stats / Ryan Hefner

jtn-sdk

v1.0.8

Published

> 🗂️ SDK oficial para trabajar con el nuevo formato de imagen **.JTN (Jeison Trackable Network)**.

Readme

🧩 jtn-sdk

🗂️ SDK oficial para trabajar con el nuevo formato de imagen .JTN (Jeison Trackable Network).


📌 ¿Qué es .jtn?

.jtn es un nuevo formato de archivo que encapsula imágenes, videos u otros medios con metadatos invisibles, identificadores únicos y trazabilidad hacia un servidor de control.

Este SDK te permite:

  • 📦 Convertir un archivo .jpg, .png, .mp4 o .pdf a .jtn
  • 🔓 Extraer los archivos originales y metadatos desde un .jtn
  • 📡 Enviar eventos de visualización a un servidor remoto

🚀 Instalación

Instálalo desde NPM:

npm install jtn-sdk

🔧 Uso básico

import { convertToJTN, extractFromJTN } from "jtn-sdk";

// Convertir archivo a .jtn
const archivoJTN = await convertToJTN({
  file: archivoOriginal,
  metadata: {
    creator: "Jeison Rojas",
    project: "ETV",
    trackingURL: "https://mi-servidor.com/report"
  }
});

// Extraer contenido
const resultado = await extractFromJTN(archivoJTN);
console.log(resultado.file, resultado.metadata);

📂 Métodos disponibles

convertToJTN({ file, metadata }): Promise<Blob>

Convierte un archivo a formato .jtn incluyendo metadatos y firma opcional.

extractFromJTN(file: Blob | File): Promise<{ file: Blob, metadata: any }>

Extrae el archivo original y los metadatos de un archivo .jtn.


⚙️ Uso desde la consola (jtn CLI)

Una vez instalado globalmente, puedes usar el comando jtn desde cualquier carpeta del sistema.

🚀 Comandos disponibles

| Comando | Descripción | |--------|-------------| | jtn compress <archivo> | Comprime un archivo e inserta metadatos invisibles compatibles con el formato .JTN. | | jtn decompress <archivo> | Extrae el contenido y los metadatos incrustados desde un archivo .JTN o compatible. | | jtn info <archivo> | Muestra información técnica y metadatos cifrados o visibles del archivo. |


📦 Ejemplo: Comprimir una imagen

jtn compress imagen.jpg

📌 Esto genera un nuevo archivo comprimido, por ejemplo: imagen.jtn.jpg, que contiene identificadores invisibles y trazabilidad incrustada.


📂 Ejemplo: Descomprimir

jtn decompress imagen.jtn.jpg

📌 Recupera el archivo original (sin marcas de rastreo) o los metadatos asociados.


🔍 Ver información de un archivo

jtn info imagen.jtn.jpg

📌 Muestra:

  • Identificador único
  • Hash de rastreo
  • Timestamp de creación
  • Dirección del servidor de rastreo
  • Si el archivo ha sido modificado

🔧 Requisitos

  • Node.js v18+
  • Haber instalado el SDK:
npm install -g .

🐞 Errores comunes

| Error | Causa | Solución | |-------|--------|----------| | command not found: use strict | Falta la línea #!/usr/bin/env node | Asegúrate de que tu archivo cli.js la tenga al inicio | | Permission denied | El archivo no tiene permisos de ejecución | Corre chmod +x dist/cli.js | | jtn: command not found | No está instalado globalmente o no está en tu PATH | Corre npm install -g . dentro del proyecto |


🔗 Integración con ETV

Este SDK es compatible con la librería etv, que renderiza medios con soporte nativo para .jtn.


📄 Licencia

MIT © 2025 Jeison Rojas