Programmatically upload NFT assets to OpenSea.io for free

Overview

OpenSea Uploader

This is the example repository for my blog post How to Mint 100,000 NFTs For Free.

Please note that this is merely a proof of concept on how to use dAppeteer/Puppeteer and JavaScript (more specifically TypeScript) to automate websites. I do not encourage using any of the code below to interact with OpenSea.io or any other 3rd party websites. Please make sure to explicitly check the respective terms of services of the website you interact with, to avoid being permanently banned and getting your content removed. Please don't use this script to mint 100,000 tokens on OpenSea.io - that was just a flashy headline trying to grab your attention ¯\_(ツ)_/¯. Having that said, using scripting to automate manual tasks is a great way to learn JavaScript, HTML, as well as to save time and money.

Preview

Prerequisites

You will need the mnemonic phrase for your MetaMask wallet (aka "Secret Recovery Phrase") that should receive the newly minted NFTs. The code below will use the phrase to automatically set up and connect your wallet. However, the phrase is a secret, so make sure to not share it with anyone and don't ever commit it to git.

You will also need an OpenSea.io account by connecting the same MetaMask wallet and a new empty collection. Note the name and URL of the collection. You will need it below.

First Start

First, install all dependencies using npm:

npm install

Then create a new file .env and add your information:

METAMASK_MNEMONIC_PHRASE="add your twelve word secret metamask recovery phrase here"
COLLECTION_NAME="my-first-collection"
DESCRIPTION="My first NFT created in OpenSea"
URL=https://example.com

This file must never be committed to git. The secret mnemonic phrase is used to automatically set up your wallet and connect it to the OpenSea.io account. The collection name is the ID of an existing collection on OpenSea.io. Set a short description and the URL for an external link that will be added to every NFT minted.

Finally, create a new subdirectory images, and place your images in there. The name of each file will also be used as the NFT asset name in OpenSea.

Then run the script:

npm start
You might also like...

NFT Marketplace framework to build standalone NFT marketplace or inApp/inGame NFT marketplace

NFT Marketplace This project is a decentalized NFT Marketplace framework which is to be the baseline for you to build standalone NFT marketplace or in

Dec 19, 2022

Upload or Upload & Publish your bundle (apk or aab) to Huawei AppGallery with ConnectApi

appgallery-publisher Upload/Publish your bundle (apk or aab) to AppGallery automatically with appgallery-publisher Usage Single Javascript File Bash F

Sep 19, 2022

Source code and 3D assets for the Rings (for Loot) NFT project

Source code and 3D assets for the Rings (for Loot) NFT project

Rings (for Loot) Rings (for Loot) is the first and largest 3D interpretation of an entire category in Loot. Adventurers, builders, and artists are enc

Dec 24, 2022

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

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

Jan 4, 2023

Quick programmatically install npm dependencies 📦

qpind Install dependecies quick & programmatically 📦 Install # Using npm: npm install qpind # Using pnpm: pnpm add qpind # Using yarn: yarn add qpind

Oct 6, 2022

Schemix allows you to programmatically create Prisma schemas using TypeScript ⌨️

Schemix allows you to programmatically create Prisma schemas using TypeScript ⌨️

Schemix Schemix let's you programmatically generate Prisma schemas. As Prisma schemas are not inherently segmentable, Schemix acts as a library to aid

Jan 5, 2023

Automagically bypass hcaptcha challenges with http api, with puppeteer, selenium, playwright browser automation scripts to bypass hCaptcha programmatically

Automagically bypass hcaptcha challenges with http api, with puppeteer, selenium, playwright browser automation scripts to bypass hCaptcha programmatically. For help you can message on discord server with the bellow link. You can also create an issue.

Jan 2, 2023

A Telegram bot which generates your intro video programmatically 📽️

A Telegram bot which generates your intro video programmatically 📽️

Features 🪶 Generate videos programmatically from telegram input High performance High quality videos Installation 📦 Installation is pretty easy, cli

Sep 6, 2022

A free e-library for developer to read and upload ebooks they would like to share with the community and help other developers grow.

A free e-library for developer to read and upload ebooks they would like to share with the community and help other developers grow.

