open-index/open-npm huggingface dataset:
npm package: @mypdfcv/i18n
Description: Internationalization package for [MyPDFCV](https://mypdfcv.com) — 7 bundled locales with server and client entry points.
Latest version: 1.0.1

# @mypdfcv/i18n

Internationalization package for [MyPDFCV](https://mypdfcv.com) — 7 bundled locales with server and client entry points.

## Supported Locales

| Code | Language |
| --- | --- |
| `en` | English |
| `pt-BR` | Portuguese (Brazil) |
| `es` | Spanish |
| `it` | Italian |
| `zh` | Chinese |
| `ja` | Japanese |
| `de` | German |

## Installation

```bash
npm install @mypdfcv/i18n
```

## Usage

### Client (browser-safe)

```typescript
import { locales, defaultLocale, type Locale } from "@mypdfcv/i18n";

console.log(locales); // ["en", "pt-BR", "es", "it", "zh", "ja", "de"]
console.log(defaultLocale); // "en"
```

### Server

```typescript
import { getMessages, getNamespace } from "@mypdfcv/i18n/server";

// Get all messages for a locale
const messages = getMessages("ja");

// Get a specific namespace
const resume = getNamespace("ja", "resume");
console.log(resume.profile); // "プロフィール"
```

## Message Namespaces

Messages are organized by namespace: `common`, `landing`, `dashboard`, `editor`, `resume`, `ai`, `templates`, `footer`, `privacy`, `terms`, `cookies`, `contactPage`, `validation`, `mcp`.

## Related

- [@mypdfcv/pdf-core](https://www.npmjs.com/package/@mypdfcv/pdf-core) — Resume types, templates, and PDF generation
- [@mypdfcv/mcp-server](https://www.npmjs.com/package/@mypdfcv/mcp-server) — MCP server for AI-powered resume generation
- [MyPDFCV](https://mypdfcv.com) — The full resume builder app

## License

MIT
npm package: @mypdfcv/pdf-core
Description: Resume types, templates, validation schemas, and PDF generation for [MyPDFCV](https://mypdfcv.com). Works standalone — no Next.js required.
Latest version: 1.0.1

# @mypdfcv/pdf-core

Resume types, templates, validation schemas, and PDF generation for [MyPDFCV](https://mypdfcv.com). Works standalone — no Next.js required.

## Installation

```bash
npm install @mypdfcv/pdf-core
```

## Usage

### Client (browser-safe)

Types, templates, schemas, and utilities — no server dependencies.

```typescript
import {
  type Resume,
  type ResumeData,
  createEmptyResumeData,
  TEMPLATES,
  getTemplate,
} from "@mypdfcv/pdf-core";

// Create blank resume data
const data = createEmptyResumeData();

// List available templates
console.log(TEMPLATES.map(t => t.id));
// ["modern", "classic", "minimal", "executive", "bold", "balanced", "clear"]

// Get a specific template
const template = getTemplate("modern");
```

### Server (PDF generation)

```typescript
import { type Resume, createEmptyResumeData, generateId } from "@mypdfcv/pdf-core";
import { generateResumePDF } from "@mypdfcv/pdf-core/server";
import { getMessages } from "@mypdfcv/i18n/server";

const resume: Resume = {
  id: generateId(),
  name: "My Resume",
  templateId: "modern",
  status: "complete",
  createdAt: new Date().toISOString(),
  updatedAt: new Date().toISOString(),
  exportCount: 0,
  data: {
    ...createEmptyResumeData(),
    fullName: "John Doe",
    headline: "Software Engineer",
  },
};

const buffer = await generateResumePDF(resume, "en", getMessages("en"));
// buffer is a Node.js Buffer containing the PDF
```

## Templates

| ID | Name | Description |
| --- | --- | --- |
| `modern` | Modern | Clean layout with blue accents |
| `classic` | Classic | Traditional centered layout, text-only |
| `minimal` | Minimal | Sleek and minimal with green accents |
| `executive` | Executive | Navy sidebar for corporate roles |
| `bold` | Bold | Deep red header banner |
| `balanced` | Balanced | Dark sidebar with centered photo |
| `clear` | Clear | Teal header banner with right-aligned photo |

## Exports

### Main entry (`@mypdfcv/pdf-core`)

- **Types:** `Resume`, `ResumeData`, `ContactInfo`, `ExperienceEntry`, `EducationEntry`, `SkillGroup`, `ProjectEntry`
- **Templates:** `TEMPLATES`, `getTemplate()`, `getResumeStyle()`, `hexWithAlpha()`
- **Defaults:** `createEmptyResumeData()`
- **Schemas:** Zod validation schemas for all resume sections
- **Utilities:** `generateId()`, `formatMonthYear()`

### Server entry (`@mypdfcv/pdf-core/server`)

Everything from the main entry, plus:

- `generateResumePDF(resume, locale?, messages?)` — Returns a `Buffer` with the PDF
- `ResumePDFDocument` — React component for `@react-pdf/renderer`

## Peer Dependencies

- `react` ^18.0.0 || ^19.0.0

## Related

- [@mypdfcv/i18n](https://www.npmjs.com/package/@mypdfcv/i18n) — Internationalization with 7 bundled locales
- [@mypdfcv/mcp-server](https://www.npmjs.com/package/@mypdfcv/mcp-server) — MCP server for AI-powered resume generation
- [MyPDFCV](https://mypdfcv.com) — The full resume builder app

## License

MIT
npm package: @mypharma/react-native-text-input-mask
Description: Text input mask for React Native on iOS and Android.
Latest version: 0.5.8

# react-native-text-input-mask
Text input mask for React Native on iOS and Android.

## Examples

![React Native Text Input Mask iOS](https://s3.amazonaws.com/react-native-text-input-mask/react-native-text-input-mask-ios.gif)
![React Native Text Input Mask Android](https://s3.amazonaws.com/react-native-text-input-mask/react-native-text-input-mask-android-updated.gif)

## Setup

```bash
npm install --save @mypharma/react-native-text-input-mask
react-native link @mypharma/react-native-text-input-mask
```

For RN 0.47 use 0.3.2 version – `npm install --save @mypharma/react-native-text-input-mask@0.3.2`

## Usage

```javascript
import TextInputMask from '@mypharma/react-native-text-input-mask';
...
<TextInputMask
  refInput={ref => { this.input = ref }}
  onChangeText={(formatted, extracted) => {
    console.log(formatted) // +1 (123) 456-78-90
    console.log(extracted) // 1234567890
  }}
  mask={"+1 ([000]) [000] [00] [00]"}
/>
...
```

## More info

[RedMadRobot Input Mask Android](https://github.com/RedMadRobot/input-mask-android)

[RedMadRobot Input Mask IOS](https://github.com/RedMadRobot/input-mask-ios)

## Versioning

This project uses semantic versioning: MAJOR.MINOR.PATCH.
This means that releases within the same MAJOR version are always backwards compatible. For more info see [semver.org](http://semver.org/).