Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: update RtD guides #172

Merged
merged 25 commits into from
Nov 20, 2024
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
21695ca
docs: update RtD page
balajtimate Sep 19, 2024
eac14ed
docs: add installation guide
balajtimate Sep 19, 2024
acba203
docs: add usage and examples pages
balajtimate Oct 21, 2024
cc56fa4
Merge branch 'dev' of https://github.com/zavolanlab/htsinfer into doc…
balajtimate Oct 21, 2024
488d4b7
docs: update guides
balajtimate Oct 21, 2024
f9a1a3b
docs: update README
balajtimate Oct 21, 2024
f1b4b4c
docs: update guides
balajtimate Oct 21, 2024
206d146
fix README badges
balajtimate Oct 24, 2024
797c596
Merge branch 'dev' of https://github.com/zavolanlab/htsinfer into doc…
balajtimate Oct 30, 2024
db6bd5c
docs: update README, guides
balajtimate Oct 31, 2024
2b17aca
update version
balajtimate Oct 31, 2024
b3d5d05
update rtd config
balajtimate Nov 4, 2024
4623fe2
update versioning
balajtimate Nov 13, 2024
6bfcf1a
remove docker image and build
balajtimate Nov 13, 2024
89da34f
update readme
balajtimate Nov 13, 2024
47f3842
update versioning
balajtimate Nov 13, 2024
1252899
update guides
balajtimate Nov 15, 2024
f36c812
update usage guide with tables
balajtimate Nov 15, 2024
21f72f0
update Results model description
balajtimate Nov 15, 2024
3971d5e
docs: update index, restructure API docs
balajtimate Nov 15, 2024
140c918
update style
balajtimate Nov 15, 2024
8223260
docs: update guides, README
balajtimate Nov 18, 2024
316c173
update conf exclusions
balajtimate Nov 18, 2024
d9f56fa
update conf exclusions
balajtimate Nov 18, 2024
f231a54
update conf exclusions
balajtimate Nov 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions .dockerignore

This file was deleted.

35 changes: 0 additions & 35 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -126,38 +126,3 @@ jobs:
- name: integration test - paired-ended library
run: htsinfer --cleanup-regime=KEEP_NONE --verbosity=DEBUG tests/files/adapter_{1,2}.fastq

publish:
name: build and publish app image
runs-on: ubuntu-latest
if: |
github.event_name == 'push' &&
github.ref == format('refs/heads/{0}', github.event.repository.default_branch)

steps:

- name: check out repository
uses: actions/checkout@v3

- name: generate tag
run: |
echo "TAG=$(date '+%Y%m%d')" >> $GITHUB_ENV

- name: build and publish image
id: docker
uses: philips-software/[email protected]
with:
dockerfile: .
image-name: "htsinfer"
tags: "latest ${{ env.TAG }}"
push-branches: "${{ github.event.repository.default_branch }}"
env:
REGISTRY_USERNAME: ${{ secrets.DOCKERHUB_LOGIN }}
REGISTRY_TOKEN: "${{ secrets.DOCKERHUB_TOKEN }}"
DOCKER_ORGANIZATION: ${{ secrets.DOCKERHUB_ORG }}
GITHUB_ORGANIZATION: ${{ github.repository_owner }}

- name: Verify that image was pushed
run: |
echo "Push indicator: ${{ steps.docker.outputs.push-indicator }}"
echo "# Set to 'true' if image was pushed, empty string otherwise"
test "${{ steps.docker.outputs.push-indicator }}" == "true"
48 changes: 0 additions & 48 deletions Dockerfile

This file was deleted.

55 changes: 22 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,25 @@
[![license][badge-license]][badge-url-license]
[![docs][badge-docs]][badge-url-docs]
[![release_gh][badge-release-gh]][badge-url-release-gh]
[![release_docker][badge-release-docker]][badge-url-release-docker]
[![ci][badge-ci]][badge-url-ci]
[![coverage][badge-coverage]][badge-url-coverage]
[![release_biocontainer][badge-release-biocontainer]][badge-url-release-biocontainer]
[![DOI:zenodo][badge-doi-zenodo]][badge-url-doi-zenodo]

HTSinfer infers metadata from Illumina high-throughput sequencing (HTS) data.
HTSinfer infers RNA-Seq metadata from Illumina high-throughput sequencing (HTS) data.

## Quick start

For a more in-depth guide please refer to the [HTSinfer documentation][docs-documentation].

### Installation

In order to use the HTSinfer, clone the repository and install the
dependencies via [Conda][conda] or [Mamba][mamba]:
HTSinfer is available as part of the [Bioconda][bioconda-release] channel, therefore the preferred installation method is via [Mamba][mamba] or [Conda][conda].
balajtimate marked this conversation as resolved.
Show resolved Hide resolved

To create a new Conda environment with HTSinfer and its dependencies installed, run:

