Steembot Project Template for SAO/Docker
docker-steem-bot-template
Template/Example project for creating steem bots with nodejs.
This is a template project just to get developer started in developing steem bots and quickly testing/executing.
It's also useful for getting non-technical people to run their own steem bots.
What You Get (the stack)
The example project (included) uses:
Library | Version | Purpose |
---|---|---|
bluebird | ^3.5.1 | Promises |
expressjs | ^4.16.2 | Web framework and routing |
promised-handlebars | ^2.0.1 | Templating |
momentjs | ^2.20.1 | Date/Time abstraction layer |
steemjs | ^0.7.1 | Steem API Library |
node-schedule | ^1.3.0 | Task scheduling |
Web Layer
This project adds a web layer to bots allowing the user to interface with bot configuration even when the process is backgrounded without having to restart.
Scheduling Layer
There is an example case for scheduling a task. It's amazeballs!
Dependencies
IMPORTANT this contribution requires New Docker Image for Building/Executing Bots Running Against the Steem Platform
Usage
docker run --rm -p 3000:3000 my-repo/my-steem-bot:latest
Mac OS Users
can run the following after
open http://localhost:3000
SAO
First install SAO and yarn
~/s/g/r351574nc3 ❯❯❯ brew install yarn
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
...
...
🍺 /usr/local/Cellar/yarn/1.3.2: 14 files, 3.9MB, built in 7 seconds
~/s/g/r/steem-digest-example git:master ❯❯❯ yarn global add sao
zsh: correct yarn to tar [nyae]? n
yarn global v1.3.2
[1/4] 🔍 Resolving packages...
[2/4] 🚚 Fetching packages...
[3/4] 🔗 Linking dependencies...
[4/4] 📃 Building fresh packages...
success Installed "[email protected]" with binaries:
- sao
✨ Done in 15.77s.
Import from Github
To use this template with SAO simply run
~/s/g/r/steem-digest-example git:master ❯❯❯ sao r351574nc3/docker-steem-bot-template
warning Config file was not found, we simply copy it to dest folder!
success Done, let the hacking begin!
~/s/g/r/steem-digest-example git:master ❯❯❯ ls ✱ ◼
Dockerfile LICENSE README.md app package-lock.json package.json
Upcoming Features
Better Templating
Included is a messaging abstraction that uses handlebars
templating to allow users that want to
- Send messages
- Post digest-style discussions
- Post templated responses to comments
Text Messaging Layer
Receive text notifications for certain criteria.
Visualization Layer
D3.js integration to visualize your inner circle or those of others.
Workflow Layer
Use Lambda Step integration for creating automated workflows like
- requiring 5 users acknowledge a post before giving an automatic upvote
- requiring user approval to add a user to a blacklist.
- Sending FYI notifications to members of a specific discord role
Chat Layer
- Discord integration
- Slack integration
Git Integration
- Post to steem via git commit/push
Moar Examples
Examples for varying use cases
- Blacklists/whitelists
- downvoter/curator
- voting queue
- contest bot
- upvotes received bot
- Datamining bot
- Digest Post Bot
- text messages and notifications
- steem visualizations
- steem workflow (moderator/curator guild workflow)
- steem project update via git commit
- discord/steem bot
Contributing
See Also CONTRIBUTING.md
- Send a Pull Request (PR) to https://github.com/r351574nc3/docker-steem-bot-template/pulls
- Submit an issue to https://github.com/r351574nc3/docker-steem-bot-template/issues
Posted on Utopian.io - Rewarding Open Source Contributors
Moar like this!
looking forward to playing with this. Right after I get my seed and backup witness nodes in the rack.
https://discord.gg/FMNQBZs for @r351574nc3 discord dev channel if you
Thank you for the contribution. It has been approved.
You can contact us on Discord.
[utopian-moderator]
Hey @r351574nc3 I am @utopian-io. I have just upvoted you!
Achievements
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x