/cb-bot

Primary LanguageJavaScript

Let's Build Some Bots

General

Our goals are pretty straight forward:

  1. Gain experience as individuals and get experience building something as a team
  2. Build bots to make the server more engaging and enriching to people learning code
  3. Have fun and learn!

If you're reading this, you've been invited to this repo, so that means you're already part of the party.

Philosophy

We are generally going to follow these principles:

  • All ideas are worthy of conversation
  • All contributions are equal, no matter how big or how small
  • We here to learn and grow, that can lead to disagreements, but we vow to work through them to build cool shit.
  • Be patient with each other, no question is too small or trivial.
  • This list is ever-growing.

Rules

  • Don't criticize someone elses' code. If you think something could be done better, PR a change with an explanation.
  • You can only approve a PR, once you've had a PR approved.

Proposed Bot Features

Here is a list of the features this bot will handle. This list is ongoing and is by no means complete:

  1. Streak Bot - a bot that tracks our member's coding streaks on a daily basis to encourage people to keep coming back to coding
  2. Welcome Bot - a bot that welcomes new members and ask them simple questions to help get them acclimated in the server
  3. Points Bot - a bot that allows users to give others points for helping them with their coding problems and tracks this points.

Workflow

We will be collaborating on GitHub to get this done. Our workflow will be simple:

  1. Pull this repo to your machine
  2. Create a branches everytime you're adding a feature or fixing something. These branches should follow this convention: [name]/[what-the-branch-is-doing] e.g. earn/initializes-bot
  3. Commit your branch to the repo and PR it into main. ** PRs can be approved by anyone who has had PR approved in the past. Right now that's @earn @DouLo and @chris.
  4. Once your PR is merged, delete your branch. If you forget to do this, someone else will if they notice an inactive branch.

We're all sharing one bot key while the bot is in development in the development server. You dont have the credentials, reach out to @earn for the file.

Stack

The only parts of the stack that are locked in are:

  1. Node.js
  2. Discord JS
  3. lowdb

There are still things to figure out:

  1. Database
  2. Hosting
  3. Other shit that I'm not aware of at this point.

Resources

Lastly, this will be a huge learning journey for all of us. There won't be pressures or expectations for anyone, just having fun and building something we can show off and talk about with pride.