open-index/open-npm huggingface dataset:
npm package: @linkbycar/lbc-api-sdk
Description: This repository contains the build tooling and configuration for generating the TypeScript SDK for the LinkByCar API from OpenAPI specifications.
Latest version: 1.1.0

# LBC API SDK Generator

This repository contains the build tooling and configuration for generating the TypeScript SDK for the LinkByCar API from OpenAPI specifications.

## Overview

The SDK is auto-generated from OpenAPI specs using `openapi-generator-cli`. The build process:

1. Fetches the OpenAPI specification from the API server
2. Generates TypeScript code using `openapi-generator-cli` (via Docker)
3. Builds the SDK with TypeScript
4. Copies the output to the `dist/` directory for publishing

## Prerequisites

- Docker
- Node.js
- `curl` and `jq` (for fetching OpenAPI specs)

## Building the SDK

### Fetch OpenAPI Specifications

```bash
# For development environment
make fetch-openapi-dev

# For production environment
make fetch-openapi-prod
```

This fetches the OpenAPI spec from:

- **Dev**: `https://api2.linkbycar.dev/v1/openapi.json`
- **Prod**: `https://api.linkbycar.com/v1/openapi.json`

### Generate the SDK

```bash
# For development environment
make sdk-dev

# For production environment
make sdk-prod
```

The `make_sdk.sh` script:

- Runs `openapi-generator-cli` in Docker to generate TypeScript code
- Installs dependencies in the generated SDK
- Builds the TypeScript code
- Copies the built output to `dist/`

### Publishing

The publish commands publish the contents of the root `dist/` directory to npm. The `dist/` directory is populated by copying the built output from `src-dev/dist` or `src-prod/dist` after running the build commands.

```bash
# Publish development version (with --tag dev)
make publish-dev

# Publish production version
make publish-prod
```

**Note**: These commands run `npm publish` from the root directory, which publishes the `dist/` folder as specified in the root `package.json`.

## Project Structure

```
lbc-api-sdk/
├── dist/              # Built SDK output (published to npm)
├── src-dev/          # Development environment SDK source
│   ├── openapi.json  # Dev OpenAPI spec
│   ├── src/          # Generated TypeScript source
│   └── dist/         # Built output (copied to root dist/)
├── src-prod/         # Production environment SDK source
│   ├── openapi.json  # Prod OpenAPI spec
│   ├── src/          # Generated TypeScript source
│   └── dist/         # Built output (copied to root dist/)
├── makefile          # Build commands
├── make_sdk.sh       # SDK generation script
└── fetch_openapi.sh  # OpenAPI spec fetcher
```

## Build Process Details

The `make_sdk.sh` script uses:

- **Generator**: `typescript-fetch`
- **Docker image**: `openapitools/openapi-generator-cli:v7.10.0`
- **Options**: `prependFormOrBodyParameters=true,enumPropertyNaming=camelCase,supportsES6=true,withInterfaces=true,withoutRuntimeChecks=true`

The generated SDK is configured in `src-dev/package.json` and `src-prod/package.json` with build scripts that compile both CommonJS and ESM outputs.

## API Environments

- **Development**: `https://api2.linkbycar.dev/v1`
- **Production**: `https://api.linkbycar.com/v1`
npm package: @linkcat/linkcat-plugin-github-card
Description: This library was generated with [Nx](https://nx.dev).
Author: Exfluex
Latest version: 0.0.1

# linkcat-plugin-github-card

This library was generated with [Nx](https://nx.dev).

## Running unit tests

Run `nx test linkcat-plugin-github-card` to execute the unit tests via [Jest](https://jestjs.io).
npm package: @linkchain/vue-lcgrid
Description: A grid UI component for Vue 3 with customizable data sources
Author: komexeu
Latest version: 0.0.14

# Vue 3 + Vite

This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.

<a href="https://www.npmjs.com/package/@linkchain/vue-lcgrid">
    <img src="https://img.shields.io/npm/v/@linkchain/vue-lcgrid.svg" alt="npm">
</a>

## Recommended IDE Setup

- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).

## Installation

1. npm run start

## Mock

1. [msw](https://mswjs.io/) (API mocking for JavaScript)
   1. [範例參考](https://github.com/mswjs/examples/tree/main/examples/with-vue)
2. [fakejs](https://fakerjs.dev/) (Generate massive amounts of fake (but realistic) data for testing and development.)