Skip to main content

longhorn

longhorn

Photo by Miguel from Pexels

longhorn is meant for hosting a single blog associated with a specific ActivityPub actor. Example:

  • My blog is available at https://blog.mymath.rocks/
  • If you follow me, i.e. @helge@mymath.rocks. My blog posts will be delivered to your ActivityPub Inbox as a create article.
  • Public replies to that Article are displayed on the blog.

This is realized by longhorn being a bovine based ActivityPub Client.

Installation

longhorn can be installed by running

pip install longhorn
python -mlonghorn.setup

There you will be prompted for

  • The host your blog will run on, e.g. blog.mymath.rocks
  • The title of your blog, e.g. Helge's blog
  • The host of your ActivityPub server, e.g. mymath.rocks
  • And be provided a did-key to add to your ActivityPub Actor following the BIN-2.

The blog can then be run, by running

hypercorn longhorn:app

Usage

Posts are written as markdown then uploaded using

python -mlonghorn.post filename.md

Todos

  • Stopping the server is awkward due to the Event Source loop not stopping properly. Investigate how to fix this.
  • Alternative to last todo: Separate Event Source into own process.
  • Alternative: Use webhooks
  • Solution: Move to mechanical bull
  • Provide an RSS feed
  • Enable a publish / preview endpoint
  • Explain how to customize templating without hacking the package
  • Support tags and other metadata

Metadata

Release files for longhorn 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for longhorn 0.1.0
File Size Uploaded Provenance
longhorn-0.1.0.tar.gz 22.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for longhorn 0.1.0
File Interpreter ABI Platform
longhorn-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 41.2 kB

Release files / longhorn-0.1.0.tar.gz

Download URL longhorn-0.1.0.tar.gz
Size 22.1 kB
Tags Source
SHA-256 checksum
How to use checksums
2000eb13c78494b229446ebf2d8a1afbf6ef95d8af9502c9f66719e22787cc94
BLAKE2b-256 checksum
How to use checksums
6f60120fea53d7d2189332c9e8c03e2aa52cd1c54b8d5602e849da62d1f525e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.4.1 CPython/3.10.10 Linux/5.10.0-21-amd64

Release files / longhorn-0.1.0-py3-none-any.whl

Download URL longhorn-0.1.0-py3-none-any.whl
Size 19.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1595d041fb137f33106641159d616042cf46c220e407184fcec062000a71d269
BLAKE2b-256 checksum
How to use checksums
70101008ad9799c8f05fc414faf506f36394fce359ccdc76f32068174ba1f6a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.4.1 CPython/3.10.10 Linux/5.10.0-21-amd64

Security for longhorn 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page