{"id":18885783,"url":"https://github.com/crossmint/connect","last_synced_at":"2025-04-14T21:31:00.742Z","repository":{"id":44482301,"uuid":"512610417","full_name":"Crossmint/connect","owner":"Crossmint","description":"Interface with the Crossmint wallet directly in your app","archived":false,"fork":false,"pushed_at":"2024-02-16T10:38:59.000Z","size":1555,"stargazers_count":8,"open_issues_count":5,"forks_count":9,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-01T00:53:04.233Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://embed-crossmint.vercel.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Crossmint.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-11T04:02:05.000Z","updated_at":"2024-08-01T16:56:41.000Z","dependencies_parsed_at":"2024-06-19T05:21:59.319Z","dependency_job_id":"1a39877c-7491-4dab-8e1c-7295e6b413a3","html_url":"https://github.com/Crossmint/connect","commit_stats":{"total_commits":25,"total_committers":2,"mean_commits":12.5,"dds":0.36,"last_synced_commit":"43bd75a2bd06e73dee072ba814bbedeb9839dd68"},"previous_names":["crossmint/embed"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crossmint%2Fconnect","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crossmint%2Fconnect/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crossmint%2Fconnect/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Crossmint%2Fconnect/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Crossmint","download_url":"https://codeload.github.com/Crossmint/connect/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223646061,"owners_count":17179024,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T07:21:55.569Z","updated_at":"2024-11-08T07:21:56.188Z","avatar_url":"https://github.com/Crossmint.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @crossmint/connect\n\nEmbed the Crossmint wallet directly in your app\n\n## Build from Source\n\n1. Clone the project:\n\n```shell\n\ngit clone https://github.com/Crossmint/connect.git\n\n```\n\n2. Install dependencies:\n\n```shell\n\ncd connect\n\nyarn install\n\n```\n\n3. Build all packages:\n\n```shell\n\nyarn build\n\n```\n\n## Run the example locally\n\n1. Link `@crossmint/connect` from the root `/connect`:\n\n```shell\n\nyarn link\n\n```\n\n2. Link from inside the example folder:\n\n```shell\n\ncd example\n\nyarn link \"@crossmint/connect\"\n\n```\n\n3. Install deps:\n\n```shell\n\nyarn install\n\n```\n\n4. Run the nextjs app:\n\n```shell\n\nyarn dev\n\n```\n\n## Solana Wallet Adapter Example\n\nThe `CrossmintSolanaWalletAdapter` is fully compatible with [@solana/wallet-adapter](https://github.com/solana-labs/wallet-adapter) and can be dropped into place like so:\n\n    import React, { FC, useMemo } from 'react';\n    import { ConnectionProvider, WalletProvider } from '@solana/wallet-adapter-react';\n    import { WalletAdapterNetwork } from '@solana/wallet-adapter-base';\n    import { FakeWalletAdapter } from '@solana/wallet-adapter-wallets';\n    import {\n        WalletModalProvider,\n        WalletDisconnectButton,\n        WalletMultiButton\n    } from '@solana/wallet-adapter-react-ui';\n    import { clusterApiUrl } from '@solana/web3.js';\n\n    import {CrossmintSolanaWalletAdapter} from \"@crossmint/connect\"\n\n    // Default styles that can be overridden by your app\n    require('@solana/wallet-adapter-react-ui/styles.css');\n\n    export const Wallet: FC = () =\u003e {\n        // The network can be set to 'devnet', 'testnet', or 'mainnet-beta'.\n        const network = WalletAdapterNetwork.Devnet;\n\n        // You can also provide a custom RPC endpoint.\n        const endpoint = useMemo(() =\u003e clusterApiUrl(network), [network]);\n\n        const wallets = useMemo(\n            () =\u003e [\n                new CrossmintSolanaWalletAdapter({})\n            ],\n            []\n        );\n\n        return (\n            \u003cConnectionProvider endpoint={endpoint}\u003e\n                \u003cWalletProvider wallets={wallets} autoConnect\u003e\n                    \u003cWalletModalProvider\u003e\n                        \u003cWalletMultiButton /\u003e\n                        \u003cWalletDisconnectButton /\u003e\n                    \u003c/WalletModalProvider\u003e\n                \u003c/WalletProvider\u003e\n            \u003c/ConnectionProvider\u003e\n        );\n    };\n\n## EVM Wallet Connect Example\n\nThe following is an example of connecting to a user's Crossmint Ethereum account using the CrossmintEVMWalletAdapter\n\n    import {\n      BlockchainTypes,\n      CrossmintEnvironment,\n      CrossmintEVMWalletAdapter,\n    } from \"@crossmint/connect\";\n\n    import { useState } from \"react\";\n\n    export default function YourCustomConnectButton() {\n      const [address, setAddress] = useState\u003cstring | undefined\u003e(undefined);\n\n      async function connectToCrossmint() {\n        // Initialize the Crossmint connect.\n        const _crossmintConnect = new CrossmintEVMWalletAdapter({\n          chain: BlockchainTypes.ETHEREUM, // BlockchainTypes.ETHEREUM || BlockchainTypes.POLYGON. For solana use BlockchainTypes.SOLANA\n        });\n\n        // Ask the user to sign in and give access to their publicKey\n        const address = await _crossmintConnect.connect();\n\n        // If the user successfully connects to Crossmint, the address will be returned.\n        if (address) {\n          setAddress(address);\n        }\n      }\n\n      return (\n        \u003cbutton\n          onClick={connectToCrossmint}\n          className=\"px-6 py-2 font-semibold text-black bg-white rounded-md\"\n        \u003e\n          {address ? address.slice(0, 6) + \"...\" : \"Connect\"}\n        \u003c/button\u003e\n      );\n    }\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrossmint%2Fconnect","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcrossmint%2Fconnect","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrossmint%2Fconnect/lists"}