This bot provides functionalities for 'Community Classroom' discord server.
Community Classroom is an initiative 'for the students, by a student'. The initiative aims to provide 'quality education which is free for all'.
Follow us and be a part of this amazing community.
We believe that every student, irrespective of their college or branch, can make it big. Community Classroom is an initiative built on this thought. We provide hands-on training, mentorship and have an inclusive community. All of our courses are FREE and better than most paid courses. We cover every topic in detail and mentor you to stand out and get opportunities by breaking all the barriers. Get expert guidance with career, Open Source, and internships, jobs around the world.
Thank you for putting your time to contribute and helping others out. Before contributing do kindly read and follow Code of conduct To get started with contributing go through the following steps
- Any system with basic configuration.
- Operating System : Windows / Linux / Mac
- Node.js installed (If not download it here).
- Any text editor of your choice.
- Discord account and a discord server where you have admin access
- Firstly to make your own copy of the project you have to fork the repository. To fork the repository press the fork button. In case of any difficulty refer to the image below
- Now after you have forked your project its time to clone it into your local device so that you can work on it
- In your forked repository click on the green code button and copy the provided link. In case of any difficulty refer to the image below
- Now in your desktop open
git bash
and typegit clone <your-clone-url>.git
and press enter - Now, your forked repo has been cloned in your device
Before starting make sure you have developer mode enabled in your discord
If not then got to Settings > Advanced > Developer Mode: ON
Whenever you want to contribute to any project it is a good practice to make a separate branch and push it as PR rather than making changes to the main/master branch
git checkout -b <your-branch-name>
will make a separate branch and will take you to it- Now you are ready to make your desired changes
- First visit here
- Login with your discord credentials and will see the screen(image below and for you it will probably be a blank one)
- Now click the
New Application
button(refer to image above) - Name your bot and press
create
- Now you will appear at the application dashboard where you can customize your bot(refer to image below)
- Now to create your bot instance go to
Bot
tab and pressAdd Bot
followed byYes,do it
in the following popup(refer to image below) - Now you will appear to this screen(image below)
- Go to
OAuth2
and copy the client id(refer to image below) - Now to invite the bot to your server, paste this link in your browser
https://discord.com/api/oauth2/authorize?client_id=<app-id>&permissions=8&scope=bot
and just replace<app-id>
with your copied client id - Now you will be redirected to this screen(image below) where you have to select a server and click on
continue
andauthorize
after that
- Open the folder of your cloned repository with any text editor of your choice
- Now go to developers portal where you created the bot and copy the bot token from
Bot
tab(refer to image below) - Now create a
.env
file in your root folder and copy everything from.env-sample
file and replace theBOT-TOKEN
value with the copied token. Note that the.env
file should be nameless. Create a file with no name, and just the extenstion of.env
. If you add a name to the file,npm start
will not be able to access the token. - In the terminal run
npm install
, this will install all the packages - Then to start our server run
npm start
, this will start our server and the bot will be online
This bot is reserved for functionalities offered for community classroom community.
=======
After making the desired changes and testing use git add .
command to add the files to the Git staging area. This area contains a list of all the files you have recently changed.
git commit -m <Type in the commit message>
to commit your changes to save your changes to the local repository.
Each commit message consists of a header, a body, and a footer.
<header>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
Any line of the commit message cannot be longer than 100 characters.
<type>(<scope>): <short summary>
│ │ │
│ │ └─⫸ Summary in present tense. Not capitalized. No period at the end.
│ │
│ └─⫸ Commit Scope: animations|bazel|benchpress|common|compiler|compiler-cli|core|
│ elements|forms|http|language-service|localize|platform-browser|
│ platform-browser-dynamic|platform-server|router|service-worker|
│ upgrade|zone.js|packaging|changelog|dev-infra|docs-infra|migrations|
│ ngcc|ve
│
└─⫸ Commit Type: build|ci|docs|feat|fix|perf|refactor|test
The <type>
and <summary>
fields are mandatory, the (<scope>)
field is optional.
Must be one of the following:
feat
Commits, that adds a new featurefix
Commits, that fixes a bugrefactor
Commits, that rewrite/restructure your code, however does not change any behaviourperf
Commits are specialrefactor
commits, that improves performancestyle
Commits, that do not affect the meaning (white-space, formatting, missing semi-colons, etc)test
Commits, that add missing tests or correcting existing testsdocs
Commits, that affect documentation onlybuild
Commits, that affect build components like build tool, ci pipeline, dependencies, project version, ...ops
Commits, that affect operational components like infrastructure, deployment, backup, recovery, ...chore
Miscellaneous commits e.g. modifying.gitignore
The scope
provides additional contextual information.
- Is an optional part of the format
- Allowed Scopes depends on the specific project
- Don't use issue identifiers as scopes
Use the summary field to provide a succinct description of the change:
- use the imperative, present tense: "fix" not "fixed" nor "fixes"
- don't capitalize the first letter
- No dot (.) at the end
- Your commit message should not contain any whitespace errors
- Remove unnecessary punctuation marks
- The
body
should include the motivation for the change and contrast this with previous behavior. This commit message should explain why you are making the change. - Is an optional part of the format
- Use the imperative, present tense: "fix" not "fixed" nor "fixes"
- This is the place to mention issue identifiers and their relations
The footer
can contain information about breaking changes and is also the place to reference GitHub issues, and other PRs that this commit closes or is related to.
BREAKING CHANGE: <breaking change summary>
<BLANK LINE>
<breaking change description + migration instructions>
<BLANK LINE>
<BLANK LINE>
Fixes #<issue number>
Breaking Change section should start with the phrase "BREAKING CHANGE: " followed by a summary of the breaking change, a blank line, and a detailed description of the breaking change that also includes migration instructions.
It's an optional part of the format.
-
type: :emoji: summary (changes made)
To know which type
to use refer this
To find suitable emoji for the changes refer this
For summary refer this
- Separate the subject from the body with a blank line
- Your commit message should not contain any whitespace errors
- Remove unnecessary punctuation marks
- Do not end the subject line with a period
- Capitalize the subject line and each paragraph
- Use the imperative mood in the subject line
- Use the body to explain what changes you have made and why you made them.
- Do not assume the reviewer understands what the original problem was, ensure you add it.
- Do not think your code is self-explanatory
- Follow the commit convention defined by your team
feat: :sparkles: add the amazing button
Every contributor's efforts and time are deeply appreciated 😄