Open-Needs IDE#




user documentation

Open-Needs IDE shall provide extensions for different IDEs (VS Code, PyCharm) and is based on the Language Server Protocol.


There is already existing code available on, which is based on a code donation from the Automotive section of the Robert Bosch GmbH.

The current version of Open Needs IDE works with the needs.json file of Sphinx-Needs only.


Open-Needs IDE shall support the developer with time-saving functions to write needs inside an IDE more efficiently. It shall support autocompletion, following need references, syntax checks and much more.

For most of this tasks a technical knowledge about existing needs and their configuration is needed, so that Open-Needs IDE communicates with Open-Needs Server.


Open-Needs IDE is based on the Language server protocol, which makes it possible to use the same logic of checks and autocompletion for IDES of different vendors.

Only the IDE specific client part (IDE extension) is IDE specific, but it should mostly contain configurations and logic to connect to the Language Server only.

card "IDE" as ide #aaa{
    card "Open-Needs\nIDE extension" as ext #6fa {
        card "code completion" as comp
        card "goto reference"
        card "need id generation"
        card "need preview"


    artifact "code document" as doc
    hexagon "code change" as change

   doc -> change
   change --> comp

card "Open Needs\nLanguage server" #6fa {
    card "code completion" as ls_comp
    card "goto reference" as ls_ref
    card "need id generation" as ls_id
    card "need preview" as ls_preview

comp <-left-> ls_comp



For ideas and discussions going into details, please create a specific ticket on our github project.

For any other short information, feel free to add a comment.