There are many environments you can use to write and execute CircuitPython code. Below, we go over some specifics and comparisons of viable environments.
Visual Studio Code is not quite an IDE, but comes close. It is still a text editor, but a far more advanced one at that. Visual Studio Code allows you to install extensions, which are analogous to browser extensions; they allow for various languages or additional features in VS Code. There is a CircuitPython extension which can be installed for free in order to use VS Code with your board. You can also use the command pallette to start and close the serial output window. You can also install extensions to help with debugging and unit testing.
Download Here: https://code.visualstudio.com/download
The Mu Editor is an editor specifically designed for CircuitPython; thus, it is the most stable and reliable. It has a simple interface that is great for beginners or novice programmers. It contains a built-in serial output window, which displays any feedback or output from your program or the board, and a plotter if the circuit you are developing with has any output. You can even use this environment to write regular Python code, as well as with MicroPython and Raspberry Pi!
Download Here: https://codewith.mu
Sublime Text is a classic text editor. As previously mentioned, a text editor is a straightforward environment in which one can simply edit text or code. Sublime Text creates a more streamlined environment in which developing code is the primary goal. You can push changes to the CircuitPython Board using Sublime, and you can access the serial output through your machine's terminal.
Download Here: https://www.sublimetext.com/download
The CircuitPython Web Editor is a browser-based development environment that removes the need to download or install local software. By leveraging your web browser, you can directly modify your hardware scripts via a standard USB connection. This cloud-based tool includes built-in file management, code auto-completion, and an integrated REPL serial monitor to easily view live feedback and debug runtime errors directly from your browser tab.
Check it out on: https://code.circuitpython.org
For how to use watch this Tutorial