npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

web3-kit-react

v0.1.145

Published

<img src="https://user-images.githubusercontent.com/13779759/160237628-381adb19-d439-4df6-98af-c3cb67ba5b5c.svg" width="500px" alt="web3uiKit logo" />

Readme

Web3UIKit!

Beautiful and lightweight UI components for web3 developers. This UI library will speed up your dapp development no matter which chain you build on.

CI

Live StoryBook DEMO: https://web3ui.github.io/web3uikit/

Moralis-NFT-Marketplace

⭐️ Star us

If this ui-kit helps you build your dApps faster - please star this project, every star makes us very happy!

🤝 Need help?

If you need help with setting up the boilerplate or have other questions - don't hesitate to write in our community forum and we will check asap. Forum link. The best thing about this boilerplate is the super active community ready to help at any time! We help each other.

🚀 Quick Start

💿 Installation

npm install web3uikit

or

yarn add web3uikit

🧰 Usage

import { CryptoCards, Button } from 'web3uikit';

const App = () => (
    <>
        <CryptoCards chain="ethereum" />
        <Button theme="primary" type="button" text="Launch Dapp" />
    </>
);

▲ Usage with Next.js

If you are using web3uikit with Next.js, be sure to follow the official guide, since we are using styled-components under the hood.

🧭 Table of contents

Web3 Components

<ConnectButton />

ConnectBtnNew

The <ConnectButton /> component allows you to make web3 authenticating users in case your server is initialized. When the server is not initialized, or for example, you have <MoralisProvider initializeOnMount={false} > and you don't want to connect your Moralis server to the frontend the smart component will call enableWeb3()

If you want to use this component with the connected server but without adding a user to Moralis Database you can add the moralisAuth prop

The ConnectButton component automatically adds to the local storage info about the connector user used and will automatically call enableWeb3() after rereshing the page. So if user was connected once it will automatically initialize web3 connection(No need anymore to add UseEffect hook for enableWeb3() after refrshing the page)

Try the <ConnectButton /> component in the interactive documentation

<NFT />

NFT

The <NFT /> component allows you to display a single NFT as Card. By clicking on the card you can also view all the traits of the NFT.It uses hooks from react-moralis to fetch the NFT.

If you want to use this component wrap your app with <MoralisProvider appId={MORALIS_APP_ID} serverUrl={MORALIS_SERVER_URL} ></MoralisProvider >. Read more about moralis here

Try the <NFT /> component in the interactive documentation

<NFTBalance />

NFTBalance

The <NFTBalance /> component allows you to display all the NFT's an address owns. It uses hooks from react-moralis to fetch all NFT's of an address.

If you want to use this component wrap your app with <MoralisProvider appId={MORALIS_APP_ID} serverUrl={MORALIS_SERVER_URL} ></MoralisProvider >. Read more about moralis here

Try the <NFTBalance /> component in the interactive documentation

📖 UI Components

<Accordion />

The accordion component is a nice user interface element that can allow you to show and hide text or other components, so you do not overwhelm your user with too much awesome content

accordion

Try the <Accordion /> component in the interactive documentation

<Avatar />

avatar

Try the <Avatar /> component in the interactive documentation

<Badge />

badge

Try the <Badge /> component in the interactive documentation

<BannerStrip />

BannerStrip

Try the <BannerStrip /> component in the interactive documentation

<Breadcrumbs />

Breadcrumbs

Try the <Breadcrumbs /> component in the interactive documentation

<Card />

Card

Try the <Card /> component in the interactive documentation

<CryptoCards />

CryptoCards

Try the <CryptoCards /> component in the interactive documentation

<CryptoLogos />

CryptoLogos

Try the <CryptoLogos /> component in the interactive documentation

<Icon />

Icon

Try the <Icon /> component in the interactive documentation

<Illustration />

Illustration

Illustration2

Try the ` component in the interactive documentation

<Information />

Information

Try the <Information /> component in the interactive documentation

<LinkTo />

LinkTo component is a simple link component that can be used to navigate to another page or to another component.

LinkTo

Try the <LinkTo /> component in the interactive documentation

<Logo />

Logo component is a simple logo component having moralis or other icons that can be used in any layout.

Logo

Try the <Logo /> component in the interactive documentation

<Notification />

NotificationHook

To call the Notification component use the useNotification() hook. Example:

const App = () => {
    const dispatch = useNotification();

    const handleNewNotification = () => {
        dispatch({
            type: 'info',
            message: 'Somebody messaged you',
            title: 'New Notification',
            icon,
            position: position || 'topR',
        });
    };

    return (
        <>
            <Button
                text="Error"
                onClick={handleNewNotification}
                theme="colored"
                color="red"
                isFullWidth={true}
            />
        </>
    );
};

Requires the application to be within a <NotificationProvider>

Example:

<NotificationProvider>
    <App />
<NotificationProvider>

Try the <Notification /> component in the interactive documentation

<Table />

Table

Try the <Table /> component in the interactive documentation

<Tag />

Tag

Try the <Tag /> component in the interactive documentation

<Todo />

Todo

Try the <Todo /> component in the interactive documentation

<Widget />

Widget

Try the <Widget /> component in the interactive documentation

⚙️ Interaction Components

<Button />

Button

Try the <Button /> component in the interactive documentation

<Checkbox />

Checkbox

Try the <Checkbox /> component in the interactive documentation

<CodeArea />

CodeArea

Try the <CodeArea /> component in the interactive documentation

<Credentials />

Credentials

Try the <Credentials /> component in the interactive documentation

<Form />

Form

Try the <Form /> component in the interactive documentation

<Input />

Input

Try the <Input /> component in the interactive documentation

<Radios />

Radios

Try the <Radios /> component in the interactive documentation

<Select />

Select

Try the <Select /> component in the interactive documentation

<TextArea />

TextArea

Try the <TextArea /> component in the interactive documentation

🎉 Popup

<Modal />

Modal is a popup that can have arbitary elements and can be closed by clicking on the close or cancel buttons.

Modal2

Try the <Modal /> component in the interactive documentation

<Tooltip />

Tooltip

Try the <Tooltip /> component in the interactive documentation