Passively capture, archive, and hoard your web browsing history, including the contents of the pages you visit, for later offline viewing, replay, mirroring, data scraping, and/or indexing. Your own personal private Wayback Machine that can also archive HTTP POST
requests and responses, as well as most other HTTP
-level data.
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"
[project]
name = "hoardy-web-sas"
version = "1.9.0"
authors = [{ name = "Jan Malakhovski", email = "oxij@oxij.org" }]
description = "A simple archiving server for the `Hoardy-Web` Web Extension browser add-on."
readme = "README.md"
license = { text = "GPL-3.0-or-later" }
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python :: 3",
"License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)",
"Intended Audience :: End Users/Desktop",
"Topic :: Internet :: WWW/HTTP",
"Topic :: System :: Archiving",
"Topic :: System :: Archiving :: Backup",
"Topic :: System :: Archiving :: Mirroring",
"Topic :: System :: Logging",
"Topic :: Internet :: Log Analysis",
"Operating System :: POSIX",
"Environment :: Console",
]
keywords = [
"HTTP", "HTTPS",
"WWW", "web", "browser",
"site", "website",
"download", "archive", "mirror",
"wayback", "wayback machine",
]
dependencies = [
'importlib-metadata; python_version<"3.8"',
]
requires-python = ">=3.7"
[project.optional-dependencies]
cbor = ["cbor2"]
[project.urls]
"Homepage" = "https://oxij.org/software/hoardy-web/"
"GitHub" = "https://github.com/Own-Data-Privateer/hoardy-web"
"Support Development" = "https://oxij.org/#support"
[project.scripts]
hoardy-web-sas = "hoardy_web_sas:main"
pwebarc-dumb-dump-server = "hoardy_web_sas:main"
[tool.mypy]
python_version = "3.10"
strict = true
implicit_reexport = true
explicit_package_bases = true
files = [
"*.py",
]
[[tool.mypy.overrides]]
module = [
"setuptools",
"cbor2",
]
ignore_missing_imports = true
[tool.black]
line-length = 100
[tool.pylint]
disable = [
"broad-exception-caught",
"global-statement",
"import-outside-toplevel",
"invalid-name",
"line-too-long",
"missing-function-docstring",
"too-many-branches",
"too-many-locals",
"too-many-statements",
]
[tool.pylint.format]
max-line-length = "100"