Skip to main content

PyPI version
PyPI - Python Version

Bluesky Comment support for MarkPub and MassiveWiki websites

Python package to
(1) post a MarkPub or MassiveWiki webpage link to Bluesky, and
(2) display any comments and likes made to that Bluesky post on the referenced website page.

Tested with Python 3.12.

This code is an excerpt of the code described in the blog post "Posting via the Bluesky API".

Gratitude to Emily Liu and Cory Zue


To install:

pip install markpub_bskypost

Note: this package will be transferred from this test index to pypi.org .

For a list of options and arguments:

markpub_bskypost -h

Some configuration notes and suggestions

Bluesky and GitHub credentials are needed to post to Bluesky and to update pages in a GitHub repository. These can be provided as arguments on the command line, or as local shell environment variables.

Environment Variables:

Create a .env file in your project root with the following variables:

ATP_PDS_HOST=your_bluesky_host_here
ATP_AUTH_HANDLE=your_bluesky_handle_here
ATP_AUTH_PASSWORD=your_bluesky_password_here
GH_TOKEN=your_GitHub_token_here

If ATP_PDS_HOST is not specified “https://bsky.social” is the default.

N.B.: Never commit your .env file to version control. Add it to your .gitignore file.

Website host and Git repository:

The host on which the website is deployed, and the repository holding the Markdown files can be specified on the command line, or in a file in the working directory named bskypost.yaml . Here is an example file:

deploy_site: socialpraxis.netlify.app
repo_name: band/technosocial-praxis

Use example:

This program is run in a terminal application and from the .markpub directory of your repository.

Running markpub_bskypost yields

Enter the Markdown file name: 

One can enter a full-path, or a relative path, to a Markdown file in the repository, or an Obsidian URL (copied from the Obsidian file browser;
for example: obsidian://open?vault=technosocial-praxis&file=notas%2F20250325-testnote )

markpub_bksypost generates the webpage URL to embed in the post and then prompts for the content of the Bluesky post (showing how many characters are available for the post text).

Enter bluesky post text (238 characters available): 

Release files for markpub_bskypost 1.0.1

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

Source distribution (sdist)

Source distribution for markpub_bskypost 1.0.1
File Size Uploaded
markpub_bskypost-1.0.1.tar.gz 21.3 kB Details

Built distribution (wheel)

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

Total release size: 31.8 kB

Release files / markpub_bskypost-1.0.1.tar.gz

Download URL markpub_bskypost-1.0.1.tar.gz
Size 21.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2f83087b28ffeae7cd01298f71c4cf24390259f825ac60c85dff7f3f07054948
BLAKE2b-256 checksum
How to use checksums
33fb9397cadae70d758c88eef6ec80d053db03dbf4cf01b1283f2685ec1b9f9f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.15

Release files / markpub_bskypost-1.0.1-py3-none-any.whl

Download URL markpub_bskypost-1.0.1-py3-none-any.whl
Size 10.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
58c4186c1f29ae2cb3bb1049ac9bd7691cfbce8dd5c0a87138bd4ea449a7c40a
BLAKE2b-256 checksum
How to use checksums
adc0fa3ab74e8eea971d0724d1151e3a1873d58283af98e65f98d605bd993008
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.15

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

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