Skip to content

Feature Request: VS Code Extension Integration for Enhanced Developer Experience #91

@maatheusgois-dd

Description

@maatheusgois-dd

Hey team! 👋

I've been testing sourcekit-bazel-bsp and it's incredibly powerful. However, the current setup requires several manual steps that can be a barrier for developers getting started.

The Challenge

Currently, developers need to:

  1. Manually create/edit .bsp/skbsp.json configuration files
  2. Remember to update the config when switching between Bazel targets
  3. Manually reload VS Code after configuration changes
  4. Troubleshoot BSP connection issues without clear visibility into what's happening
  5. Understand the relationship between Bazel targets and BSP configuration

This friction can make adoption difficult, especially for teams new to Bazel or BSP.

Proposed Solution

I've built SwiftBazel - a VS Code extension that acts as a user-friendly interface layer for sourcekit-bazel-bsp. It provides:

  • One-click BSP setup: SwiftBazel: Setup BSP Config for Selected Target
  • Automatic config updates: Prompts when switching targets with different BSP configurations
  • Live BSP log monitoring: Real-time streaming of sourcekit-bazel-bsp logs for debugging
  • Visual target management: GUI for selecting/switching Bazel targets
  • Integration with build workflow: Coordinates BSP with Bazel builds/debugging

🔗 Project: https://github.com/maatheusgois-dd/swiftbazel

Demo

Demo

The Ask

I'd love to:

  1. Get feedback on this approach - does it align with the BSP team's vision?
  2. Collaborate on improving the developer experience around BSP adoption
  3. Contribute features that could make sourcekit-bazel-bsp easier to integrate for other tool builders
  4. Share learnings about common pain points we've solved

This extension complements sourcekit-bazel-bsp by handling the "last mile" of developer experience - making it accessible to developers who just want to "press a button and have it work."

Would love your thoughts on this approach and how we can work together to make BSP adoption smoother for the Swift/iOS community! 🚀

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions