diff --git a/CITATION.cff b/CITATION.cff index 3e60524..72c877f 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -28,7 +28,7 @@ preferred-citation: given-names: "Alberto" orcid: "http://orcid.org/0000-0002-9163-7730" title: "VueGen: Automating the generation of scientific reports" - journal: "bioRxiv" + journal: "Bioinformatics Advances" year: 2025 - doi: "10.1101/2025.03.05.641152" - url: "https://www.biorxiv.org/content/10.1101/2025.03.05.641152v1" \ No newline at end of file + doi: "10.1093/bioadv/vbaf149" + url: "https://doi.org/10.1093/bioadv/vbaf149" \ No newline at end of file diff --git a/LICENSE b/LICENSE.md similarity index 73% rename from LICENSE rename to LICENSE.md index 06c93b8..38d0da0 100644 --- a/LICENSE +++ b/LICENSE.md @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2023 Multi-omics Network Analytics Group +Copyright (c) 2025 Multi-omics Network Analytics Group Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -19,3 +19,13 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Creative Commons Attribution 4.0 International License (CC BY 4.0) + +Copyright (c) 2025 Multi-omics Network Analytics Group + +The creative works from this project are licensed under a Creative Commons Attribution +4.0 International License. + +To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/. + diff --git a/README.md b/README.md index 1d29d66..122ab44 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ | Information | Links | | :-------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Package** | [![PyPI Latest Release](https://img.shields.io/pypi/v/vuegen.svg)][vuegen-pypi] [![Conda Latest Release](https://img.shields.io/conda/v/bioconda/vuegen.svg)][vuegen-conda] [![Supported versions](https://img.shields.io/pypi/pyversions/vuegen.svg)][vuegen-pypi] [![Docker Repository on Quay](https://quay.io/repository/dtu_biosustain_dsp/vuegen/status "Docker Repository on Quay")][vuegen-docker-quay] [![License](https://img.shields.io/github/license/Multiomics-Analytics-Group/vuegen)][vuegen-license] | +| **Package** | [![PyPI Latest Release](https://img.shields.io/pypi/v/vuegen.svg)][vuegen-pypi] [![Conda Latest Release](https://img.shields.io/conda/v/bioconda/vuegen.svg)][vuegen-conda] [![Supported versions](https://img.shields.io/pypi/pyversions/vuegen.svg)][vuegen-pypi] [![Docker Repository on Quay](https://quay.io/repository/dtu_biosustain_dsp/vuegen/status "Docker Repository on Quay")][vuegen-docker-quay] [![License](https://img.shields.io/github/license/Multiomics-Analytics-Group/vuegen)][vuegen-license] [![CC BY 4.0][cc-by-shield]][vuegen-license]| | **Documentation** | [![View - Documentation](https://img.shields.io/badge/view-Documentation-blue?style=flat)][vuegen-docs] [![made-with-sphinx-doc](https://img.shields.io/badge/Made%20with-Sphinx-1f425f.svg)](https://www.sphinx-doc.org/) ![Docs](https://readthedocs.org/projects/vuegen/badge/?style=flat) | | **Build** | [![CI](https://github.com/Multiomics-Analytics-Group/vuegen/actions/workflows/cdci.yml/badge.svg)][ci-gh-action] [![Docs](https://github.com/Multiomics-Analytics-Group/vuegen/actions/workflows/docs.yml/badge.svg)][ci-docs] | | **Examples** | [![HTML5](https://img.shields.io/badge/html5-%23E34F26.svg?style=for-the-badge&logo=html5&logoColor=white)][emp-html-demo] [![Streamlit](https://img.shields.io/badge/Streamlit-%23FE4B4B.svg?style=for-the-badge&logo=streamlit&logoColor=white)][emp-st-demo] | @@ -21,6 +21,7 @@ - [GUI](#gui) - [Case studies](#case-studies) - [Web application deployment](#web-application-deployment) +- [License](#license) - [Contributing](#contributing) - [Credits and acknowledgements](#credits-and-acknowledgements) - [Citation](#citation) @@ -331,12 +332,24 @@ This advanced case study demonstrates the application of VueGen in a real-world > The EMP case study is available online as [HTML][emp-html-demo] and [Streamlit][emp-st-demo] reports. > The [configuration file][emp-config] is available in the `docs/example_config_files` folder, and the [directory][emp-dir] with example data is in the `docs/example_data` folder. -### 3. ChatBot Component +### 3. APICall Component + +This case study focuses on the `APICall` component, which enables interaction with external APIs by using HTTP methods such as **GET** and **POST**. The retrieved data is displayed in the report, allowing users to integrate external data sources into their anlyses. This component is restricted to **Streamlit** reports. + +🔗 [![Open in Colab][colab_badge]][colab_link_apicall] + +> [!NOTE] +> A [configuration file example][apicall-config] for the apicall component is available in +the `docs/example_config_files` folder. + +### 4. ChatBot Component This case study highlights VueGen’s capability to embed a chatbot component into a report subsection, enabling interactive conversations inside the report. This component is streamlit-specific and is not available for other report types. +🔗 [![Open in Colab][colab_badge]][colab_link_chatbot] + Two API modes are supported: - **Ollama-style streaming chat completion:** @@ -355,11 +368,11 @@ Two API modes are supported: - `links`: a list of source URLs (optional) - `HTML content`: an HTML snippet with a Pyvis network visualization (optional) -This response structure is currently customized for an internal knowledge graph assistant, but VueGen is being actively developed -to support more flexible and general-purpose response formats in future releases. +This response structure is currently customized for an internal knowledge graph assistant, but VueGen is being actively developed to support more flexible and general-purpose response formats in future releases. > [!NOTE] -> You can see a [configuration file example][config-chatbot] for the chatbot component in the `docs/example_config_files` folder. +> A [configuration file example][chatbot-config] for the chatbot component is available +in the `docs/example_config_files` folder. ## Web application deployment @@ -379,6 +392,14 @@ Run Streamlit apps directly in the browser with [stlite][stlite_repo], a WebAsse These options provide flexibility depending on whether the goal is online accessibility, lightweight execution, or local application distribution. +## License + +The code in this repository is licensed under the **MIT License**, allowing you to use, modify, and distribute it freely as long as you include the original copyright and license notice. + +The documentation and other creative content are licensed under the **Creative Commons Attribution 4.0 International (CC BY 4.0) License**, meaning you are free to share and adapt it with proper attribution. + +Full details for both licenses can be found in the [LICENSE][vuegen-license] file. + ## Contributing VueGen is an open-source project, and we welcome contributions of all kinds via GitHub issues and pull requests. You can report bugs, suggest improvements, propose new features, or implement changes. Please follow the guidelines in the [CONTRIBUTING](CONTRIBUTING.md) file to ensure that your contribution is easily integrated into the project. @@ -425,6 +446,7 @@ We appreciate your feedback! If you have any comments, suggestions, or run into [vuegen-docker-quay]: https://quay.io/repository/dtu_biosustain_dsp/vuegen [docker-folder]: https://github.com/Multiomics-Analytics-Group/nf-vuegen/tree/main/Docker [vuegen-license]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/LICENSE +[cc-by-shield]: https://img.shields.io/badge/License-CC%20BY%204.0-lightgrey.svg [vuegen-class-diag-att]: https://raw.githubusercontent.com/Multiomics-Analytics-Group/vuegen/main/docs/images/vuegen_classdiagram_withattmeth.pdf [vuegen-docs]: https://vuegen.readthedocs.io/ [ci-gh-action]: https://github.com/Multiomics-Analytics-Group/vuegen/actions/workflows/cdci.yml @@ -433,7 +455,6 @@ We appreciate your feedback! If you have any comments, suggestions, or run into [emp-st-demo]: https://earth-microbiome-vuegen-demo.streamlit.app/ [ollama_chat]: https://github.com/ollama/ollama/blob/main/docs/api.md#generate-a-chat-completion [ollama]: https://ollama.com/ -[config-chatbot]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/docs/example_config_files/Chatbot_example_config.yaml [issues]: https://github.com/Multiomics-Analytics-Group/vuegen/issues [pulls]: https://github.com/Multiomics-Analytics-Group/vuegen/pulls [vuegen-article]: https://doi.org/10.1093/bioadv/vbaf149 @@ -452,6 +473,10 @@ We appreciate your feedback! If you have any comments, suggestions, or run into [emp]: https://earthmicrobiome.org/ [emp-config]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/docs/example_config_files/Earth_microbiome_vuegen_demo_notebook_config [emp-dir]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/docs/example_data/Earth_microbiome_vuegen_demo_notebook +[colab_link_apicall]: https://colab.research.google.com/github/Multiomics-Analytics-Group/vuegen/blob/main/docs/vuegen_apicall_case_study.ipynb +[apicall-config]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/docs/example_config_files/APIcall_example_config.yaml +[colab_link_chatbot]: https://colab.research.google.com/github/Multiomics-Analytics-Group/vuegen/blob/main/docs/vuegen_chatbot_case_study.ipynb +[chatbot-config]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/docs/example_config_files/Chatbot_example_config.yaml [conda-download]: https://conda-forge.org/download/ [gui-readme]: https://github.com/Multiomics-Analytics-Group/vuegen/blob/main/gui/README.md [pyinstaller]: https://pyinstaller.org/ diff --git a/docs/images/logo/vuegen_logo_small.png b/docs/images/logo/vuegen_logo_small.png index a939b90..30e695d 100644 Binary files a/docs/images/logo/vuegen_logo_small.png and b/docs/images/logo/vuegen_logo_small.png differ diff --git a/docs/images/logo/vuegen_logo_small.svg b/docs/images/logo/vuegen_logo_small.svg index 9365059..54c5518 100644 --- a/docs/images/logo/vuegen_logo_small.svg +++ b/docs/images/logo/vuegen_logo_small.svg @@ -6,20 +6,25 @@ id="Layer_1" x="0px" y="0px" - viewBox="0 0 180.00006 72.000007" + viewBox="0 0 189.00006 72.000007" xml:space="preserve" - sodipodi:docname="vuegen_logo_small.svg" + sodipodi:docname="vuegen_logo_small_v2.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25)" - inkscape:export-filename="vuegen_logo_small.png" + inkscape:export-filename="vuegen_logo_small_v2.png" inkscape:export-xdpi="551.72412" inkscape:export-ydpi="551.72412" - width="180" + width="189" height="72" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg">