Skip to main content

Python application framework

Project description

fleks    
Python application framework

Overview

(This is experimental; API-stability is not guaranteed.)

Application framework for python.


Features

  • CLI parsing with click
  • Console output with rich
  • Plugin Framework
  • Exit-handlers, conventions for handling logging, etc

Installation

See pypi for available releases.

pip install fleks

Usage

See also the unit-tests for some examples of library usage.

Tags & Tagging

>>> from fleks import tagging
>>> class MyClass(): pass
>>> tagging.tags(key="Value")(MyClass)
<class '__main__.MyClass'>
>>> assert tagging.tags[MyClass]['key']=="Value"
>>>

Class-Properties

>>> import fleks 
>>> class Test:
...   @fleks.classproperty 
...   def testing(kls):
...      return 42
>>> assert Test.testing==42
>>>

Typing helpers

fleks.util.typing collects common imports and annotation-types, i.e. various optional/composite types used in type-hints, underneath one convenient namespace. This includes stuff from:

>>> from fleks import typing
>>> print(sorted([name for name in dir(typing) if name.title()==name]))
['Annotated', 'Any', 'Awaitable', 'Bool', 'Callable', 'Collection', 'Container', 'Coroutine', 'Counter', 'Deque', 'Dict', 'Field', 'Final', 'Generator', 'Generic', 'Hashable', 'Iterable', 'Iterator', 'List', 'Literal', 'Mapping', 'Match', 'Namespace', 'Optional', 'Pattern', 'Protocol', 'Reversible', 'Sequence', 'Set', 'Sized', 'Text', 'Tuple', 'Type', 'Union']
>>>

Base-classes for Configuration

>>> from fleks import Config
>>>

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

fleks-2025.8.6.4.1.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fleks-2025.8.6.4.1-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file fleks-2025.8.6.4.1.tar.gz.

File metadata

  • Download URL: fleks-2025.8.6.4.1.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for fleks-2025.8.6.4.1.tar.gz
Algorithm Hash digest
SHA256 098885a9035af14ac7948b768dea6c744a7e49aa5c12e8dca5f9478fe43ae58c
MD5 cf12363c57ac0eb57a06c5bac1fda327
BLAKE2b-256 2782f35315d413266a68375f856c4e93cf8d1e814f3acb688b05c6cee7b22dce

See more details on using hashes here.

File details

Details for the file fleks-2025.8.6.4.1-py3-none-any.whl.

File metadata

  • Download URL: fleks-2025.8.6.4.1-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for fleks-2025.8.6.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 274abea0184f9907a02455773e710a5d222dc9eb4fee0c258c188aa1bdc97d76
MD5 8b413e0323ffdf2c87c513251a27d052
BLAKE2b-256 2634bace1203072adf01d58b1c09c27d0e9e1b8d99ebde9ba23450d90e94f706

See more details on using hashes here.

Supported by

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