Enhancing Code Completion Documentation in SourceKit-LSP

Name: Qursam Bibi
University: University of Lahore (2nd Year, Information Engineering Technology)
Skills: C++ (strong DSA background), Swift, TypeScript (basic), familiarity with LSP
As a developer passionate about improving programming tools, I want to enhance Swift's IDE support by improving documentation display in SourceKit-LSP. Currently, developers only see the first line of documentation during code completion and lack signature help - key features available in other modern languages.

This project will:

  1. Show full documentation instead of just the first line
  2. Implement signature help for function parameters
  3. Support rich formatting (like Markdown)
    I'll modify:
  4. SourceKit (C++) to provide complete documentation from compiler data
    *2.SourceKit-LSP (Swift) to properly display docs and handle signature help requests
    My Qualifications:
    1.Strong C++ skills from university coursework and DSA practice
    *2. Swift experience from iOS development
  5. Familiarity with LSP through vscode-swift contributions
    Impact
    These changes will:
    1.Save developers time by showing complete docs instantly
    2.Reduce errors through better parameter guidance
    3.Match features offered by other major languages
    As a second-year student at University of Lahore, I'm eager to contribute to Swift's tooling ecosystem. I've already set up the development environment and begun exploring the codebase. With guidance from mentors, I'm confident I can deliver these improvements during GSoC 2025.

This project aligns perfectly with my interests in compilers and developer tools, and I'm excited for the opportunity to make Swift programming more productive for everyone.

Hi @qursam45,

Great to hear that you are interested in improving SourceKit-LSP as part of GSoC. I want to note that this does not constitute a GSoC project proposal, you need to submit them to the Google Summer of Code website. If you have concrete questions, you can ask them here.