open-index/open-npm huggingface dataset:
npm package: @husamnas/vuelib
Description: ## Vite, Tailwind CSS, Storybook.js
Author: Husam Nasrallah
Latest version: 0.0.2

# Vue 3 Component Library

## Vite, Tailwind CSS, Storybook.js

## Instructions

### Setup

npm install

### Build library

npm run build

### Run storybook instance locally

npm run storybook

### Build storybook for production

npm run build-storybook
npm package: @husar.ai/mcp
Description: Machine Common Protocol for husar AI
Author: Aexol
Latest version: 0.2.12

# MCP Husar Server

This repo provides a minimal MCP server that parses markup/components into CMS shapes/models and upserts them to a Husar-compatible GraphQL API.

## Add to Cursor
[![Install MCP Server](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=husar-mcp&config=eyJjb21tYW5kIjoibnB4IC15IEBodXNhci5haS9tY3AiIn0%3D)

Add the server to your workspace/global `mcp.json`:
```mcp
{
  "husar-mcp": {
    "command": "npx",
    "args": ["-y", "@husar.ai/mcp"]
  }
}
```


## Add to VSC
Add the server to your workspace/global `mcp.json`:
```mcp
{
  "husar-mcp": {
    "command": "npx",
    "args": ["-y", "@husar.ai/mcp"]
  }
}
```

## Add to Codex
Update `~/.codex/config.toml` and add:
```mcp
[mcp_servers.husar-mcp]
command = "npx"
args = ["-y", "@husar.ai/mcp"]
```

## Configuration
- Source: Reads Husar CMS host and admin token via `config-maker` in the `husar` namespace.
- Keys: `host` and `adminToken`.
- How to set:
  - Run `npx @husar.ai/cli generate` and enter your CMS host when prompted (saves `host`).
  - On first MCP use, you will be prompted for the admin token (saves `adminToken`).
  - Alternatively, pre-seed both values using your preferred method of writing to the `config-maker` store.

No MCP-specific env configuration is required anymore.
### MCP Functions

#### cms_parse_file
- Description: Parse a CMS file into a shape or model and upsert it to the configured Husar CMS.
- Parameters:
```
{
  path: z
    .string()
    .min(1)
    .describe(
      'Path to the component/file. Accepts absolute paths or paths relative to the workspace root. Examples: "packages/playground/src/pages/examples/ContactForm.tsx" or "/home/user/repo/.../FeatureGrid.tsx". Supported: .tsx/.jsx/.ts/.js/.html',
    ),
  type: z
    .enum(['model', 'shape'])
    .optional()
    .default('shape')
    .describe('Target in CMS. Use "shape" for UI/component structures (default), or "model" for data models.'),
  name: z
    .string()
    .optional()
    .describe(
      'Optional CMS name. Must not contain dashes (-). Prefer lowercase with underscores (e.g., examples_contactform). Defaults to the filename (lowercased).',
    ),
}
```
npm package: @husar.ai/render
Description: Content renderer for husar CMS
Author: Aexol
Latest version: 0.4.2

## Installation

1. Install required packages
```bash
npm i @husar.ai/i18-drawer react next
```

2. Add `LocaleTX` component to your `_app` file. Optionally pass `api` prop.

```tsx
import type { AppProps } from 'next/app'
import { LocaleTX } from '@husar.ai/i18-drawer';
import '@husar.ai/i18-drawer/dist/styles.css';
 
export default function MyApp({ Component, pageProps }: AppProps) {
  return <>
    <Component {...pageProps} />
    <LocaleTX {...pageProps} />
    {/* <LocaleTX {...pageProps} api='/api/i18-drawer' /> */}
  </>
}
```

3. Add API route `/api/i18-drawer`. Setup path to the `locales` folder.

```ts
import { APIHandler } from '@husar.ai/i18-drawer';

export default APIHandler('src/locales');
```
If you want to have a bit more control you can write API handler yourself. You can use `saveChanges` function to save changes in locales.
```ts
import { LocaleChanges, saveChanges } from '@husar.ai/i18-drawer';
import { NextApiRequest, NextApiResponse } from 'next';

export default (req: NextApiRequest, res: NextApiResponse) => {
  saveChanges(req.body as LocaleChanges, 'src/locales');
  res.send('OK');
};

```

4. If you have error `Can't resolve 'fs'` change webpack config in `next.config.js`.
```js
module.exports = {
  webpack: (config) => {
    // Disable fallback for the 'fs' module
    config.resolve.fallback = { fs: false, path: false };
  
    return config;
  }
};
```
npm package: @husar.ai/ssr
Description: Server side renderer for husar CMS
Author: Aexol
Latest version: 0.4.2

## Installation

1. Install required packages
```bash
npm i @husar.ai/i18-drawer react next
```

2. Add `LocaleTX` component to your `_app` file. Optionally pass `api` prop.

```tsx
import type { AppProps } from 'next/app'
import { LocaleTX } from '@husar.ai/i18-drawer';
import '@husar.ai/i18-drawer/dist/styles.css';
 
export default function MyApp({ Component, pageProps }: AppProps) {
  return <>
    <Component {...pageProps} />
    <LocaleTX {...pageProps} />
    {/* <LocaleTX {...pageProps} api='/api/i18-drawer' /> */}
  </>
}
```

3. Add API route `/api/i18-drawer`. Setup path to the `locales` folder.

```ts
import { APIHandler } from '@husar.ai/i18-drawer';

export default APIHandler('src/locales');
```
If you want to have a bit more control you can write API handler yourself. You can use `saveChanges` function to save changes in locales.
```ts
import { LocaleChanges, saveChanges } from '@husar.ai/i18-drawer';
import { NextApiRequest, NextApiResponse } from 'next';

export default (req: NextApiRequest, res: NextApiResponse) => {
  saveChanges(req.body as LocaleChanges, 'src/locales');
  res.send('OK');
};

```

4. If you have error `Can't resolve 'fs'` change webpack config in `next.config.js`.
```js
module.exports = {
  webpack: (config) => {
    // Disable fallback for the 'fs' module
    config.resolve.fallback = { fs: false, path: false };
  
    return config;
  }
};
```