open-index/open-npm huggingface dataset:
npm package: @fasteerjs/websockets
Description: Websockets in Fasteer.js.
Author: Mia Lilian Morningstar
Latest version: 1.0.2

# Fasteer Websockets

Websockets in Fasteer.js.

## Getting started

The fastify-websocket plugin is already registered, there is no need to register it manually.
If you want to pass options to it, pass them inside the fastifyWebsocket property:

```ts
app.plugin(
  fasteerWebsockets({
    fastifyWebsocket: {
      // fastify websockets
    },
  })
);
```

### Shorthand route

Fasteer adds a `ws` (and `websocket` as an alias) function to `FastifyInstance` - it's a shorthand function for defining
WebSocket routes. The signature is:

```ts
function ws(
  path: string,
  middlewares?: WebsocketMiddleware | WebsocketMiddleware[],
  opts?: WebsocketRouteOptions,
  handler: (conn: SocketStream, req: FastifyRequest) => any
): FastifyInstance;
```

### Middlewares

Middlewares are executed before the route handler and can end the connection by passing false as their return value.

#### Global Middlewares

They can be registered by passing them into `globalMiddlewares`:

```ts
import { fasteerWebsockets, keepAlive } from "@fasteerjs/websockets";

app.plugin(
  fasteerWebsockets({
    // ...
    globalMiddlewares: [
      // middlewares here
      keepAlive,
    ],
  })
);
```

#### Per-route Middlewares

They can be registered inside of the shorthand, like so:

```ts
import { Fasteer } from "@fasteerjs/fasteer";

const WsController: Fasteer.FCtrl = async app => {
  app.ws("/path", [middleware], async (req, res) => {
    //
  });
};

export default WsController;
```

#### Definining Middlewares

Middlewares are just functions with the following signature:

```ts
function middleware(
  conn: SocketStream,
  req: FastifyRequest,
  app: FasteerInstance
): Promise<boolean>;
```

Additionally, there is a legacy way supporting callbacks, but it is not recommended.

```ts
function middleware(
  conn: SocketStream,
  req: FastifyRequest,
  app: FasteerInstance,
  done: (result: boolean) => void
): unknown;
```

Notice how the middleware returns a boolean - if the boolean returned is `false`, the next middleware won't be called and the connection
will be ended.
npm package: @fastenhealth/fasten-stitch-element-react-native
Description: A lightweight React Native SDK that embeds the Fasten Connect experience inside any React Native application. The package wraps the Stitch.js workflow in a pair of coordinated `WebView`s so you can authenticate with provider portals and receive connection
Latest version: 1.0.0

# Fasten Connect React Native SDK (Beta)

A lightweight React Native SDK that embeds the Fasten Connect experience inside any React Native application. The
package wraps the Stitch.js workflow in a pair of coordinated `WebView`s so you can authenticate with provider portals
and receive connection events without leaving your native app.

> **Status:** Beta – APIs may change and you should validate the integration in your environment before shipping to
> production.

## Installation

Add the package to your project along with its React Native peer dependency:

```bash
npm install @fastenhealth/stitch-react-native react-native-webview
# or
yarn add @fastenhealth/stitch-react-native react-native-webview
```

