Giter Site home page Giter Site logo

qq738818311 / multisender Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rstormsf/multisender

0.0 1.0 0.0 8.6 MB

Token Multisender Dapp smart contract. Airdrop tokens. Batch sending ERC20, ETH, Ethereum tokens. Send thousands of transfers in a few transactions. It can help user to save more tx fee and time than sending one by one

Home Page: https://multisender.app

License: GNU General Public License v3.0

HTML 2.90% JavaScript 76.50% CSS 20.60%

multisender's Introduction

Demo

Problem:

Previously in Ethereum Network, additional tools were required in order to transfer many ERC20 tokens at once. Many people still do this manually, one transaction at a time. This process is time consuming and prone to an error.

Solution:

This Dapp allows a user to send thousands of token transfers in a very effecient way by batching them in groups of 145 token transfers per Ethereum transaction. This automation saves time by automatically generating transactions to MetaMask. Finally, this tool allows a user to maintain security of their account by delegating the trust of their private keys to a secure MetaMask wallet.

How to use:

  1. Install Metamask.
  2. Make sure you have an account in MetaMask which has a token balance.
  3. Make sure your MetaMask is pointed to the network that you would like to use.
  4. Make sure your MetaMask account is unlocked.
  5. Go to https://rstormsf.github.io/multisender/#/
  6. Wait for the full page to load.
  7. Select a token from the dropdown that you would like to send.
  8. Provide either JSON or CSV text in the textarea (see example below).
  9. Click next.
  10. If everything looks good, click next once again.
  11. Wait for MetaMask to generate an approval transaction.
  12. Once the approval transaction is mined, MetaMask will generate as many transactions as needed for your token transfers (145 addresses per tx).
  13. Done!

You can test this tool on any test network, if you want to make sure that everything will work as expected.

Contracts deployed:
Mainnet, Rinkeby, Kovan, Ropsten, Sokol, CORE-POA:
ProxyStorage: 0xa5025faba6e70b84f74e9b1113e5f7f4e7f4859f

Example JSON:

[
  {"0xCBA5018De6b2b6F89d84A1F5A68953f07554765e":"12"},
  {"0xa6Bf70bd230867c870eF13631D7EFf1AE8Ab85c9":"1123.45645"},
  {"0x00b5F428905DEA1a67940093fFeaCeee58cA91Ae":"1.049"},
  {"0x00fC79F38bAf0dE21E1fee5AC4648Bc885c1d774":"14546"}
]

Example CSV:

0xCBA5018De6b2b6F89d84A1F5A68953f07554765e,12
0xa6Bf70bd230867c870eF13631D7EFf1AE8Ab85c9,1123.45645
0x00b5F428905DEA1a67940093fFeaCeee58cA91Ae,1.049
0x00fC79F38bAf0dE21E1fee5AC4648Bc885c1d774,14546
Proof of work:
https://etherscan.io/tx/0x2fd09c03609f3f34a326983f1c685ea1bcb87dfcaabc12932dbe38d2c453f2c8
https://kovan.etherscan.io/tx/0x755b84a8a61fd82c1410f6bbbb452c94ddf12fac5b1daaa1496671bcd6e21882

How to setup dev environment

  1. git clone [email protected]:rstormsf/multisender.git
  2. cd contracts
  3. I used node -v v9.7.1
  4. npm install
  5. deploy MultiSender contract OR use existing deployed version: 0xa5025faba6e70b84f74e9b1113e5f7f4e7f4859f currenty deployed on Kovan, Rinkeby, Ropsten, POA-network, POA-Sokol, Mainnet Instructions on how to deploy it is listed below.
  6. cd ..
  7. npm install
  8. cp .env.example .env
  9. open .env file and provide an address of multisender contract
  10. npm run start

Contract Deployment

There are 2 ways to deploy the contracts: Upgradable and non-upgradable way. Non-upgrdable:

  • cd contracts
  • npm run flatten
  • take flats/UpgradebleStormSender_flat.sol and deploy it using https://remix.ethereum.org/
    • select solidity 0.4.23 version in settings
  • once deployed, call initialize function with parameter address of owner's contract

Disclaimer

This tool is not affiliated with https://poa.network This is a personal project of Roman Storm.

He is not responsible for any loss from transactions derived by MultiSender. Some of the underlying JavaScript libraries and Ethereum tools that were used are under active development. The website and smart contract has been thoroughly tested, there is always the possibility something unexpected happens resulting in losses of Ethereum and/or tokens.

Any ERC20 tokens you transfer to the Multisender will be sent out to the addresses that you provided.

The smart contract source code can be audited by anyone in this repository.

I encourage you to assess its security before using the Mutlisender Dapp.

multisender's People

Contributors

rstormsf avatar idobrovolskyi avatar

Watchers

James Cloos 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.