UNPKG

create-dynamic-app

Version:

CLI tool to generate sample applications using Dynamic's web3 authentication

55 lines (48 loc) 1.38 kB
import type { PackageJson } from "../types" export const addSolanaDependencies = (packageJson: PackageJson) => { packageJson.dependencies["crypto-browserify"] = "^3.12.0" packageJson.dependencies["stream-browserify"] = "^3.0.0" packageJson.dependencies["process"] = "^0.11.10" // Add the browser field packageJson.browser = { ...packageJson.browser, crypto: false, } // Add the solana overrides packageJson.overrides = { ...(packageJson.overrides ?? {}), "rpc-websockets": "7.10.0", "@solana/web3.js": "1.91.6", } return packageJson } export const createConfigOverrides = () => ` const webpack = require('webpack'); module.exports = function override(config, env) { config.resolve.fallback = { ...config.resolve.fallback, crypto: require.resolve('crypto-browserify'), stream: require.resolve('stream-browserify'), assert: require.resolve('assert'), process: require.resolve('process/browser.js'), }; config.plugins = [ ...config.plugins, new webpack.ProvidePlugin({ Buffer: ['buffer', 'Buffer'], process: 'process/browser.js', }), ]; return config; }; ` export const updatePackageJsonScripts = (packageJson: PackageJson) => { packageJson.scripts = { dev: "vite", build: "tsc -b && vite build", lint: "eslint .", preview: "vite preview", ...packageJson.scripts, } return packageJson }