
Security News
/Research
Fake Corepack Site Distributes Infostealer and Proxyware to Developers
A fake corepack.org site is impersonating the Node.js tool and delivers an infostealer and proxyware to developers who download it.
@json-render/core
Advanced tools
JSON becomes real things. Define your catalog, register your components, let AI generate.
Predictable. Guardrailed. Fast. Core library for safe, user-prompted UI generation.
npm install @json-render/core
# or
pnpm add @json-render/core
import { createCatalog } from '@json-render/core';
import { z } from 'zod';
const catalog = createCatalog({
name: 'My Dashboard',
components: {
Card: {
props: z.object({
title: z.string(),
description: z.string().nullable(),
}),
hasChildren: true,
description: 'A card container',
},
Button: {
props: z.object({
label: z.string(),
action: ActionSchema,
}),
description: 'A clickable button',
},
},
actions: {
submit: { description: 'Submit the form' },
export: {
params: z.object({ format: z.enum(['csv', 'pdf']) }),
description: 'Export data',
},
},
functions: {
customValidation: (value) => typeof value === 'string' && value.length > 0,
},
});
import { visibility, evaluateVisibility } from '@json-render/core';
// Simple path-based visibility
const element1 = {
key: 'error-banner',
type: 'Alert',
props: { message: 'Error!' },
visible: { path: '/form/hasError' },
};
// Auth-based visibility
const element2 = {
key: 'admin-panel',
type: 'Card',
props: { title: 'Admin' },
visible: { auth: 'signedIn' },
};
// Complex logic
const element3 = {
key: 'notification',
type: 'Alert',
props: { message: 'Warning' },
visible: {
and: [
{ path: '/settings/notifications' },
{ not: { path: '/user/dismissed' } },
{ gt: [{ path: '/items/count' }, 10] },
],
},
};
// Evaluate visibility
const isVisible = evaluateVisibility(element1.visible, {
dataModel: { form: { hasError: true } },
});
import { resolveAction, executeAction } from '@json-render/core';
const buttonAction = {
name: 'refund',
params: {
paymentId: { path: '/selected/id' },
amount: 100,
},
confirm: {
title: 'Confirm Refund',
message: 'Refund $100 to customer?',
variant: 'danger',
},
onSuccess: { navigate: '/payments' },
onError: { set: { '/ui/error': '$error.message' } },
};
// Resolve dynamic values
const resolved = resolveAction(buttonAction, dataModel);
import { runValidation, check } from '@json-render/core';
const config = {
checks: [
check.required('Email is required'),
check.email('Invalid email'),
check.maxLength(100, 'Too long'),
],
validateOn: 'blur',
};
const result = runValidation(config, {
value: 'user@example.com',
dataModel: {},
});
// result.valid = true
// result.errors = []
evaluateVisibility(condition, context) - Evaluate a visibility conditionevaluateLogicExpression(expr, context) - Evaluate a logic expressionvisibility.* - Helper functions for creating visibility conditionsresolveAction(action, dataModel) - Resolve dynamic values in an actionexecuteAction(context) - Execute an action with callbacksinterpolateString(template, dataModel) - Interpolate ${path} in stringsrunValidation(config, context) - Run validation checksrunValidationCheck(check, context) - Run a single validation checkbuiltInValidationFunctions - Built-in validators (required, email, min, max, etc.)check.* - Helper functions for creating validation checkscreateCatalog(config) - Create a catalog with components, actions, and functionsgenerateCatalogPrompt(catalog) - Generate an AI prompt describing the catalogSee src/types.ts for full type definitions:
UIElement - Base element structureUITree - Flat tree structureVisibilityCondition - Visibility condition typesLogicExpression - Logic expression typesAction - Rich action definitionValidationConfig - Validation configurationFAQs
JSON becomes real things. Define your catalog, register your components, let AI generate.
The npm package @json-render/core receives a total of 508,322 weekly downloads. As such, @json-render/core popularity was classified as popular.
We found that @json-render/core demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
/Research
A fake corepack.org site is impersonating the Node.js tool and delivers an infostealer and proxyware to developers who download it.

Research
/Security News
A large-scale campaign abused GitHub Actions in compromised repositories to exploit CVE-2026-41940 in cPanel and WHM and steal server credentials.

Security News
Five frontier LLMs generated the same nonexistent package names, leaving 53 available for potential slopsquatting across PyPI and npm.