open-index/open-npm huggingface dataset:
npm package: @odesssa/partners
Description: ##
Latest version: 3.1.0

# @odesssa/Partners

##

````markdown
# @odesssa/partners

The `@odesssa/partners` SDK provides a TypeScript-first, configurable interface to interact with the Odessa Partners API. It is part of the broader Odessa ecosystem and is intended to be easy to configure, consume, and extend.

---

## 📦 Installation

Install the package via your preferred package manager.

### Using npm

```bash
npm install @odesssa/partners
```
````

### Using pnpm

```bash
pnpm add @odesssa/partners
```

---

## ⚙️ Configuration

Before calling any APIs, you must configure the SDK using the `configure` function.

```ts
import Partners, { configure } from '@odesssa/partners'

configure({
  baseUrl: 'https://api.odessa.com',
  token: 'your-api-token',
  environment: 'production', // or 'test'
})
```

Call `configure()` once at the beginning of your app to ensure other modules can access the configuration.

---

## 🚀 Usage

### List Locations

Using the default export:

```ts
const locations = await Partners.LocationApi.listAsync()
console.log(locations)
```

Or import the API directly:

```ts
import { LocationApi } from '@odesssa/partners'

const locations = await LocationApi.listAsync()
```

---

## 🧪 Testing

This package uses **Jest** for unit testing. To run tests:

```bash
pnpm test
```

If working inside a monorepo:

```bash
pnpm --filter @odesssa/partners test
```

Test files live inside the `__tests__/` directory and follow standard Jest naming conventions.

---

## 🛠 Development

### Technologies Used

- **TypeScript** — strongly typed, modern JS
- **tsup** — fast bundler for TypeScript
- **pnpm** — performant package manager for monorepos
- **Jest** — zero-config testing

### Build Locally

```bash
pnpm build
```

This runs `tsup` to compile the source files into the `dist/` directory.

### Folder Structure

```
@odesssa/partners/
├── dist/                # Compiled output
├── src/                 # Source code
│   ├── apis/            # API handlers
│   │   └── LocationApi.ts
│   ├── config.ts        # Runtime config
│   └── index.ts         # Main entry point
├── __tests__/           # Jest tests
├── package.json
└── tsconfig.json
```

---

## 📁 Dependencies

### External

- `@odesssa/core` — shared logic for making HTTP requests
- `@odesssa/shared` — constants/utilities shared across packages (marked private, bundled during build)

### Internal

- `AppConfig` — module-level runtime configuration

---

## 📄 License

MIT © [Your Name or Company]

---

## 🙌 Contributing

This is part of a mono-repo managed via `pnpm` workspaces. Contributions, feature suggestions, and issues are welcome — feel free to open a PR or submit an issue through the main repo.

---

## 📬 Contact

For support, reach out to your Odessa team or the repo maintainers.

```

```