open-index/open-npm huggingface dataset:
npm package: @recruitnepal/shared-packages
Description: Shared hooks, API client, types and utils for Recruit Nepal (CV builder UI and preprocess stay in each repo)
Latest version: 1.8.9

# @recruit-nepal/shared-packages

Shared UI components and hooks for Recruit Nepal projects.

## Installation

```bash
npm install @recruit-nepal/shared-packages
# or
yarn add @recruit-nepal/shared-packages
```

## Setup

Before using any API-related functionality, initialize the API client with your base URL:

```typescript
import { initApi } from '@recruit-nepal/shared-packages';

// Initialize API client
initApi({
  baseURL: process.env.NEXT_PUBLIC_API_BASE_URL || 'http://localhost:8000',
});
```

## Usage

### Hook: useGetAllVacancy

```typescript
import { useGetAllVacancy } from '@recruit-nepal/shared-packages';

function MyComponent() {
  const { vacancies, isLoading, total, pagination } = useGetAllVacancy({
    publicFetch: true,
    mode: 'paged',
    page: 1,
    limit: 50,
    token: 'your-auth-token', // Optional, required if publicFetch is false
  });

  // Use vacancies, isLoading, etc.
}
```

### Component: JobsClient

```typescript
import { JobsClient } from '@recruit-nepal/shared-packages';
import { useGetAllVacancy } from '@recruit-nepal/shared-packages';

function JobsPage() {
  const { vacancies, total } = useGetAllVacancy({
    publicFetch: true,
    mode: 'all',
  });

  return (
    <JobsClient
      initialVacancies={vacancies}
      initialQuery=""
      initialLocation=""
      initialCategory=""
      totalJobs={total}
      // Optional: Provide custom components
      headerComponent={YourCustomHeader}
      jobListingComponent={YourCustomJobListing}
    />
  );
}
```

## API Client

The API client provides a centralized way to manage API endpoints:

```typescript
import { API, getBaseURL } from '@recruit-nepal/shared-packages';

// Get vacancy list endpoint
const vacanciesUrl = API.vacancies.list();

// Get specific vacancy endpoint
const vacancyUrl = API.vacancies.byId('123');

// Get base URL
const baseUrl = getBaseURL();
```

## Types

All TypeScript types are exported for use in your project:

```typescript
import type {
  SingleVacancyRes,
  VacancyApiRes,
  Pagination,
} from '@recruit-nepal/shared-packages';
```

## Development

```bash
# Build the package
npm run build

# Watch mode
npm run dev
```

## Publishing

```bash
npm publish
```
# recruit-shared-packages

# recruit-shared-packages

# recruit-shared-packages
npm package: @recruspace/career-page-component
Description: Web Component that displays your open Recruspace Job Posts
Latest version: 1.0.2

[Recruspace](https://app.recruspace.com/) Career Page Web Component

# About

Recruspace Career Page Component is a Web Component that displays your company's open job positions on [Recruspace](https://app.recruspace.com/)

# Installation

npm

```bash
npm install @recruspace/career-page-component
```

script

```html
<script type="module" src="https://unpkg.com/@recruspace/career-page-component"></script>
<!--
To avoid unpkg.com redirects to the actual file, you can also directly import:
https://unpkg.com/@recruspace/career-page-component@1.0.0/dist/recruspace-career/recruspace-career.esm.js
-->
```

# Usage

## Vanilla.js

### using npm:

```bash
npm install @recruspace/career-page-component
```

index.html

```html
<html lang="en">
  <body>
    <div id="app">
      <recruspace-career slug="<your-company-slug>" />
    </div>
    <script type="module" src="/main.js"></script>
  </body>
</html>
```

main.js

import from node_modules

```js
import '@recruspace/career-page-component'
```

use loader function

```js
import { defineCustomElements } from '@recruspace/career-page-component/loader'
defineCustomElements()
```

### using a script tag:

```html
<html lang="en">
  <head>
    <script type="module" src="https://unpkg.com/@recruspace/career-page-component"></script>
  </head>
  <body>
    <div id="app">
      <recruspace-career slug="<your-company-slug>" />
    </div>
    <script type="module" src="/main.js"></script>
  </body>
</html>
```

## React / Vite & TS

```bash
npm install @recruspace/career-page-component
```

main.tsx

```tsx
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import App from './App.tsx'
import './index.css'

createRoot(document.getElementById('root')!).render(
  <StrictMode>
    <App />
  </StrictMode>,
)
```

App.tsx

import from node_modules

```tsx
import '@recruspace/career-page-component'

function App() {
  return (
    <>
      <div>
        <recruspace-career slug="<your-company-slug>" />
      </div>
    </>
  )
}

export default App
```

use loader function

```tsx
import { defineCustomElements } from '@recruspace/career-page-component/loader'
defineCustomElements()

function App() {
  return (
    <>
      <div>
        <recruspace-career slug="<your-company-slug>" />
      </div>
    </>
  )
}

export default App
```
npm package: @recs/react
Description: recs - *Reminiscent [of an] Entity Component System*
Author: Isaac Mason
Latest version: 0.0.14

# @recs/react 🦖

recs - *Reminiscent [of an] Entity Component System*

react glue for recs.

```bash
> yarn add @recs/react
```

## Getting Started

**coming soon!**
npm package: @rectangleswap/v3-lm-pool
Description: Liquidity Mining Pool (LM Pool) is a separate contract for liquidity mining reward accounting. It is not meant to be deployed manually. It will be deployed automatically by MasterChefV3 with LmPoolDeployer whenever there is a new liquidity mining campaign
Latest version: 1.0.0

# v3-lm-pool

Liquidity Mining Pool (LM Pool) is a separate contract for liquidity mining
reward accounting.
It is not meant to be deployed manually.
It will be deployed automatically by MasterChefV3 with LmPoolDeployer whenever
there is a new liquidity mining campaign.
As for testing, please check the tests in MasterChefV3 which is the main testing
entry point to test the correctness of the reward calculation.
npm package: @rectangular-labs/emails
Description: Unified email client with multiple provider drivers
Latest version: 0.1.0

# @rectangular-labs/emails

A unified email client with multiple provider drivers for sending transactional emails.

- Documentation: `apps/docs` → Emails
  - Quickstart, Providers, and API reference are available on the docs site

Please refer to the docs instead of this README for usage and API details.
npm package: @rectangular-labs/loro-file-system
Description: A library for working with the loro CRDT tree as a filesystem.
Latest version: 0.0.1

# @rectangular-labs/loro-file-system

A TypeScript library for working with the `loro-crdt` tree as a virtual filesystem.

- Documentation: `loro-file-system/docs` → LoroFileSystem
  - Quickstart and API reference are available on the docs site

Please refer to the docs instead of this README for usage and API details.
npm package: @rectangular-labs/result
Description: Provides a Result type for explicit error handling in TypeScript.
Latest version: 0.0.2

# @rectangular-labs/result

A TypeScript library providing `Result` (`Ok<T>` | `Err<E>`) for explicit error handling.

- Documentation: `apps/docs` → Result
  - Quickstart and API reference are available on the docs site

Please refer to the docs instead of this README for usage and API details.