Metadata-Version: 2.5
Name: oc-lode
Version: 2.1.0
Summary: New reengineered version of LODE, maintained by OpenCitations
Project-URL: Homepage, https://github.com/opencitations/lode
Project-URL: Repository, https://github.com/opencitations/lode
Project-URL: Documentation, https://opencitations.github.io/lode/
Project-URL: Issues, https://github.com/opencitations/lode/issues
Author: Ahmadreza Nazari
Author-email: Valentina Pasqual <valentina.pasqual2@unibo.it>, Silvio Peroni <silvio.peroni@unibo.it>
License-Expression: ISC
License-File: LICENSE.md
Keywords: documentation,ontology,opencitations,owl,rdf,semantic-web,skos
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Documentation
Requires-Python: >=3.10
Requires-Dist: jinja2>=3.1.2
Requires-Dist: minify-html>=0.18.1
Requires-Dist: pyyaml>=6.0
Requires-Dist: rdflib>=7.4.0
Requires-Dist: requests>=2.31.0
Provides-Extra: server
Requires-Dist: fastapi>=0.104.1; extra == 'server'
Requires-Dist: gunicorn>=21.0.0; extra == 'server'
Requires-Dist: python-multipart>=0.0.6; extra == 'server'
Requires-Dist: uvicorn[standard]>=0.24.0; extra == 'server'
Description-Content-Type: text/markdown

# Lode

[![Run tests](https://github.com/opencitations/lode/actions/workflows/tests.yml/badge.svg)](https://github.com/opencitations/lode/actions/workflows/tests.yml)
[![Coverage](https://opencitations.github.io/lode/coverage/coverage-badge.svg)](https://opencitations.github.io/lode/coverage/)
[![License: ISC](https://img.shields.io/badge/License-ISC-blue.svg)](https://opensource.org/licenses/ISC)

Live Owl Documentation Enviroment (LODE) is an open source service that automatically extracts entities from semantic artefacts (OWL, RDF/RDFS, SKOS) and renders them, together with their textual definitions, as a human-readable HTML page designed for browsing and navigation through embedded links. This new reengineered version of LODE is maintained by OpenCitations. 

**Try it online:** a hosted instance of the web service is available at https://lode.opencitations.net/, with no installation needed.


## Installation

```bash
pip install oc-lode

# with the web service (`lode serve`)
pip install "oc-lode[server]"
```

 ## Usage

```bash
# Build static documentation from an ontology URL or a local file
lode build --url <url> --read-as <owl|rdf|skos> [--out ./docs] [--lang en] [--artefact-name index] [--imported] [--closure]
lode build --file <path> --read-as <owl|rdf|skos> [--out ./docs]

# Run the web service locally (requires the [server] extra)
lode serve --port 8000
```

## Documentation

Full documentation is available at: https://opencitations.github.io/lode/

## Prerequisites

This project uses [UV](https://docs.astral.sh/uv/) for dependency management.

### Setup

```bash
# Clone the repository
git clone https://github.com/opencitations/lode.git

# Enter the repo
cd lode

# Install dependencies
uv sync --all-extras --dev

# run locally
uv run python main.py

# open at 
localhost:8000
```

## Docker

### Build

```bash
docker build -t lode .
```

### Run

```bash
docker run -p 8080:8080 lode
```

### Run from Docker Hub

```bash
docker run -p 8080:8080 opencitations/lode:latest
```

Replace `latest` with the desired version tag.

The app will be available at `localhost:8080`.

## Running tests

```bash
uv run pytest tests/
```

## How to cite

If you use LODE, please cite both the paper and the software:

Pasqual, V., Nazari, A., Peroni, S. (2026). Supporting the understanding of ontologies for scientific knowledge graphs with the new version of LODE. In *Proceedings of the 6th International Workshop on Scientific Knowledge: Representation, Discovery, and Assessment (Sci-K 2026), co-located with the 25th International Semantic Web Conference (ISWC) 2026, Bari, Italy*, CEUR Workshop Proceedings, Vol. 4291, pp. 12–26. https://ceur-ws.org/Vol-4291/paper1.pdf

```bibtex
@inproceedings{pasqual2026lode,
  author    = {Pasqual, Valentina and Nazari, Ahmadreza and Peroni, Silvio},
  title     = {Supporting the Understanding of Ontologies for Scientific Knowledge Graphs with the New Version of LODE},
  booktitle = {Proceedings of the 6th International Workshop on Scientific Knowledge: Representation, Discovery, and Assessment (Sci-K 2026), co-located with the 25th International Semantic Web Conference (ISWC) 2026, Bari, Italy},
  series    = {CEUR Workshop Proceedings},
  volume    = {4291},
  pages     = {12--26},
  publisher = {CEUR-WS.org},
  issn      = {1613-0073},
  year      = {2026},
  url       = {https://ceur-ws.org/Vol-4291/paper1.pdf}
}
```

To cite the software (all versions), use this BibTeX entry:

```bibtex
@software{lode,
  author    = {Pasqual, Valentina and Peroni, Silvio and Nazari, Ahmadreza},
  title     = {LODE - Live OWL Documentation Environment},
  year      = {2026},
  publisher = {Zenodo},
  doi       = {10.5281/zenodo.21805185},
  url       = {https://github.com/opencitations/lode}
}
```

<!-- ### Building documentation locally

```bash
cd docs
npm install
npm run dev
``` -->

## License

This project is licensed under the ISC License - see the [LICENSE.md](https://github.com/opencitations/lode/blob/main/LICENSE.md) file for details.
