Awesome
web3terms
A Twitter bot explaining and simplifying web3 terms to everyone!
<img width="600" alt="Screenshot 2022-04-07 at 22 58 40" src="https://user-images.githubusercontent.com/45847909/162620196-98c4c249-de0b-42de-bb8e-bdb19062d64e.png">🏆 Features
- Web3 terms explanation ✅
- Daily Web3 terms tweet ✅
- Acknowledgement tweet ✅
- Test Coverage ✅
- Endpoint
https://web3terms.onrender.com/terms
to retrieve all terms ✅- Response:
{ "previousPage": "xx", "nextPage": "xx", "total": xxx, "totalPages": xxx, "items": [ { "term": "abi", "meaning": "ABI is the standard way to interact with contracts in the Ethereum ecosystem, both from outside the blockchain and for contract-to-contract interaction." }, //... ] }
- To filter, pass the query params
page
and/orlimit
.
🛠 Installation
- Install Node.js on your PC
- Start by making a fork of the repository. Click on the "Fork" symbol at the top right corner
- Clone this repo
git clone https://github.com/Olanetsoft/web3terms.git
- Run
yarn
It will install Twit, the library that lets us talk to Twitter.
🥂 After making a change
- Sort the file
yarn run sort
- Run a test to check all definition length
yarn test
- Create a new branch
git checkout -b <Your-branch-name>
- Add changes
git add .
- Add a commit message
git commit -m "<your message>"
- Push your changes
git push --set-upstream origin <branch-name>
-
Create a Pull Request
-
Congratulations 🙌🏼
🔀 Connecting to Twitter
- Register a Twitter account and also get its "app info".
Twitter doesn't allow you to register multiple twitter accounts on the same email address. I recommend you create a brand new email address (perhaps using Gmail) for the Twitter account. Once you register the account to that email address, wait for the confirmation email.
- Now go here and log in as the Twitter account for your bot:
- Fill up the form and submit.
- Next once the submission completes you will be taken to a page which has the
- "Settings" tab : Update details here
- "Permissons" tab : Enable
Read and Write
- "Key and Access Token" tab : Click on
Generate access token
.
- Create a
.env
file and fill in the generated tokens in the "Key and Access Token" tab.
It should look like this:
PORT=xxxx
NODE_ENV=development
DEV_BASE_URL=http://localhost:$PORT
PROD_BASE_URL=http://localhost:$PORT
TWITTER_CONSUMER_KEY=xxxx
TWITTER_CONSUMER_SECRET=xxxx
TWITTER_ACCESS_TOKEN=xxxx
TWITTER_ACCESS_TOKEN_SECRET=xxxx
- Type the following in the command line in your project directory to start the project
yarn dev
You should have something similar to what is shown below on your terminal.
[LOGGING] info: "Connected!"
[LOGGING] info: "Server running on port xxxx"
👨👩👦 Community
Don't forget to follow Web3terms on twitter
🧑💻 Contributing
- Contributions make the open source community such an amazing place to learn, inspire, and create.
- Any contributions you make are greatly appreciated.
- Check out our contribution guidelines for more information.
- Star - If you like it
- Fork - If you like to build your own version
- File an issue - If you found a bug
- Send a pull request - If you want to contribute
Whats Next
You might want to push this app to a running server, here is a curated list you can checkout..
Do not misuse the twitter api to spam or burden the server load for twitter api, as twitter follows a strict rule of closing down accounts that do that. Please read here for the rules
Note to Contributors
- All web3 terms in the
data/terms.json
directory should be in lowercase. - Look to ensure that newly added terms aren't already available to avoid repetition of terms and keywords.
🫂 Credits
- Twit Library
- Nishant Srivastava
- Ugwu Stanley the creator of Decode Abbreviation
Thanks to all Contributors 💪
Thanks a lot for spending your time helping Web3Terms Bot grow. Happy Hacking 🍻