Because the Community Toolkit consists of integrations across a lot of different runtimes, setting up a development environment can be a bit complex. Below we outline the recommended approach to developing, as well as a manual setup if you prefer not to use the recommended approach.
The easiest, and recommended way is to use VS Code with the devcontainer
extension.
This will run the development environment in a container, install all the necessary tools and dependencies, add extensions to align with our contribution guidelines, and ensure that you have a consistent development environment.
Note: There is an issue with devcontainers in that the ports bound by the DCP (the thing the app host uses to orchestrate behind the scenes) are not exposed to the host machine, meaning that the HTTP endpoints fail to resolve. This can be fixed by manually forwarding the port. This is a known issue in Aspire and being tracked for a 9.1 fix 🤞.
If you prefer not to use devcontainer
, you can manually set up your development environment by installing the following tools:
- .NET 8 and .NET 9
- Node.js LTS
- Java JDK 11
- You'll also need Gradle and Apache Maven
- Bun
- Deno 2
- Go 1.23
- Python 3
- Rust
- Docker
- Podman is also supported, but Docker is recommended for consistency.
And of course, an editor such as Visual Studio, JetBrains Rider or emacs.