Skip to main content

Python toolz, by Alex Ioannides (AI).

Project description

aitoolz

Various Python tools, by Alex Ioannides (AI). Some of them might be useful for artificial intelligence, some of them might not.

Installing

You can install aitoolz from PyPI using

pip install aitoolz

Alternatively, you can install directly from the main branch of this repo via

pip install git+https://github.com/alexioannides/aitoolz.git@main

Where the @XXXX component of the URI can be substituted for any branch, tag or commit hash. See the pip docs for more info.

Features

A brief overview of the core tools:

Template Python Package Projects

The aitoolz.make_project module exposes the create_python_pkg_project function that can create empty Python package projects to speed-up development. This includes:

  • Executable tests via PyTest.
  • Fully configured code formatting and checking using Ruff and Black.
  • Fully configured static type checking using MyPy.
  • Dev task automation using Nox.
  • Fully configured CICD using GitHub Actions.

This is an opinionated setup that reflects how I like to develop projects. This can also be called from the command line using the Make Empty Project (MEP) command - e.g.,

mep my_package

Where my_package can be replaced with any valid Python module name. Either of these commands will create a directory structure and skeleton files,

my_package
├── .github
│   └── workflows
│       ├── python-package-ci.yml
│       └── python-package-cd.yml
├── .gitignore
├── README.md
├── noxfile.py
├── pyproject.toml
├── src
│   └── my_package
│       ├── __init__.py
│       └── hello_world.py
└── tests
    └── test_hello_world.py

This has been tested to be installable and for all dev tasks automated with Nox to pass - use nox --list to see them all.

Find External Dependencies in a Python Module or Source Folder

The aitoolz.find_imports module exposes the find_imports function that returns a list of all package dependencies imported into a Python module or source folder - i.e., all dependencies that are not in the Python standard library.

This can also be called from the command line - e.g.,

find-imports src/my_package

Or,

find-imports my_module.py

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

aitoolz-0.2.0.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

aitoolz-0.2.0-py3-none-any.whl (21.7 kB view details)

Uploaded Python 3

File details

Details for the file aitoolz-0.2.0.tar.gz.

File metadata

  • Download URL: aitoolz-0.2.0.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for aitoolz-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6222320741b1c124193d190e1bfd6b6d3f966a38339d59bdd177a53d06fa6e24
MD5 b74d578e8f32c320a639134107b88931
BLAKE2b-256 791aa164eb8df20189fcb80d13f278db1e10632de0b1a8f28a2593adc083fa02

See more details on using hashes here.

File details

Details for the file aitoolz-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: aitoolz-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 21.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for aitoolz-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c2fbf47e65c3df880d012351e48851b3dd075165166f372a1eb5536f9c0ef338
MD5 a719b21e500ca472364f2b5de512b9f3
BLAKE2b-256 5d1d1ba3fd7d978eabbcfc406d159b33d11c0625fb9d7d02bce7cb9af1bba27c

See more details on using hashes here.

Supported by

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