Changelog
Updates that affect how you integrate and use NotPixel.
2026-11-08
JavaScript SDK 5.0.3, Python SDK 0.8.3 and React Native SDK 0.5.2
- Web ad delivery in production requires a verified publisher domain. The React cards confirm impressions after the ad is visible. See Next.js integration.
- Pending opportunities retain their ID and hide the CTA link until confirmation.
JavaScript SDK 5.0.2, Python SDK 0.8.2 and React Native SDK 0.5.1
- The SDKs accept test previews automatically enforced by the API for development origins. Pass the public chat origin in
context.originwhen your backend calls NotPixel. See Test Mode.
2026-11-07
JavaScript SDK 5.0.0, Python SDK 0.8.0 and React Native SDK 0.5.0
- The JavaScript SDK bundles the public Markdown docs and the guided installer points coding agents to the installed index.
- The SDKs now use real ad previews for publisher testing. See Test Mode.
November 6, 2026
JavaScript SDK 4.2.0, Python SDK 0.7.0 and React Native SDK 0.4.0
- The JavaScript installer detects the package manager and installs into the application you select, including apps in monorepos. Use
--project <path>to select it explicitly. - Preview eligible ads in environments that support test mode. Test ads have a disabled CTA and generate no tracking or spend.
See Installation and Test Mode.
October 30, 2026
JavaScript SDK 4.1.0 and Python SDK 0.6.0
- Install only
npm install notpixelorpip install notpixel. Local processing is included by default, with lazy model loading. - JavaScript and Next.js use
import Ads from 'notpixel'; Python usesfrom notpixel import Ads, AsyncAds. - Choose remote processing explicitly through
notpixel/remoteornotpixel.remote, using the same installation. Remote processing does not initialize a local model. - Local inference failures preserve the application response and never switch automatically to sending text remotely.
See Installation and Quick start.
October 26, 2026
JavaScript SDK 4.0.1, Python SDK 0.5.0 and React Native SDK 0.3.0
- Direct package installation and optional assisted setup are documented separately. SDK usage does not require CLI login; both paths support local and remote processing.
- English interactive installation with browser login/account creation, followed by the choice of local or remote context processing.
- Optional local inference components across JavaScript, Python and React Native.
- Explicit remote context processing through the existing NotPixel API.
- Local remains the default, and there is no automatic remote fallback.
October 24, 2026
JavaScript SDK 3.0.0, Python SDK 0.4.0 and React Native SDK 0.2.0
- Local embedding is built in. NotPixel manages the model and precision; remove previous embedding configuration from your constructor when upgrading.
- Direct REST integrations generate the context vector in their own environment using the documented 384-dimensional BGE model, mean pooling and normalization.
- The ad API accepts vectors only. The HTTP guide includes a complete example that generates the vector and calls REST without the NotPixel SDK.
See HTTP API for the request contract and Privacy for local model preloading and failure handling.
October 23, 2026
JavaScript SDK 2.1.0
- Add
notpixel/ai-sdkfor AI SDK 6 and 7, preserving the application provider and streaming structured sponsored data before the final event. - Add a complete Next.js App Router example with explicit demo mode, visibility tracking, clicks and ad feedback.
- Bound ad matching with a total deadline and propagate cancellation through local embedding completion and HTTP response reading.
See Vercel AI SDK and Next.js.
Python SDK 0.3.0 and JavaScript SDK 2.0.4
- Python now supports
offer()andstream()in synchronous and asynchronous clients across 18 provider/gateway routes. - Both Python clients offer concurrent batch/prefetch, cache, tracking and local embeddings. Async callbacks are awaited and streams support explicit cleanup and task cancellation.
- Python and JavaScript share contract fixtures for provider requests, sponsored blocks, no-fill reasons and tracking. Runtime differences and simulated-test boundaries are documented in the parity matrix.
- JavaScript package documentation corrects streaming, React and configuration examples and links to the Python integration guide.
See the Python SDK guide for installation and examples.
TypeScript SDK 2.0.3 and Python SDK 0.2.0
- Ad matching always uses local embeddings. If you previously disabled local embeddings, remove that configuration before upgrading.
- If local embedding fails, the SDK returns no ad without sending prompt text to NotPixel. Handle this case by continuing your application’s normal response.
See Privacy for setup and troubleshooting.
Integration features
- Use public publisher IDs from your dashboard in SDK and HTTP requests.
- Keep the returned ad tracking identifiers when passing ads from your backend to your interface so impressions, clicks and conversions remain associated with the correct ad.
- Use a stable
requestIdwhen retrying a direct HTTP ad request and anexternalIdwhen tracking a conversion to avoid duplicate events.
See the HTTP API reference and Browser Tracking.
Last updated on
Was this helpful?