Reperio is a visualization utility for Apache Nutch CrawlDB, LinkDB and HostDB data structures.
Reperio is written in Python. It leverages networkx and Bokeh to generate network graph vizualizations.
Conda package manager is recommended. Create a conda environment.
conda create -n reperio python==3.10Activate conda environment and install poetry
conda activate reperio
pip install poetryThen you can run the client using the following command:
reperio --helpor with Poetry:
poetry run reperio --helpMakefile contains a lot of functions for faster development.
Install all dependencies and pre-commit hooks
Install requirements:
make installPre-commit hooks coulb be installed after git init via
make pre-commit-installCodestyle and type checks
Automatic formatting uses ruff.
make polish-codestyle
# or use synonym
make formattingCodestyle checks only, without rewriting files:
make check-codestyleNote:
check-codestyleusesruffanddarglintlibrary
Code security
If this command is not selected during installation, it cannnot be used.
make check-safetyThis command launches Poetry integrity checks as well as identifies security issues with Safety and Bandit.
make check-safetyTests with coverage badges
Run pytest
make testAll linters
Of course there is a command to run all linters in one:
make lintthe same as:
make check-codestyle && make test && make check-safetyDocker
make docker-buildwhich is equivalent to:
make docker-build VERSION=latestRemove docker image with
make docker-removeMore information about docker.
Cleanup
Delete pycache files
make pycache-removeRemove package build
make build-removeDelete .DS_STORE files
make dsstore-removeRemove .mypycache
make mypycache-removeOr to remove all above run:
make cleanupThis project is licensed under the terms of the Apache Software License 2.0 license. See LICENSE for more details.
@misc{reperio,
author = {lewismc},
title = {Reperio is a cvisualization utility for Apache Nutch data structures.},
year = {2024},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/lewismc/reperio}}
}This project was generated with 3PG