Nara Lens/Docs

JavaScript SDK

Official JavaScript/TypeScript SDK for Nara Lens.

Installation

Bash
npm install naralens

Quick Start

JavaScript
import { NaraLens } from 'naralens';

// Initialize the client
const nara = new NaraLens(process.env.NARA_API_KEY);

// Analyze an image
const result = await nara.analyze({
  image: 'https://example.com/image.jpg',
  perception: 'detect:person,vehicle'
});

// Access results
result.objects.forEach(obj => {
  console.log(`${obj.label}: ${(obj.confidence * 100).toFixed(1)}%`);
  console.log(`  Bounding box: ${obj.bbox}`);
});

TypeScript Support

TypeScript
import { NaraLens, AnalyzeResult, DetectedObject } from 'naralens';

const nara = new NaraLens(process.env.NARA_API_KEY!);

const result: AnalyzeResult = await nara.analyze({
  image: imageUrl,
  perception: 'detect:face'
});

const faces: DetectedObject[] = result.objects.filter(
  obj => obj.label === 'face'
);

Browser Usage

JavaScript
// Use with a proxy to avoid exposing API key
const nara = new NaraLens({
  baseUrl: '/api/naralens-proxy'
});

// File input handling
const input = document.querySelector('input[type="file"]');
input.addEventListener('change', async (e) => {
  const file = e.target.files[0];
  const result = await nara.analyze({
    image: file,
    perception: 'detect:person'
  });
  console.log(result);
});