Giter Site home page Giter Site logo

devdao-domains's Introduction

DEVELOPER_DAO DOMAINS

Implementation for registrars and local resolved for the Developer DAO Naming Service.

Contents

Prerequisites

Contracts

DevDAONFT.sol

Implementation of the naming service NFT, the contract used to mint an ERC721 token linked to each name. The functionality includes:

  • Mapping for each name to token Id
  • Minting an ERC721 token linked to each name

DevDAONameService.sol

Implmentation of naming service transaction, the contract used to check name length and mint ERC721 tokens (by communicating with the DevDAONFT.sol). The functionality includes:

  • Checking string length is more than minimum
  • Checking string length is less than maximum
  • Minting an ERC721 token (by communicating with DevDAONFT.sol) and transferring funds to the treasury address

DevDAOPriceOracle.sol

Implementation of pricing for the naming service, the contract used by the contract owner to set pricing based on name length. The functionality includes:

  • Mapping for each price to name string length
  • Setter for pricing of each name string length

DevDAORegistry.sol

The implementation of the registry, the contract used by the token owner to set metadata that will correspond with each name and the respective token Id. The functinality includes:

  • Setter for name to token Id
  • Setter for user profile metadata struct
  • Setter for address metadata
  • Setter for content

DevDAOResolver.sol

The implementation of the resolver.

Features

Here's an overview of the included frameworks and tools.

  • Next.js - Minimalistic framework for server-rendered React applications.
  • Typescript - Superset of JavaScript which primarily provides optional static typing, classes and interfaces.
  • ESLint - The pluggable linting utility.
  • Turborepo - High-performance build system for JavaScript and TypeScript codebases.
  • PNPM - Fast, disk space efficient package manager.
  • Wagmi - React Hooks library for Ethereum.
  • Tailwind CSS - Rapidly build modern websites without ever leaving your HTML.
  • Typechain - TypeScript bindings for Ethereum smart contracts.
  • Hardhat - Ethereum development environment for professionals.
  • Hardhat-deploy - A Hardhat Plugin For Replicable Deployments And Easy Testing.
  • Chai - A BDD / TDD assertion library for node and the browser that can be delightfully paired with any javascript testing framework.
  • Mocha - A feature-rich JavaScript test framework.

Run in Gitpod

To run this project in Gitpod, follow these steps:

  1. Click this link to deploy to gitpod

Open in Gitpod

  1. Import the RPC address given to you by GitPod into your MetaMask wallet

This endpoint will look something like this:

https://8545-copper-swordtail-j1mvhxv3.ws-eu18.gitpod.io/

The chain ID should be 1337. If you have a localhost rpc set up, you may need to overwrite it.

MetaMask RPC Import

You can also change your status of your open ports by going to port settings.

port settings

Run Locally

Clone the project

  npx degit G3root/nextjs-dapp-starter-ts my-project

Go to the project directory

  cd my-project

Install dependencies

  pnpm install

Start the development server

  pnpm dev

Build For Production

To generate production build

 pnpm build

Acknowledgements

License

MIT

devdao-domains's People

Contributors

qedk avatar dhaiwat10 avatar miralsuthar avatar gaslimitreached avatar 0xharbs avatar

Stargazers

Roman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.