```sh
git clone https://github.com/zavolanlab/htsinfer
cd htsinfer
conda env create --file environment.yml
mamba create --name htsinfer bioconda::htsinfer
```

Then, activate the `htsinfer` Conda environment with:
Expand All @@ -31,27 +30,16 @@ Then, activate the `htsinfer` Conda environment with:
conda activate htsinfer
```

To install HTSinfer in your current environment, run:

```sh
mamba install bioconda::htsinfer
```

### General usage

```sh
htsinfer [--output-directory PATH]
[--temporary-directory PATH]
[--cleanup-regime {DEFAULT,KEEP_ALL,KEEP_NONE,KEEP_RESULTS}]
[--records INT]
[--threads INT]
[--transcripts FASTA]
[--read-layout-adapters PATH]
[--read-layout-min-match-percentage FLOAT]
[--read-layout-min-frequency-ratio FLOAT]
[--library-source-min-match-percentage FLOAT]
[--library-source-min-frequency-ratio FLOAT]
[--library-type-max-distance INT]
[--library-type-mates-cutoff FLOAT]
[--read-orientation-min-mapped-reads INT]
[--read-orientation-min-fraction FLOAT]
[--tax-id INT]
[--verbosity {DEBUG,INFO,WARN,ERROR,CRITICAL}]
[-h] [--version]
htsinfer [-h] [--verbosity {DEBUG,INFO,WARN,ERROR,CRITICAL}] [--version]
PATH [PATH]
```

Expand Down Expand Up @@ -131,22 +119,21 @@ example library:
}
```

To better understand the output, please refer to the [`Results`
model][docs-api-results] in the [API documentation][badge-url-docs].
To better understand the output, please refer to the [`Results`][docs-api-results] model in the [API documentation][badge-url-docs].
balajtimate marked this conversation as resolved.
Show resolved Hide resolved

### API documentation
## Versioning

Auto-built API documentation is hosted on [ReadTheDocs][badge-url-docs].
The project follows the [Semantic Versioning][semver] guidelines for version management. Currently, the service is in its beta phase, meaning API breaking changes or updates may occur without prior notice.

### Contributing
## Contributing

This project lives off your contributions, be it in the form of bug reports,
feature requests, discussions, or fixes and other code changes. Please refer
to the [contributing guidelines](CONTRIBUTING.md) if you are interested to
contribute. Please mind the [code of conduct](CODE_OF_CONDUCT.md) for all
interactions with the community.

### Contact
## Contact

For questions or suggestions regarding the code, please use the
[issue tracker][issue-tracker]. For any other inquiries, please contact us
Expand All @@ -158,17 +145,19 @@ by email: <[email protected]>
[badge-coverage]: <https://codecov.io/gh/zavolanlab/htsinfer/branch/dev/graph/badge.svg?token=KYGJ9MUPHT>
[badge-docs]: <https://readthedocs.org/projects/htsinfer/badge/?version=latest>
[badge-license]: <https://img.shields.io/badge/license-Apache%202.0-blue.svg>
[badge-release-docker]: <https://img.shields.io/docker/image-size/zavolab/htsinfer?color=C39BD3&label=docker>
[badge-release-biocontainer]: <https://img.shields.io/badge/BioContainer-%20htsinfer-blue?style=flat.svg>
[badge-release-gh]: <https://img.shields.io/github/v/tag/zavolanlab/htsinfer?color=C39BD3>
[badge-doi-zenodo]: <https://zenodo.org/badge/265279928.svg>
[badge-url-ci]: <https://github.com/zavolanlab/htsinfer/actions?query=workflow%3Aci>
[badge-url-coverage]: <https://codecov.io/gh/zavolanlab/htsinfer>
[badge-url-docs]: <https://htsinfer.readthedocs.io/en/latest/?badge=latest>
[badge-url-license]: <http://www.apache.org/licenses/LICENSE-2.0>
[badge-url-release-docker]: <https://hub.docker.com/repository/docker/zavolab/htsinfer>
[badge-url-release-biocontainer]: <https://quay.io/repository/biocontainers/htsinfer>
[badge-url-release-gh]: <https://github.com/zavolanlab/htsinfer/releases>
[badge-url-doi-zenodo]: <https://doi.org/10.5281/zenodo.13985958>
[conda]: <https://docs.conda.io/en/latest/miniconda.html>
[bioconda-release]: <https://anaconda.org/bioconda/htsinfer>
[semver]: <https://semver.org/>
[contact]: <https://zavolan.biozentrum.unibas.ch/>
[docs-documentation]: <https://htsinfer.readthedocs.io/>
[docs-api-results]: <https://htsinfer.readthedocs.io/en/latest/modules/htsinfer.html#htsinfer.models.Results>
Expand Down
4 changes: 1 addition & 3 deletions docs/conf.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
from htsinfer import __version__
from htsinfer.version import __version__

