Skip to main content

CLI publishing tool for template-driven flat-file output, validation, and optional remote deployment

Project description

cyberPublisher

cyberPublisher is a template-driven CLI publishing tool for generating flat-file output from structured data, validating results, and optionally shipping published output to a remote destination.

It is designed for practical publishing workflows where you want to render repeatable output from templates and data without dragging in a heavyweight CMS or database stack.

What it does

  • Publishes flat-file output from templates and input data
  • Supports structured input such as JSON, XML, CSV, and Markdown
  • Generates one file per record or aggregate/index-style output
  • Validates local output and related publishing artifacts
  • Supports optional remote deployment over SSH/SFTP
  • Maintains instance-scoped policy and runtime state under ~/.pypub

Install

From source (development / local)

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install -e .

From built wheel

python -m pip install ./dist/cyberpublisher-1.0.1-py3-none-any.whl

Command

cyberpublisher --help

Basic usage

Publish local output

cyberpublisher -t ./template.html -d ./data.json -o ./build/

Publish and ship to a configured destination

cyberpublisher -t ./template.html -d ./data.json -o ./build/ --ship myserver

Manage destinations

cyberpublisher dest list
cyberpublisher dest add myserver
cyberpublisher dest remove myserver

Requirements

  • Python 3.8+
  • cryptography
  • jinja2
  • paramiko

License

Licensed under the GNU General Public License v3.0.

See the LICENSE file for the full license text.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cyberpublisher-1.0.1.tar.gz (46.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cyberpublisher-1.0.1-py3-none-any.whl (52.1 kB view details)

Uploaded Python 3

File details

Details for the file cyberpublisher-1.0.1.tar.gz.

File metadata

  • Download URL: cyberpublisher-1.0.1.tar.gz
  • Upload date:
  • Size: 46.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for cyberpublisher-1.0.1.tar.gz
Algorithm Hash digest
SHA256 6a6b4bf392fcbee80153bcdf06be9db6ba5295f333c2024e329201e35b67665a
MD5 25147353d8f59ff26f1d33d6bc79e4f9
BLAKE2b-256 ddf637d3a8294e8d57028271c001c406d36e6a240f56083feb35a20077f76d3e

See more details on using hashes here.

File details

Details for the file cyberpublisher-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: cyberpublisher-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 52.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for cyberpublisher-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fe335db2fd8ec17619da6b13a1b1da7fe3e5faa91111ee4e268430f8eb0440a8
MD5 3935c0a536759a3deb899f8db1e93a7d
BLAKE2b-256 0bf53a7570c3c3a9f56a3117a0b66ca30d811cdf9d1bbd03d70f57673728ac34

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page