open-index/open-npm huggingface dataset:
npm package: @socialproof/create-dapp
Description: A CLI for creating new MySo dApps
Author: Mysten Labs
Latest version: 0.0.4

# @socialproof/create-dapp

`@socialproof/create-dapp` is a CLI tool that helps you to create a new dApp project.

You can get started quickly by running the following command:

```bash
pnpm create @socialproof/dapp
```

This will prompt you through creating a new dApp project. It will ask you for the name/directory and
ask you to select from one of the provided templates.

## Templates

The following templates are available:

- `react-client-dapp`: A basic React dApp that fetches a list of objects owned by the connected
  wallet
- `react-e2e-counter`: An end to end Example with move code and UI for a simple counter app

The examples are based off the Vite TypeScript starter project, and pre-configure a few things for
you including:

- [React](https://react.dev/)
- [TypeScript](https://www.typescriptlang.org/)
- [Vite](https://vitejs.dev/)
- [Radix UI](https://www.radix-ui.com/)
- [`@socialproof/dapp-kit`](https://sdk.mystenlabs.com/dapp-kit)

These templates are still new, and would love to get feedback and suggestions for improvements or
future templates. Please open an issue on GitHub if you have any feedback.
npm package: @socialproof/dapp-kit-core
Description: Framework-agnostic toolkit for building decentralized applications on MySo.
Author: Mysten Labs
Latest version: 0.0.4

# dapp-kit-core

A framework-agnostic toolkit for building decentralized applications on [MySo](https://mysocial.network).

`@socialproof/dapp-kit-core` provides an action-based API for wallet operations, automatic state
management via [nanostores](https://github.com/nanostores/nanostores), and built-in
[Web Components](https://developer.mozilla.org/en-US/docs/Web/API/Web_components) for wallet
connection UI. It can be used standalone with vanilla JavaScript, or as the foundation for
framework-specific bindings like
[`@socialproof/dapp-kit-react`](https://www.npmjs.com/package/@socialproof/dapp-kit-react).

## Installation

```sh
npm i @socialproof/dapp-kit-core @socialproof/myso
```

## Documentation

See the [dApp Kit docs](https://sdk.mystenlabs.com/myso/dapp-kit) for full usage instructions,
guides, and API reference.
npm package: @socialproof/dapp-kit-react
Description: React bindings for @socialproof/dapp-kit-core
Author: Mysten Labs
Latest version: 0.0.4

# dapp-kit-react

React hooks and components for building decentralized applications on the [MySo](https://mysocial.network)
blockchain. Built on top of
[`@socialproof/dapp-kit-core`](https://www.npmjs.com/package/@socialproof/dapp-kit-core).

Provides a `DAppKitProvider`, ready-to-use `ConnectButton` and `ConnectModal` components, and hooks
like `useDAppKit`, `useCurrentAccount`, `useCurrentWallet`, and more.

## Installation

```sh
npm i @socialproof/dapp-kit-react @socialproof/myso
```

## Documentation

See the [dApp Kit docs](https://sdk.mystenlabs.com/myso/dapp-kit) for full usage instructions,
guides, and API reference.
npm package: @socialproof/enoki
Description: zkLogin authentication and sponsored transactions
Author: Mysten Labs
Latest version: 0.0.4

# `@socialproof/enoki`

zkLogin authentication and sponsored transactions. Enable users to sign in with Google, Twitch,
Facebook, and other OAuth providers, and execute transactions without gas fees.

## Features

- **zkLogin**: Authenticate users with OAuth providers (Google, Twitch, Facebook)
- **Sponsored Transactions**: Execute transactions without requiring users to hold gas
- **Wallet Integration**: Register Enoki wallets with dApp Kit
- **Subname Management**: Create and manage MySoNS subnames

## Installation

```sh
npm install @socialproof/enoki
```

## Quick Start

### Register Enoki wallets

```ts
import { registerEnokiWallets } from '@socialproof/enoki';

registerEnokiWallets({
	apiKey: 'your-enoki-api-key',
	providers: ['google', 'twitch', 'facebook'],
});
```

### Use with React and dApp Kit

```tsx
import { registerEnokiWallets } from '@socialproof/enoki';
import { useEnokiFlow } from '@socialproof/enoki/react';

// In your app setup
registerEnokiWallets({
	apiKey: 'your-enoki-api-key',
	providers: ['google'],
});

// In your component
function LoginButton() {
	const { login } = useEnokiFlow();

	return <button onClick={() => login('google')}>Sign in with Google</button>;
}
```

### Low-level client usage

```ts
import { EnokiClient } from '@socialproof/enoki';

const client = new EnokiClient({
	apiKey: 'your-enoki-api-key',
});

// Create a sponsored transaction
const sponsored = await client.createSponsoredTransaction({
	network: 'mainnet',
	sender: '0x...',
	transactionKindBytes: '...',
});

// Execute it
await client.executeSponsoredTransaction({
	digest: sponsored.digest,
	signature: '...',
});
```

## Documentation

See the [Enoki documentation](https://docs.enoki.mystenlabs.com) for detailed setup and usage.
npm package: @socialproof/enoki-connect
Description: Enoki Connect Wallet-Standard implementation
Author: Mysten Labs
Latest version: 0.0.4

# `@socialproof/enoki-connect`

> ⚠️ **Warning**: This package is in active development and should be used with caution. APIs are
> experimental and subject to breaking changes without notice. We recommend thoroughly testing any
> implementation before using in production environments.
npm package: @socialproof/mvr-static
Description: The static generation tool for Move Registry (mvr)
Author: Mysten Labs
Latest version: 0.0.4

# mvr-static

The mvr-static tool is a typescript CLI tool to generate a static file for Move Registry (mvr)
resolution. This can be used to cache all MVR names for performance & security reasons, and used
with the MySo client's built-in MVR support.

## Usage

### Generate a static file for MVR resolution

You can generate your static file by running the following command:

```bash
pnpm dlx @socialproof/mvr-static
```

Available options:

- `--directory <directory>`: The directory to run the command in (defaults to `.`)
- `--output <file-name>`: The output's file name (defaults to `mvr.ts`)
- `--depth <depth>`: The depth of recursive search for MVR names (defaults to `10`)
- `--url-mainnet <url>`: The URL to the mainnet MVR (defaults to
  `https://mainnet.mvr.mystenlabs.com`)
- `--url-testnet <url>`: The URL to the testnet MVR (defaults to
  `https://testnet.mvr.mystenlabs.com`)
- `--include <dir_patterns>`: The directory patterns to include in the search (defaults to
  `**/*.{js,ts,jsx,tsx,mjs,cjs}`)
- `--exclude <dir_patterns>`: The directory patterns to exclude in the search (defaults to
  `'node_modules/**', '**/.*'`)
- `--force`: Force overwrite the existing MVR file (useful in CI) (defaults to `false`)

### Use the static file in your project

Once you have your static file, you can use it in your project by importing it and passing it to the
MySo client initialization. MVR resolution is now built into the core client.

```ts
import { MySoGrpcClient } from '@socialproof/myso/grpc';
import { getMvrCache } from './mvr.ts';

// Create a gRPC client with MVR overrides for your network
const client = new MySoGrpcClient({
	network: 'mainnet',
	baseUrl: 'https://fullnode.mainnet.mysocial.network:443',
	mvr: {
		overrides: getMvrCache('mainnet'),
	},
});
```

The client will now use your pre-resolved MVR names instead of making API calls, which improves
performance and security.
npm package: @socialproof/wallet-standard
Description: A suite of standard utilities for implementing wallets based on the Wallet Standard.
Author: Mysten Labs
Latest version: 0.0.2

# `@socialproof/wallet-standard`

A suite of standard utilities for implementing wallets and libraries based on the
[Wallet Standard](https://github.com/wallet-standard/wallet-standard/).

**Documentation:** https://docs.mysocial.network/standards/wallet-standard