Getting Started

CoinOpReact - Getting Started & Installation

coinopreact is a React library that provides a set of hooks and components to interact with the CoinOp API.

Installation:

NPM:

npm install coinopreact

PNMP:

pnpm install coinopreact

YARN:

yarn add coinopreact

Solana Dependencies

NPM:

npm install @project-serum/anchor
@solana/wallet-adapter-react 
@solana/wallet-adapter-react-ui
@solana/wallet-adapter-wallets
@solana/web3.js
@solana/wallet-adapter-react-ui
@solana/wallet-adapter-wallets

PNMP:

pnpm install @project-serum/anchor
@solana/wallet-adapter-react 
@solana/wallet-adapter-react-ui
@solana/wallet-adapter-wallets
@solana/web3.js
@solana/wallet-adapter-react-ui
@solana/wallet-adapter-wallets

YARN:

yarn add @project-serum/anchor
@solana/wallet-adapter-react 
@solana/wallet-adapter-react-ui
@solana/wallet-adapter-wallets
@solana/web3.js
@solana/wallet-adapter-react-ui
@solana/wallet-adapter-wallets

More information about Solana Wallet Adapter can be found at https://github.com/solana-labs/wallet-adapter

Project Setup:

import {
	ConnectionProvider,
	WalletProvider,
} from "@solana/wallet-adapter-react";
import { WalletModalProvider } from "@solana/wallet-adapter-react-ui";
import {
	UnsafeBurnerWalletAdapter,
} from "@solana/wallet-adapter-wallets";
// ^ Include your desired wallet providers...
import { WalletAdapterNetwork } from "@solana/wallet-adapter-base";
import { clusterApiUrl } from "@solana/web3.js";
import {AuthorizationProvider, CoinOpProvider} from 'coinopreact'; 

const Main = () => {
	const network = WalletAdapterNetwork.Devnet;

	// You can also provide a custom RPC endpoint
	const endpoint = useMemo(() => clusterApiUrl(network), [network]);

	const wallets = useMemo(() => [new UnsafeBurnerWalletAdapter()],
		[network]
	);

	return (
		<>
			<ConnectionProvider endpoint={endpoint}>
				<WalletProvider wallets={wallets} autoConnect>
					<WalletModalProvider>
						<AuthorizationProvider>
							<CoinOpProvider API_URL={"https://yourURL.com"} GAME_SLUG={""}>
								{/*
									YOUR APP CODE HERE
									<App />
								*/}
							</CoinOpProvider>	
						</AuthorizationProvider>
					</WalletModalProvider>
				</WalletProvider>
			</ConnectionProvider>
		</>
	);
};

If you do not provide an API_URL or GAME_SLUG they will default to the devnet URL & "DCF" respectively.

Last updated