https://github.com/crossmint/crossmint-sdk
Crossmint SDK for client and server integrations
https://github.com/crossmint/crossmint-sdk
credit-card ethereum mint nextjs nft nfts polygon react solana
Last synced: about 1 year ago
JSON representation
Crossmint SDK for client and server integrations
- Host: GitHub
- URL: https://github.com/crossmint/crossmint-sdk
- Owner: Crossmint
- License: apache-2.0
- Created: 2021-11-17T00:39:57.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-10-29T02:03:18.000Z (over 1 year ago)
- Last Synced: 2024-10-29T09:13:39.666Z (over 1 year ago)
- Topics: credit-card, ethereum, mint, nextjs, nft, nfts, polygon, react, solana
- Language: TypeScript
- Homepage: https://demo.crossmint.io/
- Size: 14.7 MB
- Stars: 27
- Watchers: 2
- Forks: 17
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Crossmint SDK
A comprehensive suite of tools for blockchain integration, authentication, and NFT functionality
Explore the docs ยป
View Demo
ยท
Report Bug
ยท
Request Feature
Table of Contents
-
About The Project
-
Package Overview
- Getting Started
-
Building SDK Locally
- Publishing
- Documentation
- Contact
## About The Project

The Crossmint SDK is a powerful collection of packages designed to simplify blockchain integration for developers. Our goal is to make Web3 development accessible without requiring extensive blockchain experience or cryptocurrency knowledge.
### Why Crossmint?
- ๐ **Quick Integration**: All our tools have 5-min quickstarts
- ๐ป **Developer-First**: Build end-to-end blockchain solutions without deep Web3 expertise
- ๐ **Secure**: Enterprise-grade security for all blockchain interactions
- ๐ณ **Fiat-First**: Enable users to participate in Web3 without cryptocurrency
- ๐ **Free to Start**: Start developing at no cost
### Core Features
- ๐ณ NFT checkout: with credit card and cross-chain
- ๐ Authentication and session management
- ๐ Embedded wallets
- ๐ Verifiable credentials
## Package Overview
### Wallet SDK
- `@crossmint/wallets-sdk`: Universal Wallet SDK.
### Client-Side Packages
- `@crossmint/client-sdk-react-ui`: React SDK, with UI components.
- `@crossmint/client-sdk-auth`: Headless typescript SDK for managing auth and user profiles.
- `@crossmint/client-sdk-verifiable-credentials`: Headless typescript SDK for Verifiable Credentials.
- `@crossmint/client-sdk-smart-wallet` [DEPRECATED]: Headless typescript SDK for smart wallets.
- `@crossmint/wallets-sdk`: Headless typescript SDK for EVM + Solana MPC / Smart Wallets.
Other:
- `@crossmint/client-sdk-base`: Core client-side functionality and essential building blocks for Crossmint integration. Typically you don't need to integrate against this directly.
### Server-Side Packages
- `@crossmint/server-sdk`: Server-side SDK.
### Demo Applications
- [๐ Smart Wallet + Auth Demo)](./apps/wallets/smart-wallet/next/README.md): A NextJS application showcasing the full capabilities of the SDK, including authentication and smart wallet integration.
## Getting Started
To get started with the SDK, install the packages you need into your project.
ie.
`pnpm add @crossmint/wallets-sdk`
Then, import the package you need.
ie.
`import { CrossmintWallet } from "@crossmint/wallets-sdk";`
For more information on how to use the SDK, see the [Crossmint SDK Documentation](https://docs.crossmint.com/sdk-reference/introduction).
## Building SDK locally
### Prerequisites
```shell
node >= 20
pnpm
```
### Installation
1. Clone the repository:
```shell
git clone https://github.com/Crossmint/crossmint-sdk.git
```
2. Install dependencies:
```shell
cd crossmint-sdk
pnpm install
```
3. Build all packages:
```shell
pnpm build
```
### Making Package Changes
When modifying packages locally:
1. Make your changes in the relevant package
2. Rebuild the modified package:
```shell
# Inside the package directory
pnpm build
```
3. Reinstall dependencies in your project:
```shell
# From the root directory
pnpm install
```
4. Restart the demo application to see your changes
## Publishing
1. Run `pnpm change:add` to select packages for update
2. Commit the generated changeset file
3. Merge your PR to `main`
4. A "Release packages" PR will be created automatically
5. Merge the release PR to publish to NPM
## Documentation
For detailed documentation and guides, visit our [official documentation](https://docs.crossmint.com/).
## Contact
To get in touch with the Crossmint team, please visit our [contact page](https://www.crossmint.com/contact).
or on [X](https://x.com/crossmint)