open-index/open-npm huggingface dataset:
npm package: @raystack/frontier
Description: A js library for frontier
Author: pyadav9678@gmail.com
Latest version: 0.96.2

# @raystack/frontier

Frontier JS SDK allows you to implement authentication in your [React](https://reactjs.org/) application quickly using Magic links and social sign-in. It also allows you to access the
SignIn, SignUp, user profile, Workspace creation, Workspace Profile etc. components.

Here is a quick guide on getting started with `@raystack/frontier` package.

## Step 1 - Create Instance

Get Frontier URL by instantiating [Frontier instance](https://github.com/odpf/frontier)
.

## Step 2 - Install package

Install `@raystack/frontier` library

```sh
npm i --save @raystack/frontier
OR
yarn add @raystack/frontier
```

## Step 3 - Configure Provider and use Frontier Components

Frontier comes with [react context](https://reactjs.org/docs/context.html) which serves as `Provider` component for the application

```jsx
import {
  FrontierProvider,
  Frontier,
  useFrontier
} from '@raystack/frontier/react';

const App = () => {
  return (
    <FrontierProvider
      config={{
        endpoint: 'http://localhost:3000',
        redirectLogin: window.location.origin,
        redirectSignup: window.location.origin,
        redirectMagicLinkVerify: window.location.origin
      }}
    >
      <SignIn />
    </FrontierProvider>
  );
};

const Profile = () => {
  const { user } = useFrontier();
  if (user) {
    return <div>{user.email}</div>;
  }
  return null;
};
```
npm package: @raystack/proton
Description: TypeScript/JavaScript client library for Raystack APIs generated from Protocol Buffer definitions
Author: Raystack
Latest version: 0.1.0-ac2df1932fcddcd7f7ff1af0ded07b14d73b781b

# @raystack/proton

TypeScript/JavaScript client library for Raystack APIs generated from Protocol Buffer definitions.

**NPM:** https://npmjs.com/package/@raystack/proton

## Installation

```bash
npm install @raystack/proton
```

For browser applications using TanStack Query:
```bash
npm install @raystack/proton @tanstack/react-query
```

## Usage

### Browser (React)

```typescript
import { FrontierService } from '@raystack/proton/frontier';
import { createConnectTransport } from '@connectrpc/connect-web';
import { createPromiseClient } from '@connectrpc/connect';

const transport = createConnectTransport({
  baseUrl: 'https://api.example.com'
});

const client = createPromiseClient(FrontierService, transport);

const users = await client.listUsers({ pageSize: 10 });
```

### Node.js

```typescript
import { FrontierService } from '@raystack/proton/frontier';
import { createConnectTransport } from '@connectrpc/connect-node';
import { createPromiseClient } from '@connectrpc/connect';

const transport = createConnectTransport({
  baseUrl: 'https://api.example.com',
  httpVersion: '2'
});

const client = createPromiseClient(FrontierService, transport);

const users = await client.listUsers({ pageSize: 10 });
```

### With TanStack Query

```typescript
import { FrontierServiceQueries } from '@raystack/proton/frontier';
import { useQuery } from '@tanstack/react-query';

function UsersList() {
  const { data, isLoading } = useQuery(
    FrontierServiceQueries.listUsers(transport, { pageSize: 10 })
  );

  if (isLoading) return <div>Loading...</div>;
  
  return (
    <ul>
      {data?.users?.map(user => (
        <li key={user.id}>{user.name}</li>
      ))}
    </ul>
  );
}
```

## Available Services

- `@raystack/proton/frontier` - Frontier API
- `@raystack/proton/compass` - Compass API  
- `@raystack/proton/assets` - Assets API
- `@raystack/proton/guardian` - Guardian API
- `@raystack/proton/entropy` - Entropy API
- `@raystack/proton/optimus` - Optimus API
- `@raystack/proton/predator` - Predator API
- `@raystack/proton/raccoon` - Raccoon API
- `@raystack/proton/siren` - Siren API
- `@raystack/proton/stencil` - Stencil API
- `@raystack/proton/common` - Common utilities

Each service export includes:
- Service client (e.g., `FrontierService`)
- TanStack Query helpers (e.g., `FrontierServiceQueries`) - optional
- TypeScript types and interfaces

## Dependencies

This package requires:
- `@bufbuild/protobuf` - Protocol Buffer runtime
- `@connectrpc/connect` - Connect RPC library
- `@connectrpc/connect-query` - Connect Query integration

Optional peer dependencies:
- `@tanstack/react-query` - For query hooks (browser only)

## Documentation

For complete API documentation, visit the [Raystack Documentation](https://raystack.org/).

## Repository

Source code and protobuf definitions: [raystack/proton](https://github.com/raystack/proton)

## License

Apache 2.0
npm package: @raystack/stencil
Description: Stencil js client package provides a store to lookup protobuf descriptors and options to keep the protobuf descriptors upto date.
Latest version: 0.5.1

# Stencil nodejs client

Stencil nodejs client package provides a store to lookup protobuf descriptors and options to keep the protobuf descriptors upto date.

It has following features

- Ability to refresh protobuf descriptors in specified intervals
- Support to download descriptors from multiple urls

## Installation

```sh
npm install --save @raystack/stencil
```

## Usage

### Creating a client

```js
const { Stencil } = require('stencil');

const url = 'http://url/to/proto/descriptorset/file';
const client = await Stencil.getInstance(url, {
  shouldRefresh: true,
  refreshInterval: 43200 // 12 hrs
});
```

### Creating a multiURLClient

```js
const { MultiURLStencil } = require('stencil');

const url1 = 'http://url/to/proto/descriptorset/file';
const url2 = 'http://url/to/proto/descriptorset/file2';
const client = await MultiURLStencil.getInstance([url1, url2], {
  shouldRefresh: true,
  refreshInterval: 43200 // 12 hrs
});
```

### Get proto descriptor type

```js
const { Stencil } = require('stencil');

const url = 'http://url/to/proto/descriptorset/file';
const client = await Stencil.getInstance(url, {
  shouldRefresh: false
});
const type = client.getType('google.protobuf.DescriptorProto');
```

### Encode/Decode message

Let's say we want to encode message for below proto message defniniton

```proto
syntax = "proto3";

package test;

message One {
  int64 field_one = 1;
}
```

```js
const { Stencil } = require('stencil');

const url = 'http://url/to/proto/descriptorset/file';
const client = await Stencil.getInstance(url, {
  shouldRefresh: false
});
const type = client.getType('test.One');
// Encode
const msg = { field_one: 10 };
const errs = type.verify(msg);
if errs {
   throw new Error(`unable to serialize message: ${errs}`);
}
const encodedBuffer = type.encode(msg).finish();
// Decode
const decodedType = type.decode(encodedBuffer);
console.log(decodedType.toObject())
```

## Setting up development environment

### Prerequisite Tools

- [Node.js](https://nodejs.org/) (version >= 12.0.0)
- [Git](https://git-scm.com/)

1. Clone the repo

   ```sh
   $ git clone https://github.com/raystack/stencil
   $ cd stencil/clients/js
   ```

2. Install dependencies

   ```sh
   $ npm install
   ```

3. Run the tests. All of the tests are written with [jest](https://jestjs.io/).

   ```sh
   $ npm test
   ```

## Versioning

We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags](https://github.com/raystack/stencil/tags).

## License

Stencil node client is released under the Apache License 2.0. See [LICENSE](LICENSE)
npm package: @raytecvision/guacamole-common-js
Description: guacamole-common-js TypeScript definitions as an NPM module
Author: Jamie Hall
Latest version: 1.4.0

Guacamole Common JS NPM module

https://guacamole.apache.org/

To develop, link this library so edits are instantaneous and you don't have to rebuild
```bash
npm link
[go to ngx-remote-desktop]
npm link @raytecvision/guacamole-common-js
```