GithubHelp home page GithubHelp logo

h4rkl / ghetto-solair Goto Github PK

View Code? Open in Web Editor NEW
47.0 1.0 26.0 20.84 MB

A command lined based airdrop tool for Solana tokens and NFTs with no polish and max functionality.

JavaScript 75.79% TypeScript 24.21%
solana solana-token nft airdrop-automation

ghetto-solair's Introduction

Ghetto SolAir ๐Ÿช‚

A guerilla tactix command lined based airdrop tool for Solana with no polish and max functionality.

Quickstart setup

  • Setup the Solana Tool Suite
  • Setup spl-token
  • Set your config to the network you'll airdrop on eg. test-net solana config set --url https://api.testnet.solana.com
  • Make sure your Keypair Path is correct for the token you'll be airdropping solana config get
  • Make sure your account has enough SOL to pay for the airdrop

Airdrop tool and file-cleaner

A tool for bulk airdropping Solana tokens to a list of JSON or CSV addresses. I used Google forms to collect addresses and the example output is located at data/example.csv. You can use this format or adjust to your own flavour.

  • cd data && mv example.csv raw.csv
  • npm run csvToJSON
  • npm run validateKeys
  • npm run removeDupes
  • npm run bulkToken

Methods

  • csvToJSON - converts a CSV file of data to JSON with specific headers
  • validateKeys - removes any non-Solana keys
  • removeDupes - removes duplicate keys from list
  • bulkTokenCSV - create a CSV of the cleaned data
  • airdrop:test - test airdrop function
  • airdrop:danger - airdrop function complete with error log list for unsuccessful sends (tends to add last few sends to errors list so sanity check the pubKeys before doubling up)

NFT bulk sender

A tool to bulk send a whole array of NFTs from your wallet programatically.

Methods

  • getNFTList - gets all NFTs in a Solana pubkey account in JSON format
  • filterCollection - filters the list by collection
  • nftdrop:test - test your NFT drop between accounts
  • nftdrop:danger - execute your NFT drop
  • getCMAddresses - get all the NFTs from a candy machine ID
  • mapArrtoAddrObj - turns an array of pubkeys into {address: "<pubkey>"} format
  • getNFTOwner - get the owner of an NFT by mint address

Recover Solflare keypair from wallet

You can recover Solflare addresses uising the following prompt pattern where n is the wallet address position:

solana-keygen recover "prompt://?full-path=m/44'/501'/<n>'/0'"

eg. solana-keygen recover "prompt://?full-path=m/44'/501'/6'/0'" -o 1303.json

ghetto-solair's People

Contributors

h4rkl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

ghetto-solair's Issues

what does data/nft/collection.json contain?

I want to airdrop NFTs to a group of whitelisted addresses, and I found this repo.

Does the data/nft/collection.json contain the metadata for each nft in the form of...
{ "name": "NFT #1", "symbol": "", "description": "Community Drop Collab", "seller_fee_basis_points": 0, "image": "https://www.arweave.net/abcd5678?ext=png", "animation_url": "https://www.arweave.net/efgh1234?ext=mp4", "external_url": "", "attributes": [ { "trait_type": "NFT", "value": "yes" }, { "trait_type": "whitelisted", "value": "yes" }, { "trait_type": "collab", "value": "yes" } ], "collection": { "name": "cNFTc", "family": "c" }, "properties": { "files": [ { "uri": "https://www.arweave.net/abcd5678?ext=png", "type": "image/png" }, { "uri": "https://watch.videodelivery.net/9876jkl", "type": "unknown", "cdn": true }, { "uri": "https://www.arweave.net/efgh1234?ext=mp4", "type": "video/mp4" } ], "category": "video", "creators": [ { "address": "SOLFLR15asd9d21325bsadythp547912501b", "share": 100 } ] } }

or its just a list of addresses?

WOuld this repo work for airdropping SOL to a large amount of addresses?

Hi, thanks for this repo, looks sick!

  1. Will this work for airdropping SOL to a large amounts of address? And how do i set it to send SOL?
  2. I keep getting hit with this error:

[Error: ENOENT: no such file or directory, unlink 'data/bulkData.csv'] {
errno: -2,
code: 'ENOENT',
syscall: 'unlink',
path: 'data/bulkData.csv'
I have my addresses in a csv file as advised.
They're still in the "cleaned.json" file created.
But not in the "curved.json" nor the "Bulkdata.csv" files created.

Could you advise on where I am going wrong? Thanks again!

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.