> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.squarecloud.app/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# discord.js or discord.py: which one to choose

## Why the choice matters (and why it doesn't matter that much)

discord.js and discord.py are the two most-used libraries to build Discord bots. Both are mature, free, and capable of doing practically anything. The main difference is the **language**: discord.js uses JavaScript/Node.js and discord.py uses Python. The good news is you get a great bot with either one — and both run on Square Cloud.

## discord.js (JavaScript / Node.js)

**Pros:**

* Huge Node.js (npm) ecosystem, with packages for everything.
* Great performance for large, asynchronous bots.
* Enormous documentation and community.
* Ideal if you already work with web or JavaScript.

**Cons:**

* The asynchronous nature (async/await, Promises) can confuse beginners.
* Changes between major versions require code adjustments.

## discord.py (Python)

**Pros:**

* Clean, easy-to-read syntax — excellent for those starting to program.
* Widely used in automation and data projects.
* Good documentation and an active community.

**Cons:**

* The bot package ecosystem is a bit smaller than Node's.
* For very high scale, it requires more attention to performance.

## Quick comparison

* **Language**: discord.js uses JavaScript; discord.py uses Python.
* **Learning curve**: discord.py tends to be gentler for beginners; discord.js is natural for those who already know JS.
* **Performance at scale**: both scale well, with a slight edge to discord.js for very large bots.
* **Community**: both huge, with discord.js ahead in number of packages.

## Which one to choose?

* **Just starting to program?** discord.py is usually friendlier.
* **Already work with JavaScript or web?** discord.js will feel natural.
* **Want the largest possible ecosystem?** discord.js has the edge.

There's no wrong choice: go with the language you feel most comfortable with and get started.

## Both run on Square Cloud

Regardless of your choice, Square Cloud natively hosts bots in Node.js and Python. When your bot is ready, see [How to create a Discord bot from scratch](https://help.squarecloud.app/en-us/article/how-to-create-a-discord-bot-from-scratch-121njg3/) and then [How to host a Discord bot](https://help.squarecloud.app/en-us/article/how-to-host-a-discord-bot-e2udcn/) to put it online 24/7.
