Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>ubCodeNew to Visual Studio Code? Get it now.
ubCode

ubCode

useblocks GmbH

useblocks.com
|
1,310 installs
| (3) | Free
Sphinx and Sphinx-Needs real-time project insights.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Enhance Sphinx and Sphinx-Needs editing experience

ubCode features a lightning-fast language server that deeply understands Sphinx-Needs to provide a joyful editing experience in VS Code.

Documentation: https://ubcode.useblocks.com/

ubCode is currently in open beta and improving rapidly. If you have any feedback or issues, please let us know:

  • Public feedback
  • Private support

Real-time indexing of RST files

A Rust based RST indexer provides real-time insights into your Sphinx projects. The data is used to power many of the features below.

Real Time Index

If the setting index_on_save is enabled, the indexer will re-index the whole project when a file is saved. This ensures that the index is always up-to-date.

Real-time preview of RST files

ubCode maintains a continuously updated preview of your RST files. It shows how Sphinx / docutils will see your RST input. Common mistakes can be detected such as wrong indentation, broken lists or directives.

Real Time Preview

Navigation / LSP features

The indexer powers many navigation features such as "Go to Definition", "Find all References" and "Peek Definition".

Navigation

Linting & Diagnostics

Common RST linting issues are detected and highlighted in real-time.

Linting

For project wide diagnostics a dedicated view is available:

Diagnostics

Formatter

ubCode integrates an RST formatter that can fix lint issues and integrates deeply with RST and known directives. It integrates into VS Code using the Format Document command or on save with a configuration like this:

  "[restructuredtext]": {
    "editor.defaultFormatter": "useblocks.ubcode",
    "editor.formatOnSave": true
  },

The formatter can also wrap paragraphs to a given line length, so you do not have to worry about that anymore. Its behavior can be customised.

Large projects

ubCode is designed to handle large Sphinx projects with thousands of files and need items.

Large Projects

Filtering

Filtering

Model Context Protocol (MCP) Integration

ubCode includes a built-in MCP server that provides AI assistants with seamless access to your Sphinx-Needs project data. This integration enables AI tools to query and retrieve information about requirements, specifications, and other needs directly from your project.

The MCP server automatically:

  • Provides access to individual need data by ID
  • Supports structured querying with filtering, sorting, and field selection
  • Handles need relationships and linkages
  • Respects project configuration and indexing
  • Offers type-safe query operations without string parsing

AI assistants can use this integration to help with requirements traceability, project analysis, and documentation tasks by directly accessing your ubCode indexed data.

Needs Graph Viewer

The interactive Needs Graph Viewer provides a visual representation of relationships between needs in your project. This powerful visualization tool helps you understand complex requirement dependencies and navigate large projects more effectively.

Key features:

  • Interactive visualization: Zoom, pan, and explore need relationships
  • Multiple access points: Open from command palette, tree view, or RST files
  • Relationship mapping: See forward and backward links between needs
  • Configurable depth: Adjust the relationship distance to control graph complexity
  • Node details: Click nodes to view need information and metadata
  • Smart layout: Automatic arrangement using hierarchical layout algorithms

To access the graph viewer:

  • Use Ctrl+Shift+P → "ubCode: Open needs graph view"
  • Click the eye icon next to a need in the tree view
  • Right-click a need ID in RST files → "Show ubcode need ID in the graph view"

Needs Graph Viewer

License

ubCode and its companion CLI app ubc is available free of charge with all features for public open source projects. For private projects, a paid license is required.

We also offer free trials, so that you can evaluate ubCode in your own environment. Please get in touch with us for that.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft