Building and Releasing a Python CLI

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • tiller

    A command line interface for transforming text files into HTML files. (by Namatuzio)

  • Anyways, I then installed twine which would allow me to finally upload my CLI to PyPi. Running py -m twine upload --repository testpypi dist/* took everything from the previously made dist file and uploaded it onto PyPi to be openly downloaded. After some bug fixing and a few patch release later, everything was running smoothly, and tiller was finally ready to be used.

  • Txt2StaticHtml

  • The CLI I decided to test was Txt2StaticHTML a package of similar functionality, though done in C#. It was interesting testing it mainly because of how different NuGet packages are from Python packages. I had to open up VS2022 and install the NuGet package. Everything was inside of the namespace the repo owner had developed using the namespace allowed all of the functionality to become available. Calling

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • hatch

    Modern, extensible Python project management

  • Another concept I learned was about build backends, an import step which is used to initialize and install any dependencies of the app you're packaging. Since the tutorial went with using Hatch that is also what I went with, though it didn't provide a lot of useful details especially because it didn't show how to add any dependencies, so I took a look at the docs which were very nice and simple to follow.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts