Metadata-Version: 2.4
Name: sphinx-codelinks
Version: 2.0.0
Summary: Fast Source Code Traceability for Sphinx-Needs
Author-email: team useblocks <info@useblocks.com>
Maintainer-email: Marco Heinemann <marco.heinemann@useblocks.com>, Jui-Wen Chen <jui-wen.chen@useblocks.com>
Requires-Python: >=3.11,<4
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: comment-parser>=1.2.4
Requires-Dist: ignore-python>=0.3.3
Requires-Dist: typer>=0.16.0
Requires-Dist: jsonschema
Requires-Dist: sphinx>=7.4,<10
Requires-Dist: sphinx-needs>=9.0.0,<10
Requires-Dist: ub-project>=1.1.0,<2
Requires-Dist: jinja2
Requires-Dist: pygments
Requires-Dist: docutils>=0.21
Requires-Dist: tree-sitter-cpp>=0.23.4
Requires-Dist: giturlparse>=0.12.0
Requires-Dist: tree-sitter-python>=0.23.6
Requires-Dist: tree-sitter~=0.25.1
Requires-Dist: tree-sitter-c-sharp>=0.23.1
Requires-Dist: tree-sitter-typescript>=0.23.2
Requires-Dist: tree-sitter-yaml>=0.7.1
Requires-Dist: tree-sitter-rust>=0.23.0
Requires-Dist: tree-sitter-go>=0.23.0
Requires-Dist: tree-sitter-json>=0.24.8
Requires-Dist: tree-sitter-bash>=0.25.1
Requires-Dist: furo>=2024.5.6 ; extra == "docs"
Requires-Dist: myst-parser>=4.0.0 ; extra == "docs"
Requires-Dist: sphinx-ai-index>=1.0.0,<2 ; extra == "docs"
Requires-Dist: sphinx-design>=0.6.1 ; extra == "docs"
Requires-Dist: sphinx-code-tabs>=0.5.5 ; extra == "docs"
Requires-Dist: sphinxcontrib-typer>=0.9.1 ; extra == "docs"
Requires-Dist: sphinxcontrib-video>=0.4.1 ; extra == "docs"
Requires-Dist: libclang>=16 ; extra == "libclang"
Project-URL: Changelog, https://github.com/useblocks/sphinx-needs/blob/master/packages/sphinx-codelinks/docs/changelog.rst
Project-URL: Documentation, https://codelinks.useblocks.com
Project-URL: Homepage, https://codelinks.useblocks.com
Project-URL: Issues, https://github.com/useblocks/sphinx-needs/issues
Project-URL: Repository, https://github.com/useblocks/sphinx-needs
Provides-Extra: docs
Provides-Extra: libclang

# Sphinx CodeLinks

A Sphinx extension for discovering, linking, and documenting source code across projects.

## Features

- **Source Discovery**: Automatically discover source files in your project
- **Analyse**: Parse source codes and extract specified markers with their metadata
- **Code Linking**: Create intelligent links between code elements
- **Sphinx Integration**: Seamless integration with existing Sphinx documentation

## Quick Start

```bash
pip install sphinx-codelinks
```

Add to your `conf.py`:

```python
extensions = ['sphinx_needs', 'sphinx_codelinks']
```

Sphinx-CodeLinks reads its configuration from an `ubproject.toml` file next to
`conf.py` by default (configurable via `src_trace_config_from_toml`).

## Documentation

Full documentation: https://codelinks.useblocks.com

## Components

- **Source Discovery** ([`src/sphinx_codelinks/source_discover`](src/sphinx_codelinks/source_discover)): Code analysis and discovery
- **Analyse** ([`src/sphinx_codelinks/analyse`](src/sphinx_codelinks/analyse)): Documentation generation
- **Sphinx Extension** ([`src/sphinx_codelinks/sphinx_extension`](src/sphinx_codelinks/sphinx_extension)): Sphinx integration
- **Command Line** ([`src/sphinx_codelinks/cmd.py`](src/sphinx_codelinks/cmd.py)): CLI interface

## Development

See [Development Guide](docs/development/) for contributing guidelines.

