Question about DocC Language Features in SourceKit-LSP

Hi everyone,

My name is Rohit Kumar, and I’m a computer science student interested in programming language tooling and developer tools. Recently I have been exploring the Swift ecosystem and learning about the tooling infrastructure around Swift, including SourceKit-LSP and Swift-DocC. I’m planning to apply for Google Summer of Code 2026 with the Swift organization.

I’m particularly interested in the project DocC Language Features in SourceKit-LSP.

From what I understand, SourceKit-LSP currently provides language features such as code completion, diagnostics, and navigation for Swift code in editors like VS Code. However, documentation written using DocC (Swift’s documentation system) does not yet have the same level of editor support.

This means that when developers write DocC documentation comments or DocC articles, features like syntax highlighting, diagnostics, or navigation between symbols and documentation may be limited or missing inside the editor.

My understanding is that the goal of this project is to improve the editing experience for DocC content by adding language-server features to SourceKit-LSP. This could include things like:

• Better syntax awareness for DocC markup
• Diagnostics or validation for incorrect documentation references
• Navigation between documentation and the corresponding Swift symbols
• Improved tooling support when editing DocC comments or articles

While reading about the project, I had a few questions to better understand the intended scope:

  1. Should the main focus be on supporting DocC documentation comments inside Swift source files, or also on DocC standalone documentation articles?

  2. Are there already components in the Swift-DocC toolchain that SourceKit-LSP can reuse for parsing DocC markup, or would this project require implementing additional parsing or analysis logic?

  3. What types of editor features are considered the highest priority for this project (for example diagnostics, navigation, or completion)?

  4. Is the expectation that these features will primarily be used in VS Code, or should the design remain editor-agnostic within the Language Server Protocol?

  5. Are there specific areas of the SourceKit-LSP codebase that would be helpful to explore first for someone preparing to contribute to this project?

I’m looking forward to learning more about this project and would appreciate any guidance on how to get started exploring the relevant parts of the codebase.

Thank you!

Rohit