Developer Docs - Obsidian - Core Development Environment
This page discusses things you should have configured in your environment for core development. Before you begin writing Obsidian code you will want to configure your development environment. Many things will be enforced by ESLint once it is enabled, but a few things you will want to configure in your editor.
Visual Studio Code
VS Code provides a rich development experience for Obsidian. While you can't work with the entire Rock solution in Visual Studio Code, you can work with the two Obsidian projects there. This does provide some additional benefits as you can have the VS 2022 debugger running and still be able to build the Obsidian projects over in VS Code.
In the root folder of the repository is a file called Rock.code-workspace. This is roughly the equivalent of a solution file. When you open it for the first time it will recommend some extensions be installed. You will want those extensions. You'll also want to
You don't need to configure any custom settings in VS Code for formatting, such as spacing. All recommended settings will be placed in the workspace file so they automatically get applied when you open the workspace.
Building
While there are full-build tasks, the normal way to handle building in VS Code is with the watch tasks. To get to these you can use the command pallet (CTRL+SHIFT+P) and the "Tasks: Run Task" command. You can then pick which build task you want. In this case, you probably want the "Watch All Obsidian" task. This will build Obsidian Controls and Obsidian Blocks and then watch for changes. Whenever a change is detected it will automatically start recompiling everything that depends on what you changed.
Visual Studio 2019/2022
Visual Studio IDE should not be used for editing .obs files. This is older documentation from when both were supported. Only VS Code is supported now.
The following options should be enabled under Tools > Options.