thirdweb.com and the thirdweb dashboard

Overview

thirdweb.com

This repo contains the full source for all of thirdweb.com and the thirdweb dashboard.

Building

Install dependencies

We use yarn.

yarn install

Starting local dev server.

Make sure to set up a valid .env file, as this is not checked into github!, you can use .env.example for the keys you will need.

yarn dev

Building for production

yarn build
Comments
  • Poor Rendering Performance caused by CSS blur filter

    Poor Rendering Performance caused by CSS blur filter

    Problem

    UI rendering performance is very poor and there are a lot of dropped frames when scrolling the page.

    Root Cause

    This is happening because filter: blur CSS is used to create the Aurora effect.

    filter: blur filter is extremely taxing on CPU/GPU and should be avoided for creating Aurora effect ( because that requires applying the blur on a large element with a large blur radius )

    If we remove the filter:blur CSS - rendering issues get resolved

    See the attached video:

    https://user-images.githubusercontent.com/22043396/205436880-744b5634-27d2-4b63-8ee1-d5e125648720.mp4

    Solution

    Instead of creating the blur at runtime with CSS - just use an image

    See https://cosmos.network/ for example


    Tested on

    Hardware: Macbook Pro 16" (2021) (M1 Pro) Browser: Chrome 107

    opened by MananTank 9
  • Refactor pages/index.tsx

    Refactor pages/index.tsx

    What?

    • Break down pages/index.tsx into subcomponents by creating a separate component for each section
    • No Additional code change is done

    Why?

    • pages/index.tsx is a huge file (850+ LOC) and is very hard to maintain
    • Breaking it down to subcomponents makes it easy to maintain
    • it will also allow us to load some of the sections lazily using dynamic() to reduce initial JS bundle size and improve main thread blocking during page load
    opened by MananTank 9
  • publisher address not found

    publisher address not found

    Do I have to configure all the variables in .env? image image I want to deploy the contract on GOERLI. image when I click Deploy new contract,an error has occurred. image image

    opened by naqunmiemie 8
  • Landing copy changes

    Landing copy changes

    • Landing copy changes
    • New pre-built-contracts section
    • Padding fixes
    • Responsive fixes
    • Reshuffle "build anything"
    • Add some extra text
    • Explore documentation now always links to "/" of portal

    Will change links of pre-built-contracts section once we push the new portal page

    opened by nachoiacovino 6
  • Footer: Code refactor + UI Adjustments

    Footer: Code refactor + UI Adjustments

    Code refactor

    • Move the Footer code from components/product-pages/homepage/footer to components/footer folder
    • Use list rendering (.map) instead of Repeated Components
    • Organize Footer sections into components
    • Break down footer code into multiple files inside the components/footer

    UI Adjustments

    • Clear Separation of Footer Link sections
    • Logo and Social Icon aligned to center in mobile view

    Before ( Desktop )

    image

    After ( Desktop )

    image

    Before ( Mobile )

    image

    After ( Mobile )

    image
    opened by MananTank 5
  • Overhaul and Refactor FTUX

    Overhaul and Refactor FTUX

    • FTUX ( welcome screen ) changed from Modal to inline component
    • Massive Refactor of welcome-screen.tsx, now FTUX
    • cleaner, more maintainable and understandable, removed duplication, can easily add new slides in future
    opened by MananTank 2
  • Refactor & Restructure Generic Components ( Round #1 )

    Refactor & Restructure Generic Components ( Round #1 )

    Goals

    • Move generic components that are used in multiple pages out of page-specific folders
    • Improve the generic component names - so that it reflects what it does instead of where/how it is being used to encourage reuse and reduce confusion
    • Remove duplicate component names to improve auto-import in the code editor and reduce confusion

    <HomepageTopNav/>

    • Rename To: <MainNavigation/>
    • Current Path: components/product-pages/common/Topnav
    • Proposed Path: components/navigation/MainNavigation

    Also, move the contents of folder components/product-pages/common/nav to components/navigation

    The name HomepageTopNav gives the impression that it is only meant for the home page and is positioned at the top, but it is used on a lot of pages and it appears at the bottom on mobile.


    <HomepageSection/>

    • Rename To: <DecoratedSection/>
    • Current Path: components/product-pages/homepage/HomepageSection
    • Proposed Path: components/sections/DecoratedSection

    The name HomepageSection is misleading - it is used on a lot of pages other than the home page. DecoratedSection gives a better idea of what it does - It creates a section and adds decorations like aurora effects and SVG patterns around its children.


    <NewsletterSection/>

    • Current Path: components/homepage/sections/NewsletterSection
    • Proposed Path: components/sections/NewsletterSection

    <SDKSection/>

    • Rename To: <SDKShowcaseSection/>
    • Current Path: components/homepage/sections/SDKSection
    • Proposed Path: components/sections/sdk-showcase/SDKShowcaseSection

    This also involves moving <CodeSelector/> from components/product-pages/homepage/CodeSelector to components/sections/sdk-showcase/CodeSelector


    tw-compnents

    Heading, Badge, Button, Checkbox, Drawer, FormLabel, FormHelperText, FormErrorMessage, Link, MenuGroup, MenuItem, Text

    Rename them to

    TW_Heading, TW_Badge, TW_Button, TW_Checkbox, TW_Drawer, TW_FormLabel, TW_FormHelperText, TW_FormErrorMessage, TW_Link, TW_MenuGroup, TW_MenuItem, TW_Text

    Why?

    These components have the same name as ChakraUI components and because of this - the code editor’s auto-import feature ends up importing the wrong components. (VSCode auto imports from ChakraUI)

    It also creates confusion about what exact component is being used and requires looking at the import path.

    To avoid issues like this, There should not be two components with the same name. Adding a Namespace prefix in the component name fixes the issue while maintaining its previous meaning

    Also, Delete the tw-components/index.ts and import tw-components from the file component is defined in. This provides a better DX as Jumping to Component Definition (command-clicking on the component name in VSCode) will jump to the actual file where the component is defined instead of jumping to tw-components/index.ts. This will also reduce the likelihood of tree-shaking issues in the future as we saw with AddressCopyButton


    There are a lot more components like this that also requires refactoring and restructuring which we can cover in the next rounds.

    refactor 
    opened by MananTank 2
  • (fix): Improved immutable state for variable and parallel execution for jsonFilesText.

    (fix): Improved immutable state for variable and parallel execution for jsonFilesText.

    Fix List

    • Parallelize asyncronous file text reading in utils/batch.ts -> getAcceptedFiles
    • Removed mutable variables
    • Improved higher order functions
    • missing (=) in .env.example
    opened by vishal2612200 2
Dashboard skeleton Simple and fast dashboard skeleton template

Dashboard skeleton Simple and fast dashboard skeleton template. Installation npm install --save dashboard-skeleton-compostrap Version 1x built on Boo

Compostrap 9 Aug 23, 2022
This Project is made with HTML5, CSS3, ReactJS, Axios, MetaMask, thirdweb, Rinkeby Test Network, Web 3.0 Technologies, and OpenSea API.

Abstract Collections This Project is made with HTML5, CSS3, ReactJS, Axios, MetaMask, thirdweb, Rinkeby Test Network, Web 3.0 Technologies, and OpenSe

Shobhit Gupta 34 Jan 4, 2023
Reward your community using NFTs and thirdweb's signature based minting.

Community Rewards Example Introduction In this guide, we will utilize signature-based minting of NFTs as a mechanism to reward users of a specific com

thirdweb examples 18 Jan 2, 2023
DAO boilerplate generator. Powered by buildspace x thirdweb.

Kingdom Create DAO boilerplate generator made by the Buildspace community. ➜ npx kingdom-create my-dao ⌛ Downloading files ... ⌛ Installing dependenc

Kingdom 6 Mar 13, 2022
Stop re-writing thirdweb snippets. Use thirdsnips to make it all snap!

?? thirdsnips Stop re-writing thirdweb snippets. Use thirdsnips to make it all snap! Thirdsnips is a tool which enhances the developer experience whil

Avneesh Agarwal 24 Dec 14, 2022
An example of an NFT Gated Website for thirdweb's NFT Gated Website Guide

NFT Gated Website "One of the more dynamic use cases for NFTs is using them as a membership pass to the NFT holders. Let’s assume you want to create a

thirdweb examples 80 Jan 3, 2023
Create your own custom NFT minting page using thirdweb's NFT Drop contract

Customizable NFT Drop Minting Page In this example, you can create your own NFT Drop minting page just by customising the template with your branding,

thirdweb examples 59 Dec 24, 2022
🐦 A simple and minimal dashboard for your homelab made with Chakra UI and NextJS!

Dashbird (WIP) ?? A simple and minimal dashboard for your homelab made with Chakra UI and NextJS! Features ?? Simple configuration ?? Easily selfhosta

mellowmarshe 3 Oct 23, 2022
A dashboard for managing orders and inventory for a wordpress e-commerce site which has woo commerce plugin installed

WordPressWooCommerceDashboard - A dashboard for managing orders and inventory for a wordpress e-commerce site which has woo commerce plugin installed. This program provides shipping tracking for Delhivery.

Vikrama Reddy 1 Jan 3, 2022
A weather dashboard that features dynamically updated HTML and CSS using OpenWeather API data.

Weather Dashboard A weather dashboard that features dynamically updated HTML and CSS using OpenWeather API data. User Story AS A traveler I WANT to se

Benjamin Eidum 1 Apr 19, 2022
Replacement for comma.ai backend and useradmin dashboard

Replacement for comma.ai backend and useradmin dashboard. Bundled with a modified version of comma's cabana to allow viewing & analyzing drives.

null 15 Jan 1, 2023
A dashboard to display options-related data around PsyOptions markets and Serum orderbooks.

PsyOptions Data Dashboard Digestible data around options activity on Solana is pretty inaccessible at the moment. PsyViz provides a clean and user-fri

sanny 3 May 13, 2022
An ultra-lightweight self-hosted CI solution with a dashboard and containerized runners

An extremely simple containerized CI server. Ecosystem The Candor ecosystem is straightforward, and entirely containerized. Docker runs on the host ma

Paul Huebner 8 Nov 20, 2022
Dashboard for adding, removing, and viewing Vercel redirects.

?? Next.js Redirect Manager Starter for Vercel Dashboard for adding, removing, and viewing Vercel redirects. ⚡️ Quick Start ?? Getting Started ?? What

Colby Fayock 9 Nov 29, 2022
A highly customizable homepage (or startpage / application dashboard) with Docker and service API integrations.

Features Web Bookmarks Service Bookmarks Docker Integration Status light + CPU, Memory & Network Reporting (click on the status light) Service Integra

Ben Phelps 3.5k Dec 30, 2022
JustGage is a handy JavaScript plugin for generating and animating nice & clean dashboard gauges. It is based on Raphaël library for vector drawing.

JustGage JustGage is a handy JavaScript plugin for generating and animating nice & clean dashboard gauges. It is based on Raphaël library for vector d

Bojan Djuricic 1.8k Jan 3, 2023
A complete COVID-19 tracker cum dashboard website made by me.

Covidview A detailed dashboard of live COVID-19 cases. Techs Used: React JS React Hooks and DOM Firebase WHO disease API Demo Video : covid.mp4 Workin

MAINAK CHAUDHURI 24 Dec 17, 2022
A simple dashboard to keep track of all your active devices/servers

Slashboard Pulsar A lightweight node js app designed to work with the Slashboard desktop client Built using Node.js Installation Clone this repository

Philippe Négrel-Jerzy 25 Dec 21, 2022