Giter Club home page Giter Club logo

planning-poker-discord-bot's Introduction

Planning Poker Discord bot

A bot to play planning poker on Discord.

Getting Started

Installation

# Clone the repository
git clone https://github.com/Fubinator/planning-poker-discord-bot.git

# Enter into the directory
cd planning-poker-discord-bot/

# Install the dependencies
npm install

Configuration

After cloning the Repository and installing the dependencies, you need to copy the .env.example File to .env and add your Discord API Token to the environment variable DISCORD_SECRET (getting your API token is covered in the next section.)

Create a Bot app on Discord

To run your own instance of planning-poker-discord-bot you will need to creat a bot app on Discord's Developer Portal.

  1. Go to the Discord Developers Portal in your browser.
  2. Sign in with your Discord login details.
  3. In the top right of the page, click the button "New Application".
  4. Enter a relevant name and click "Create".
  5. From the panel on the left, select the menu option "Bot" then click on the button "Add Bot".
  6. There will now be a Token that is hidden, copy it and add it your .env file you created previously. The Token is your DISCORD_SECRET.
  7. From the panel on the left, select the menu option "OAuth2"
  8. Give your bot the bot scope with the Send Messages permissions.
  9. Paste the link it generates into your browser, this links to the bots invitation portal where you can add it to a server you control.
  10. The link should look like: https://discord.com/api/oauth2/authorize?client_id={YOUR_CLIENT_ID}&permissions=2048&scope=bot
  11. Once the bot arrives in your server, you are ready to run the bot.

Running the bot

npm start

Playing the game

What is Planning Poker?

Planning Poker is a gamified estimating and planning technique used frequently in agile teams to get an idea of how long certain task will take. A short video explanation can be found here.

Starting

Once your instance of the bot is added to your chosen server, gather your participants in text channel you wish to play in. It may be a good idea to make a channel specifically for playing planning poker.

Once every has there focus in the right channel, to start playing, type !start. The bot will will commence the game.

To join the game, each player has to add a reaction to the bot's last message.

Running a question

To put forward a user story or question to consider, just type !play followed by the question or feature to be considered. All players will then have 30 seconds to send their estimation to the bot via direct message.

After 30 seconds the bot will automatically close the question and display all players estimations in the text channel the game was started in.

If there are conflicting estimations, players will then have time to discuss there reasoning for the response they gave.

Example

!play How long will it take to do implement x?

Finishing a question

After a consensus has been reached and the team has decided on an amount of storypoints / ideal days / etc. for the proposed user story, you can type !storypoints followed by the agreed amount of effort to tell the bot that the question has finished.

Example

!storypoints 15

Ending the game

After all user stories have had an agreed upon amount of storypoints assigned to them you can then finish the game by typing !end. The bot will end the game and send all questions with the amount of given story points to the channel the game was started in.

Contributing

If you want to contribute, have a look here.

License

MIT

planning-poker-discord-bot's People

Contributors

fubinator avatar dependabot[bot] avatar xxkeefer avatar ryzbaka avatar jstruk avatar zephy20 avatar rocksheep avatar alpceylan avatar aknrg77 avatar daanisaanwezig avatar dawksh avatar erickborquez avatar jooaodanieel avatar milan090 avatar ahmetcetin avatar leonardoa-eb avatar lorenzoverardo avatar rgroves avatar bsantosh909 avatar nicosh avatar sambatlim avatar yerlantemir avatar zygiss22 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.