Skip to content

A helpful bot for tracking your Solana NFT project on discord channels.

License

Notifications You must be signed in to change notification settings

Amousx/SolanaNFTBot

 
 

Repository files navigation

Solana NFT Bot

Solana NFT bot is a helpful bot for your Solana NFT projects.

Sponsor

This project is proudly sponsored by milktoast.world: An NFT project that aims to spread happiness and cheer.

If you find this project useful, please support us by give Milktoast a shoutout on twitter!

Features

Screen Shot 2021-11-01 at 7 40 44 pm

Running using docker

Requirement

Instructions

Run bot locally using docker in the terminal

Run the following command with your own secrets replaced with your own configuration:

docker run --name nftbot -d -p 4000:4000 -e DISCORD_BOT_TOKEN=YOURDISCORDTOKEN -e SUBSCRIPTION_DISCORD_CHANNEL_ID=YOURCHANNELID -e SUBSCRIPTION_MINT_ADDRESS=YOURMINTADDRESS milktoastlab/solananftbot

Note: The command above is tested in linux/unix env only. You may have a different experience in Windows. Please check the documentation on how to run docker command in windows if you need any help.

Alternatively, you can run it using docker-compose:

Update .env with your secret and run

docker-compose up bot

See here for more details on environment variables

View logs

docker logs ntfbot

Running in development

Requirement

  • Node >= 16.6
  • Yarn

Instructions

1. Install dependencies

yarn install

2. Update .env with your secrets

Follow the instructions here

3. Run the server

yarn dev

Configurable environments

Here are a list of environments you need to configure before running the NFT bot.

# Replace this with your RPC
SOLANA_RPC=https://explorer-api.mainnet-beta.solana.com/
# Discord bot secret
DISCORD_BOT_TOKEN=
# The discord channel to notify
SUBSCRIPTION_DISCORD_CHANNEL_ID=
# Mint address to watch for sales
SUBSCRIPTION_MINT_ADDRESS=

https://github.com/milktoastlab/SolanaNFTBot/blob/main/.env

Variable breakdowns

DISCORD_BOT_TOKEN

This is your discord bot secret. If you don't have a discord bot yet, you can create one following the instructions here: https://discordpy.readthedocs.io/en/stable/discord.html

Make sure your bot has the required permissions:

  • View channels
  • Read/Send messages
  • Send messages
  • Embed links

Screen Shot 2021-10-31 at 9 25 31 am

SUBSCRIPTION_DISCORD_CHANNEL_ID

This is the ID of the discord channel you want to send notifications to. You will need to enable developer mode have access the channel IDs. Here are the instructions: https://support.discord.com/hc/en-us/articles/206346498-Where-can-I-find-my-User-Server-Message-ID-

SUBSCRIPTION_MINT_ADDRESS

This is the address that you want the Solana NFT bot to watch for notifications. Ideally, it's the "Update Authority" address.

Screen Shot 2021-10-31 at 9 30 56 am

OR one of the creator addresses:

Screen Shot 2021-11-12 at 6 16 31 pm

Note: Avoid personal addresses because it could detect unwanted sales.

Marketplace support

Adding new marketplace

SolanaNFTBot aim to support as many marketplaces are possible. Here is the instruction on how you can add support to other marketplaces.

1. Add a new marketplace config

Use src/lib/marketplaces/solsea.ts as example

2. Write a test for the marketplace

Use src/lib/marketplaces/solsea.test.ts as example

3. Add the new marketplace to the existing list

src/lib/marketplaces/marketplaces.ts

Support

If you have any questions or feedback, feel free to jump into our discord #dev-talk channel and have a chat. https://discord.com/invite/GYxur2tvzP

About

A helpful bot for tracking your Solana NFT project on discord channels.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 99.2%
  • Other 0.8%