Techlib 🚀 Techlib A free e-library for developer to read and upload ebooks they would like to share with the community and help other developers grow

Dec 15, 2022
Comments
  • Captcha

    Captcha

    Hi @arabold ! Firstly, thanks a lot for this article. The code is really works, as i wanted! However, when it comes to final publishing of NFT then OpenSea wants to fill in the captcha :(( Is there a way how to bypass this? I thought about longer delays maybe? Thank you in advance!

    opened by ChrisRegis 0
  • How to add custom properties

    How to add custom properties

    Adding custom properties to OpenSea assets is a bit tricky, as it involves popup dialogs and dynamic input forms. However, the code below might be of some help. Append these lines to your fillFields function:

      // Add properties
      const addPropertiesButton = await page.$('button[aria-label="Add properties"]');
      await addPropertiesButton.click();
    
      // Add 2 more properties for a total of 3
      const addMoreButton = await page.$('button.gIDfxn');
      await addMoreButton.click();
      await page.waitForTimeout(100);
      await addMoreButton.click();
      await page.waitForTimeout(100);
    
      // Select all input fields
      const propertyNames = await page.$$('input[placeholder="Character"]');
      const propertyValues = await page.$$('input[placeholder="Male"]');
    
      await propertyNames[0].type('Class');
      await propertyValues[0].type(`Hunter`);
    
      await propertyNames[1].type('Race');
      await propertyValues[1].type(`Elf`);
    
      await propertyNames[2].type('Gender');
      await propertyValues[2].type(`Female`);
    
      const saveButton = await page.$x('//button[contains(., "Save")]');
      await saveButton[0].click();
    

    Good luck! 👍

    documentation enhancement 
    opened by arabold 0
Owner
Andre Rabold
Making things. Breaking things.
Andre Rabold
🐲 Epic NFTs [UI] - Proyecto que te permitirá conectar tu billetera y acuñar un NFT, podrás revender el NFT en OpenSea. El NFT en sí se puede personalizar

?? Epic NFTs [UI] El proyecto se encuentra deployado en Vercel para que puedan verlo e interactuar con él, toda crítica o comentario se agradece, pued

Braian D. Vaylet 17 Oct 22, 2022
open-sourced boilerplate NFT projects (Shopify, Opensea, Patreon, etc)

?? Quickly start any NFT projects A collection of boilerplates for full-stack dapps that showcase some of the use case for NFTs. Think of web3 native,

Alyssa 2 Jan 12, 2022
NFT Marketplace 2022 - OpenSea

NFT MARKETPLACE - 2022 ?? iv7.dev for a coffee : 0xBE95c56Fe1956804B2E7aD858978A90aF20eeB16 (Nets : BSC, Polygon, ETH) This project was bootstrapped w

Iv7.software 2 Feb 4, 2022
NFT listing monitor bot of the marketplace. (Opensea, X2Y2, LooksRare)

NFT Listing Monitor Bot NFT listing monitor bot of the marketplace. Market Coverage Opensea Looksrare X2Y2 Prerequisites Opensea API Key - apply here

null 21 Jan 2, 2023
Evolve is an online investment portfolio management system where users can keep track of all the assets that they have invested in and how well their assets are performing.

Evolve is an online investment portfolio management system where users can keep track of all the assets that they have invested in and how well their assets are performing.

Indrajit 6 Oct 16, 2022
Dead simple program to upload NFT data to IPFS via nft.storage

NFTP The simplest way to publish files and folders to IPFS, with one command. 100% FREE to upload as much files as you want, powered by nft.storage. N

factoria 35 Dec 11, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Fullstack Dynamic NFT Mini Game built using 💎 Diamond Standard [EIP 2535] 🏃‍♀️Players can use Hero NFT to battle against Thanos ⚔ Heroes can be Healed by staking their NFT 🛡

?? Fullstack Dynamic NFT Mini Game ?? ?? Using Diamond Standard Play On ?? ?? ⏩ http://diamond-dapp.vercel.app/ Project Description ?? Fullstack Dynam

Shiva Shanmuganathan 21 Dec 23, 2022