# Configuration file for the Sphinx documentation builder.
#
Expand Down Expand Up @@ -48,9 +48,7 @@
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = [
'_build',
'api/yourpackage.rst',
'setup.py',
'Thumbs.db',
'.DS_Store',
'.eggs'
]
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
Expand Down
15 changes: 12 additions & 3 deletions docs/guides/examples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Examples
`HTSinfer` provides easy-to-use commands for analyzing single- and paired-ended RNA-Seq libraries.


Single-ended Library Example
Single-ended library example
----------------------------

To run `HTSinfer` on a single-ended RNA-Seq library, use the following command:
Expand All @@ -13,7 +13,7 @@ To run `HTSinfer` on a single-ended RNA-Seq library, use the following command:

htsinfer tests/files/adapter_single.fastq

Paired-ended Library Example
Paired-ended library example
----------------------------

To run `HTSinfer` on a paired-ended RNA-Seq library, use the following command:
Expand All @@ -24,7 +24,7 @@ To run `HTSinfer` on a paired-ended RNA-Seq library, use the following command:

Both commands will output the results in JSON format to :code:`STDOUT` and the log to :code:`STDERR`.

Example Output
Example output
--------------

Here is a sample output for the paired-ended library:
Expand Down Expand Up @@ -84,4 +84,13 @@ Here is a sample output for the paired-ended library:
}
}

Results
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
-------

For more details on the output structure, refer to the :code:`Results` model in the API documentation.
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
balajtimate marked this conversation as resolved.
Show resolved Hide resolved

- :code:`library_stats`: Read length statistics results, including the minimum, maximum, mean, median and mode.
- :code:`library_source`: Library source inference results, with the short name and NCBI taxonomy ID of the source organism.
- :code:`library_type`: Library type inference results, single- or paired-end. In case of paired-end samples, the mate designation.
- :code:`read_orientation`: Read orientation inference results, based on the fragment library types notation from `Salmon <https://salmon.readthedocs.io/en/latest/library_type.html>`_.
- :code:`read_layout`: Read layout inference results, including the 3'-adapter sequence and the poly(A) fraction.
48 changes: 34 additions & 14 deletions docs/guides/installation.rst
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -1,36 +1,56 @@
Installation
============

This section describes how to install `HTSinfer` using Conda.
This section describes how to install `HTSinfer`.
balajtimate marked this conversation as resolved.
Show resolved Hide resolved

Clone the Repository and Install Dependencies
---------------------------------------------
Install using Conda
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
-------------------

To install `HTSinfer`, first clone the repository and install the dependencies via `Conda <https://docs.conda.io/en/latest/miniconda.html>`_:
The easiest and quickest installation method is via `Mamba <https://mamba.readthedocs.io/en/latest/installation.html>`_ or `Conda <https://docs.conda.io/en/latest/miniconda.html>`_.
`HTSinfer` is available as part of the `Bioconda <https://anaconda.org/bioconda/htsinfer>`_ channel.

To create a new Conda environment with `HTSinfer` and its dependencies installed, run:

.. code-block:: bash

mamba create --name htsinfer bioconda::htsinfer
balajtimate marked this conversation as resolved.
Show resolved Hide resolved


Then, activate the `htsinfer` Conda environment with:

.. code-block:: bash

conda activate htsinfer


To install `HTSinfer` in your current environment, run:

.. code-block:: bash

mamba install bioconda::htsinfer

Install from GitHub
-------------------

If you would like to contribute to the development of `HTSinfer`, or wishing to use unreleased versions, you can install `HTSinfer` from the `GitHub <https://github.com/zavolanlab/htsinfer>`_.
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
First clone the repository and install the dependencies via `Conda <https://docs.conda.io/en/latest/miniconda.html>`_:

.. code-block:: bash

git clone https://github.com/zavolanlab/htsinfer.git
cd htsinfer
conda env create --file environment.yml
mamba env create --file environment.yml
# Alternatively, to install with development dependencies,
# run the following instead
conda env create --file environment-dev.ymls

.. note::

Creating the environment may take some time. It is strongly recommended to install `Mamba <https://mamba.readthedocs.io/en/latest/installation.html>`_ and replace :code:`conda` with :code:`mamba` in the previous commands for faster installation.

Activate the Conda Environment
------------------------------
mamba env create --file environment-dev.ymls

After the installation is complete, activate the :code:`htsinfer` Conda environment with:

.. code-block:: bash

conda activate htsinfer

Verify the Installation (Optional)
Verify the installation (optional)
----------------------------------
balajtimate marked this conversation as resolved.
Show resolved Hide resolved

If you have installed the development or testing dependencies, you can verify that `HTSinfer` was installed correctly by executing the tests shipped with the package:
balajtimate marked this conversation as resolved.
Show resolved Hide resolved
Expand Down
Loading
Loading