
Security News
Deno 2.6 + Socket: Supply Chain Defense In Your CLI
Deno 2.6 introduces deno audit with a new --socket flag that plugs directly into Socket to bring supply chain security checks into the Deno CLI.
@vyuh/react-feature-system
Advanced tools
Core building blocks for creating content-driven React applications
Website • Documentation • GitHub
@vyuh/react-feature-system provides a comprehensive set of content components
and layouts for building content-driven applications with the Vyuh framework. It
includes:
npm install @vyuh/react-feature-system
# or
yarn add @vyuh/react-feature-system
# or
pnpm add @vyuh/react-feature-system
Include the system feature in your Vyuh application:
import { VyuhProvider } from '@vyuh/react-core';
import { feature as systemFeature } from '@vyuh/react-feature-system';
function App() {
return (
<VyuhProvider features={() => [systemFeature]} plugins={yourPlugins}>
<YourApp />
</VyuhProvider>
);
}
The content components can be used directly or through the content system:
import { Card, Group, PortableText } from '@vyuh/react-feature-system';
import { useVyuh } from '@vyuh/react-core';
function MyComponent() {
const { plugins } = useVyuh();
// Render content from CMS
return plugins.content.render({
_type: 'vyuh.card',
title: 'My Card',
description: 'This is a card component',
image: {
/* image reference */
},
});
}
You can extend the system with custom layouts:
import { LayoutConfiguration, TypeDescriptor } from '@vyuh/react-core';
import { Card } from '@vyuh/react-feature-system';
class MyCustomCardLayout extends LayoutConfiguration<Card> {
static readonly schemaName = 'my-feature.card.layout.custom';
static typeDescriptor = new TypeDescriptor(this.schemaName, this);
constructor() {
super({
schemaType: MyCustomCardLayout.schemaName,
title: 'Custom Card Layout',
});
}
render(content: Card) {
return (
<div className="my-custom-card">
<h2>{content.title}</h2>
<p>{content.description}</p>
{/* Custom rendering logic */}
</div>
);
}
}
Then include your custom layout in your feature descriptor:
import { FeatureDescriptor } from '@vyuh/react-core';
import { ContentExtensionDescriptor } from '@vyuh/react-extension-content';
import { CardDescriptor } from '@vyuh/react-feature-system';
import { Command } from 'lucide-react';
import React from 'react';
// Import your custom layout
import { MyCustomCardLayout } from './layouts/my-custom-card-layout';
export const myFeature = new FeatureDescriptor({
name: 'my-feature',
title: 'My Feature',
description: 'A custom feature with custom layouts',
icon: <Command />,
extensions: [
new ContentExtensionDescriptor({
contents: [
// Include your custom layout in the CardDescriptor
new CardDescriptor({
layouts: [MyCustomCardLayout.typeDescriptor],
}),
// Other content descriptors
],
contentBuilders: [
// Your content builders
],
}),
],
// Initialization logic
init: async () => {
console.log('My feature with custom layouts initialized');
},
});
The package includes the following content types:
| Component | Description |
|---|---|
Route | Page-level content container with regions |
Card | Versatile content card with various layouts |
Group | Container for organizing multiple content items |
Accordion | Collapsible content sections |
PortableText | Rich text content with embedded blocks |
Divider | Visual separator between content sections |
VideoPlayer | Video playback component |
APIContent | Dynamic content from API endpoints |
ConditionalContent | Content that renders based on conditions |
ConditionalRoute | Routes that render based on conditions |
Each content type supports multiple layouts:
The package includes built-in styles using Tailwind CSS:
// Import the styles in your application
import '@vyuh/react-feature-system/styles.css';
You can customize the appearance by:
For more detailed documentation, visit docs.vyuh.tech.
We welcome contributions to the Vyuh platform! Please see our contributing guidelines for more information.
MIT © Vyuh Technologies
FAQs
System feature package for Vyuh React framework
We found that @vyuh/react-feature-system demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer 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
Deno 2.6 introduces deno audit with a new --socket flag that plugs directly into Socket to bring supply chain security checks into the Deno CLI.

Security News
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.