Hey @matthewbastien @snprajwal
I'm a Software Engineer (iOS) at Vodafone Egypt with a strong interest in Swift tooling and the Language Server Protocol. I'd love to work on the DocC Language Features in SourceKit-LSP project this GSoC.
I've been contributing to the Swift open-source ecosystem — I helped land PR #2404 in SourceKit-LSP (preventing jump-to-definition on literal values), which gave me a solid understanding of how definition requests flow through the language service layer. I also implemented the "Convert to Ternary Expression" refactoring action in swift-syntax (PR #3252), which deepened my familiarity with SyntaxVisitor and SyntaxRewriter.
I've drafted my proposal and would really appreciate your feedback before the submission deadline
The Proposal: Proposal Link
A few things I'd especially love your input on:
-
For go-to-definition, I'm planning to leverage
DocCReferenceResolutionServicerather than a workspace-wide symbol search, so SourceKit-LSP handles resolution with full documentation context. Does that align with how you'd expect this to be wired up? -
For diagnostics, I'm aiming for inline red underlines published via
textDocument/publishDiagnosticsrather than just suppressing broken links in the preview. Is there a preferred place inDocumentationLanguageServiceto hook into this? -
For preview navigation, I'm keeping all resolution logic server-side (in
DocumentationLanguageService) with only a thin webview shim on the VS Code extension side — so other editors benefit too. Does that match your vision for the feature?
Happy to discuss further or adjust the scope. Thanks for your time!
— Ahmad Ayman Mansour (@ahmad)