`react-native-base64` is bundled with the SDK. If you do not already have `react-native-webview` installed, follow the
[official installation guide](https://github.com/react-native-webview/react-native-webview#installation) for your
platform(s).

## Usage

```tsx
import { FastenStitchElement } from 'fasten-connect-stitch-react-native';

const CUSTOMER_PUBLIC_ID = 'public_test_...';

export const ConnectScreen = () => (
  <FastenStitchElement
    publicId={CUSTOMER_PUBLIC_ID}
    debugModeEnabled
    onEventBus={(event) => {
      console.log('Fasten event', event);
    }}
  />
);
```

`FastenStitchElement` renders to fill the available space, so wrap it in a container that matches how you want it to appear in
your layout (e.g., a `View` with `flex: 1`).

### Props

The component accepts the following options (matching the Stitch.js widget configuration):

- `publicId` (**required**) – Your Fasten Connect public identifier.
- `externalId` – Identifier you want to associate with the patient/session.
- `reconnectOrgConnectionId` – Reconnect a previously established patient connection.
- `searchOnly`, `searchQuery`, `searchSortBy`, `searchSortByOpts`, `showSplash` – Configure the provider search
  experience.
- `brandId`, `portalId`, `endpointId` – Restrict the experience to a specific brand/portal/endpoint.
- `tefcaMode` -  Enable TEFCA flows
- `eventTypes` – Comma-delimited list of event types to receive.
- `debugModeEnabled` – Surfaces debugging tools in the embedded web views.
- `onEventBus` – Callback invoked with parsed payloads sent from Fasten Connect (e.g., when a connection is created).

Refer to `FastenConnectOptions` in `src/FastenStitchElement.tsx` for the complete, documented type definition.

## Building the SDK locally

Transpile TypeScript to the distributable `dist/` folder:

```bash
npm run build
```

## Feedback

Please open an issue with any bugs or requests. Your feedback will help us stabilize the public SDK interface.
npm package: @faster-crud/auth
Description: JWT auth integration for @faster-crud with NestJS guards and decorators
Latest version: 0.2.2

# @faster-crud/auth

[![npm](https://img.shields.io/npm/v/@faster-crud/auth?style=flat-square)](https://www.npmjs.com/package/@faster-crud/auth)

JWT auth helpers for @faster-crud — guards and decorators for protecting CRUD operations.

## Install

```bash
npm install @faster-crud/core @faster-crud/auth @nestjs/jwt
```

## Usage

```ts
import { CrudAuthGuard, CurrentUser } from '@faster-crud/auth';
import { UseGuards } from '@nestjs/common';

// Protect all endpoints in a controller
@UseGuards(CrudAuthGuard)
@Controller('posts')
export class PostsController extends CrudControllerFactory(Post, PostsService) {}

// Access current user in custom endpoints
@Get('my-posts')
async myPosts(@CurrentUser() user: JwtPayload) {
  return this.service.findAll({ filters: { authorId: { op: 'eq', value: user.sub } } });
}
```

## Documentation

Full docs at [github.com/bkmashiro/nest-faster-crud](https://github.com/bkmashiro/nest-faster-crud)

## Ecosystem

| Package | Description |
|---------|-------------|
| [`@faster-crud/core`](https://www.npmjs.com/package/@faster-crud/core) | Decorators and types |
| [`@faster-crud/nest`](https://www.npmjs.com/package/@faster-crud/nest) | NestJS controller factory |
| [`@faster-crud/typeorm`](https://www.npmjs.com/package/@faster-crud/typeorm) | TypeORM adapter |
| [`@faster-crud/prisma`](https://www.npmjs.com/package/@faster-crud/prisma) | Prisma adapter |
npm package: @faster-crud/drizzle
Description: Drizzle adapter for @faster-crud
Latest version: 0.2.2

# @faster-crud/drizzle

[![npm](https://img.shields.io/npm/v/@faster-crud/drizzle?style=flat-square)](https://www.npmjs.com/package/@faster-crud/drizzle)

Drizzle ORM adapter for @faster-crud.

## Install

```bash
npm install @faster-crud/core @faster-crud/drizzle drizzle-orm
```

## Usage

```ts
import { DrizzleResourceService } from '@faster-crud/drizzle';
import { Post } from './post.entity';
import { posts } from './schema';

export class PostsService extends DrizzleResourceService(Post) {
  constructor(db: DrizzleDB) {
    super(db, posts);
  }
}
```

## Documentation

Full docs at [github.com/bkmashiro/nest-faster-crud](https://github.com/bkmashiro/nest-faster-crud)

## Ecosystem

| Package | Description |
|---------|-------------|
| [`@faster-crud/core`](https://www.npmjs.com/package/@faster-crud/core) | Decorators and types |
| [`@faster-crud/nest`](https://www.npmjs.com/package/@faster-crud/nest) | NestJS controller factory |
| [`@faster-crud/typeorm`](https://www.npmjs.com/package/@faster-crud/typeorm) | TypeORM adapter |
| [`@faster-crud/prisma`](https://www.npmjs.com/package/@faster-crud/prisma) | Prisma adapter |
npm package: @faster-crud/express
Description: Express adapter for @faster-crud
Latest version: 0.2.2

# @faster-crud/express

[![npm](https://img.shields.io/npm/v/@faster-crud/express?style=flat-square)](https://www.npmjs.com/package/@faster-crud/express)

Express adapter for @faster-crud — CRUD router for Express.

## Install

```bash
npm install @faster-crud/core @faster-crud/express express
```

## Usage

```ts
import express from 'express';
import { createCrudRouter } from '@faster-crud/express';
import { Post } from './post.entity';
import { postService } from './posts.service';

const app = express();
app.use('/posts', createCrudRouter(Post, postService));
```

## Documentation

Full docs at [github.com/bkmashiro/nest-faster-crud](https://github.com/bkmashiro/nest-faster-crud)

## Ecosystem

| Package | Description |
|---------|-------------|
| [`@faster-crud/core`](https://www.npmjs.com/package/@faster-crud/core) | Decorators and types |
| [`@faster-crud/nest`](https://www.npmjs.com/package/@faster-crud/nest) | NestJS controller factory |
| [`@faster-crud/typeorm`](https://www.npmjs.com/package/@faster-crud/typeorm) | TypeORM adapter |
| [`@faster-crud/prisma`](https://www.npmjs.com/package/@faster-crud/prisma) | Prisma adapter |
npm package: @faster-crud/fastify
Description: Fastify adapter for @faster-crud
Latest version: 0.2.2

# @faster-crud/fastify

[![npm](https://img.shields.io/npm/v/@faster-crud/fastify?style=flat-square)](https://www.npmjs.com/package/@faster-crud/fastify)

Fastify adapter for @faster-crud — CRUD plugin for Fastify.

## Install

```bash
npm install @faster-crud/core @faster-crud/fastify fastify
```

## Usage

```ts
import Fastify from 'fastify';
import { crudPlugin } from '@faster-crud/fastify';
import { Post } from './post.entity';
import { postService } from './posts.service';

const app = Fastify();
await app.register(crudPlugin, { entity: Post, service: postService, prefix: '/posts' });
```

## Documentation

Full docs at [github.com/bkmashiro/nest-faster-crud](https://github.com/bkmashiro/nest-faster-crud)

## Ecosystem

| Package | Description |
|---------|-------------|
| [`@faster-crud/core`](https://www.npmjs.com/package/@faster-crud/core) | Decorators and types |
| [`@faster-crud/nest`](https://www.npmjs.com/package/@faster-crud/nest) | NestJS controller factory |
| [`@faster-crud/typeorm`](https://www.npmjs.com/package/@faster-crud/typeorm) | TypeORM adapter |
| [`@faster-crud/prisma`](https://www.npmjs.com/package/@faster-crud/prisma) | Prisma adapter |