Skip to main content

Masterpiece framework

Project description

Welcome to MasterPiece - A Piece of Work

MasterPiece is a compact and unified set of general purpose classes for writing plugin aware, feature oriented applications.

Project Status and Current State

The framework is in its early development phase.

Here's what is currently available:

  • Package Infrastructure: The basic Python package setup is in place, configured with 'pyproject.toml'.
  • Early Drafts: Initial yet fully working versions of the essential core classes implemented.
  • Example application 'examples/myhome.py', which prints out its instance structure when run.
  • A plugin package named 'masterpiece_plugin' plugging in 'Hello World' greeting to 'myhome.py', demonstrating minimal yet complete and fully functional plugi.

Tn this current state, you might call the project merely a mission, rather than masterpiece, but I'm working hard to turn it into a masterpiece!

Goals

To have fun with learning Python.

The key objectives of this framework include:

  • Robusness: Minimal yet robust API providing the developer with 100% control.
  • First-Time Excellence: The aim is to build a robust and reliable framework that is correct and efficient from the start, eliminating the need for disruptive changes or backward compatibility issues in future releases.
  • Abstraction: Provide a layer of abstraction to shield the API from the impacts of external code, including third-party libraries and APIs.

Design

The design patterns employed to achieve the goals include:

  • Object-Oriented Paradigm
  • Factory Method Pattern
  • Layered Design Pattern
  • Plugin API
  • TODO: ( more later, too busy now)

If you appreciate these design concepts, you've come to the right place!

About the project name

Just as all creatures on Earth share a common ancestor, all components in this framework trace their lineage back to this foundational anchestor named "masterpiece" ... (okay, perhaps a bit too dramatic).

The name 'MasterPiece' was chosen to reflect commitment to fine-grained modular design ("pieces"), with a touch of Humour. Masterpiece is just an object, a piece of data, designed to master something, like ones home automation.

The slogan 'Some a piece of work' ... the result of one minute brainstorming and too many cups of coffee...

Install

  1. To install the masterpiece:

    pip install masterpiece.

  2. To install the demo-plugin:

pip install masterpiece_plugin

  1. To run: ::

    cd masterpiece/examples python myapp.py

The minimum Python version known to work is 3.8.

Developer Documentation

Will reguire a few more hours (okay, days) of effort to produce something really usable.

Special Thanks

My ability to translate my architecture ideas into this Python framework is greatly due to the generous support of one extraordinary gentleman: Mahi.fi and ChatGPT. Their support and encouragement have been invaluable in bringing this project to life. Thank you both!

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

masterpiece-0.0.1.tar.gz (1.6 MB view details)

Uploaded Source

Built Distribution

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

masterpiece-0.0.1-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file masterpiece-0.0.1.tar.gz.

File metadata

  • Download URL: masterpiece-0.0.1.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for masterpiece-0.0.1.tar.gz
Algorithm Hash digest
SHA256 88e1e77e3963e83cbe4cd154fade549864bbfdfc76ebb4836d4751c824e6eb45
MD5 9a0f576b00f7087d4c92230a3d512441
BLAKE2b-256 3dcea35b4d4dd50c3c57ab2f84a03c84ca0d147d6c467a0e2e2dc4eddb413225

See more details on using hashes here.

File details

Details for the file masterpiece-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: masterpiece-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for masterpiece-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 182cdd19e1b75a63be5db3aa402714488ed4a14c77849b47381fa7c0da87350d
MD5 3e67f5fa567cfeec011d21644e354022
BLAKE2b-256 0ebf60c55e093305e2ea464705068ba86076319e0176d73d1402b41513e4c820

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