self-contained-runnable-python-package-template VS flit

Compare self-contained-runnable-python-package-template vs flit and see what are their differences.

self-contained-runnable-python-package-template

This is a template for creating self-contained, runnable python projects in the form of a tidy, structured, runnable python package (by tpapastylianou)

flit

Simplified packaging of Python modules (by pypa)
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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
self-contained-runnable-python-package-template flit
3 6
18 2,094
- 0.4%
0.0 6.4
over 1 year ago about 2 months ago
Python Python
GNU General Public License v3.0 only BSD 3-clause "New" or "Revised" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

self-contained-runnable-python-package-template

Posts with mentions or reviews of self-contained-runnable-python-package-template. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-03.
  • Underappreciated Challenges with Python Packaging
    10 projects | news.ycombinator.com | 3 Jan 2023
    The approach I prefer is to not mess with setuptools etc at all in the first place, and simply make a nice executable package.

    e.g. https://github.com/tpapastylianou/self-contained-runnable-py...

  • How to create a Python package in 2022
    13 projects | news.ycombinator.com | 27 Jul 2022
    The title should be: How to create a "Python DISTRIBUTION package".

    The term "python package" means something entirely different (or at the very least is ambiguous in a pypi/distribution context).

    To add to the confusion, creating a totally normal, runnable python package in a manner that makes it completely self-contained such that it can be "distributed" in a standalone manner, while still being a totally normal boring python package, is also totally possible (if not preferred, in my view).

    Shameless plug: https://github.com/tpapastylianou/self-contained-runnable-py...

  • Show HN: Hatch 1.0.0 – Modern, extensible Python project management
    6 projects | news.ycombinator.com | 28 Apr 2022
    Shameless plug: I use my own template, which organises things as runnable projects.

    https://github.com/tpapastylianou/self-contained-runnable-py...

    It serves my purposes very well (which is creating projects that represent standalone experiments).

    Sharing in case someone else here finds it useful.

    More recently I've modified this a bit to also generate nice html reports straight from the __main__.py file, independently of the underlying python code, and use this as lab books (where each lab book contains a single analysis and its report). I'll upload this template separately when I find the time.

flit

Posts with mentions or reviews of flit. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-09.
  • Show HN: Code Indexer Loop
    3 projects | news.ycombinator.com | 9 Sep 2023
    Queries on https://github.com/pypa/flit/tree/main/flit_core/flit_core (omitted tests/)

    (Pdb) print(indexer.query("def normalize_dist_name(name: str, version: str) -> str:"))

  • Underappreciated Challenges with Python Packaging
    10 projects | news.ycombinator.com | 3 Jan 2023
    If it's pure Python, the only packaging file you need is `pyproject.toml`. You can fill that file with packaging metadata per PEP 518 and PEP 621, including using modern build tooling like flit[1] for the build backend and build[2] for the frontend.

    With that, you entire package build (for all distribution types) should be reducible to `python -m build`. Here's an example of a full project doing everything with just `pyproject.toml`[3] (FD: my project).

    [1]: https://github.com/pypa/flit

    [2]: https://github.com/pypa/build

    [3]: https://github.com/pypa/pip-audit

  • Easy Packing and Publishing to PyPi with Flit, pytest, and Circleci
    2 projects | /r/Python | 22 Sep 2022
    I published a very simple project flit_pytest_circleci_template that uses: * [flit](https://github.com/pypa/flit) to build a package. * pytest to test it * circleci to run the above and publish the package to pypi whenever a source file is committed. This is the hard part IMO as I do not know circleci well (and didn't know it at all when I started this project).
  • Python un-updatable, suggestions?
    1 project | /r/Gentoo | 22 Feb 2022
  • Comparison of Python TOML parser libraries
    19 projects | dev.to | 14 Dec 2021
    flit
  • How to make a Python package in 2021
    16 projects | news.ycombinator.com | 7 Apr 2021
    I hadn't heard of flit, it does seem like it's not brand new on the scene, however it is primarily a single contributor:

    https://github.com/takluyver/flit/graphs/contributors

    With a title like this, I'd be expecting to see an article describing the latest tools and recommendations from the PyPA.

What are some alternatives?

When comparing self-contained-runnable-python-package-template and flit you can also consider the following projects:

hatch - Modern, extensible Python project management

Poetry - Python packaging and dependency management made easy

Nuitka - Nuitka is a Python compiler written in Python. It's fully compatible with Python 2.6, 2.7, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10, and 3.11. You feed it your Python app, it does a lot of clever things, and spits out an executable or extension module.

pip - The Python package installer

Pipenv - Python Development Workflow for Humans.

pip-audit - Audits Python environments, requirements files and dependency trees for known security vulnerabilities, and can automatically fix them

python-lib - Opinionated cookiecutter template for creating a new Python library

tox-poetry-installer - A plugin for Tox that lets you install test environment dependencies from the Poetry lockfile

tomli - A lil' TOML parser

laravel-websockets-example - Quick example of a docker stack for laravel-websockets

virtualenv - Virtual Python Environment builder