You can write WebAssembly core modules in a wide variety of languages, and the set of languages that can directly create components is growing. See the Language Support section for information on building components directly from source code.
If your preferred language supports WebAssembly but not components, you can still create components using the
wasm-tools component tool. (A future version of this page will cover this in more detail.)