Sveltekit Ethers Template

Typescript Boilerplate for building Ethereum dApps with Svelte Kit, TailwindCSS & Ethers.

svelte logo

Want a Svelte site built?

Hire a Svelte developer

Svelte Kit Ethers Template

Basic Setup

Install dependencies

yarn

Enter your own or a RPC provider endpoint for your project in the rpcUrl parameter of ./src/lib/config.ts to make on-chain calls, and interact with Metamask, etc. Replace ADD RPC PROVIDER HERE with your RPC provider.

export const NETWORKS: Network[] = [
  {
    chainId: 1,
    rpcUrl: 'ADD RPC PROVIDER HERE', // Your RPC endpoint, add here
...

Start development server

yarn dev

Building Before creating a production version of your app, install an adapter for your target environment. Then:

yarn build

Features

Wallet & Providers

After adding a list of networks in ./src/lib/config.ts, you have access to ethers providers for each network.

import { networkProviders: { [chainId: string]: providers.JsonRpcProvider } } from '$lib/stores/provider'

Methods to connect wallets

Stores for the connection information are also provided

import {
    accountChainId,
    accountProvider,
    connected,
    walletAddress
} from '$lib/stores/provider'

Contract State Syncing

In src/lib/globalState.ts is an example usage of ether-state - A library for syncing the state of smart contracts in your frontend.

Loading Svelte Themes