twitter-crypto-bot

This is a Twitter bot that tweets about cryptocurrencies prices every certain amount of minutes

MIT License

Stars
29

Twitter Crypto Bot

This bot tweets about the price variations of any cryptocurrency every certain time interval.

Every coin listed in Binance are supported.

Prices' data is retrieved from the Binance API.

Tweets generated by the bot look like this:

You can achieve this with just one line of code! Simply choose a coin, a time interval between tweets, and that's it!

📋 Prerequisites

🎉 Let's start!

  • First of all, fork this repository. If you don't know how forking works, check out this guide.
  • Now that you have your own fork of the project, clone your repository to your computer.
  • Go to the Twitter tokens generator and generate the necessary access tokens for this bot.
    • You can skip this step if you already have them.
  • Go to the Candlestick Chart API and subscribe to a plan of your choice. Note that the basic plan will allow you to tweet with charts' images every 20 minutes.
  • Copy your x-rapidapi-key key from the code snippet that you can find in the API page. If you are having trouble finding the RapidAPI key, watch this video.
  • Create a file named .env at the repo's root directory and paste the keys from the previous steps in it (It should look like .env.example).
  • Open your console inside the directory.
  • Run yarn or npm i to install the project's dependencies.
  • Go to the index.ts file and choose the cryptocurrency you want, you can also change the time between tweets. Go to the ⚙️ Bot options section to see how to customize your bot.
  • Finally, run yarn start or npm start and your bot will start running!
  • That's it! You have your own Twitter Crypto Bot!

⚙️ Bot options

Your bot can be customized if you want it to have a different behaviour. The options that it supports right now are:

When you saw the first example, you might have noticed that the tweet interval was set in minutes. If you want to set the interval to certain amount of hours, minutes, and/or seconds, you can use a time object to explicitly set them.

Option Description Value Type
hours Time interval in hours between tweets. Positive number
minutes Time interval in minutes between tweets. Positive number
seconds Time interval in seconds between tweets. Positive number

As shown in the first example you can also use just a number instead of an object and it will be considered as minutes.

E.g. bot.setTweetInterval(15) is the same as bot.setTweetInterval({ minutes: 15 })

💖 Support the project

If you like what we do and want to encourage us to continue creating stuff, starring and sharing this project would be really appreciated! Also, if you want to support us a little bit more, you can buy us a coffe, or make a BTC tip to the following address: 1E6ZBxA8c32YwJxiWW4ohvm9oVYqqWh5tU

✨ Contributing

Contributions are more than welcome!

We think that you might have great ideas to make this project even better, so if you do, please create a pull request and/or issue following our contribution guidelines.

😃 Authors

📄 License

MIT

This project was made with ❤ and TypeScript