Metadata-Version: 2.4
Name: perceval-topicbox
Version: 0.2.9
Summary: Perceval backend for Topicbox
License: GPL-3.0+
License-File: AUTHORS
License-File: LICENSE
Keywords: development,grimoirelab
Author: Bitergia Developers
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
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: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development
Requires-Dist: grimoirelab-toolkit (>=0.3)
Requires-Dist: perceval (>=0.19)
Project-URL: Bug Tracker, https://github.com/bitergia-analytics/grimoirelab-perceval-topicbox/issues
Project-URL: Homepage, https://chaoss.github.io/grimoirelab/
Project-URL: Repository, https://github.com/bitergia-analytics/grimoirelab-perceval-topicbox
Description-Content-Type: text/markdown

# perceval-topicbox

Perceval backend for Topicbox.

## Backends

The backend currently managed by this package support the next repository:

* Topicbox

## Requirements

 * Python >= 3.10

You will also need some other libraries for running the tool, you can find the
whole list of dependencies in [pyproject.toml](pyproject.toml) file.

## Installation

There are several ways to install perceval-topicbox on your system: packages or source 
code using Poetry or pip.

### PyPI

perceval-topicbox can be installed using pip, a tool for installing Python packages. 
To do it, run the next command:
```
$ pip install perceval-topicbox
```

### Source code

To install from the source code you will need to clone the repository first:
```
$ git clone https://github.com/bitergia-analytics/grimoirelab-perceval-topicbox
$ cd grimoirelab-perceval-topicbox
```

Then use pip or Poetry to install the package along with its dependencies.

#### Pip
To install the package from local directory run the following command:
```
$ pip install .
```
In case you are a developer, you should install perceval-topicbox in editable mode:
```
$ pip install -e .
```

#### Poetry
We use [poetry](https://python-poetry.org/) for dependency management and 
packaging. You can install it following its [documentation](https://python-poetry.org/docs/#installation).
Once you have installed it, you can install perceval-topicbox and the dependencies in 
a project isolated environment using:
```
$ poetry install
```
To spaw a new shell within the virtual environment use:
```
$ poetry shell
```

## Example

### Topicbox

You need an `account_id` and a group URL to fetch the messages.

- To obtain the `account_id`, open Network tab in the browser Devtool and identify the `accountId` in any
`/jmap` request made by the browser.

Run perceval with the Topicbox group URL and the account id to fetch the messages. For example:

```
$ perceval topicbox "https://mytopicbox.topicbox.com/groups/example" --account-id <account_id>
```

It can be run from a specific date using the `--from-date` parameter.

## License

Licensed under GNU General Public License (GPL), version 3 or later.

