Skip to main content

Outils Python pour projets robustes : validation, journalisation, mailing, image, etc.

Project description

🛠️ dreamtools

Outils Python pour projets professionnels
Validation, manipulation de chaînes, traitement d’images, journalisation, gestion d’erreurs, envoi d’e-mails, etc.

Ce module propose une collection de fonctions utilitaires conçues pour accélérer le développement d'applications robustes, fiables et facilement maintenables, en particulier dans des environnements exigeants (sécurité, supervision, automatisation).


📦 Installation

pip install .
dreamtools_dreamgeeker-init

⚠️ À l'installation, des fichiers de configuration nécessaires au fonctionnement (log + mailing) seront copiés automatiquement dans le répertoire courant du projet (dans un sous-dossier .config/). Ces fichiers doivent impérativement être revus et adaptés avant toute utilisation des fonctionnalités de mail ou de journalisation avancée.

⚙️ Configuration requise

dreamtools repose sur deux fichiers principaux à adapter selon ton projet :

📝 Journalisation (.config/log.yml)

Fichier de configuration du logger Python. Nécessaire pour que TrackingManager fonctionne.

from dreamtools import file_manager
from dreamtools.controller_manager import ControllerEngine
from dreamtools.tracking_manager import TrackingManager

application_name = "mon_app"
application_directory = file_manager.execution_directory()

ControllerEngine.initialize(application_name, application_directory)

log_config_path = file_manager.path_build(ControllerEngine.APP_DIR, 'configuration/log.yml')
TrackingManager.initialisation(log_config_path, logger='development', project_name=application_name)

📬 Modèles d'e-mail (.config/mailing.yml)

Fichier YAML regroupant les templates d’e-mails transactionnels et le footer.

from dreamtools import file_manager
from dreamtools.controller_manager import ControllerEngine
from dreamtools.mailing_manager import MailController

class APPControllerEngine(ControllerEngine):
    mailer:MailController
    
mail_template_path = file_manager.path_build(APPControllerEngine.APP_DIR, 'config/mailing.yml')

APPControllerEngine.mailer = MailController(
    smtp_url='smtp.exemple.net',
    smtp_port=587,
    smtp_mail='bot@monapp.net',
    smtp_password='motdepasse',
    path_templates=mail_template_path,
    SMTP_USER_NAME='Assistant numérique'
)

Les modèles peuvent être dupliqués, personnalisés ou déplacés : il suffira de renseigner le bon chemin dans path_templates.

📁 Structure

dreamtools_dreamgeeker/
├── .config/                # Fichiers de configuration par défaut (copiés dans le projet)   ├── mailing.yml         # Templates d'e-mail personnalisables   └── log.yml             # Configuration du logger
├── __init__.py
├── cli.py                  # Entrée en ligne de commande
├── validators.py           # Validation (emails, URL, etc.)
├── images.py               # Traitement d’images (Pillow)
├── exceptions.py           # Exceptions métiers avec suivi
├── toolbox.py              # Fonctions utilitaires diverses
└── logging_conf.yaml       # Fichier de secours (logger minimal)

🪪 Licence

MIT License / Licence MIT

Copyright (c) 2025 Couleur West IT

La licence MIT vous autorise à utiliser, copier, modifier, fusionner, publier, distribuer, sous-licencier et/ou vendre des copies du logiciel, sous réserve d’inclure la notice de droit d’auteur et la permission dans toutes les copies ou parties substantielles.

The MIT License permits use, copy, modification, merge, publication, distribution, sublicensing, and/or selling copies of the software, provided the copyright notice and permission are included in all copies or substantial portions.

Le logiciel est fourni "TEL QUEL", sans garantie d’aucune sorte. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.

✨ Auteur

Développé par Couleur West IT.

Outils pensés pour les environnements complexes : sécurité, validation, traitement léger et fiable.

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

dreamtools_dreamgeeker-2025.2.1a0.tar.gz (32.6 kB view details)

Uploaded Source

Built Distribution

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

dreamtools_dreamgeeker-2025.2.1a0-py3-none-any.whl (28.8 kB view details)

Uploaded Python 3

File details

Details for the file dreamtools_dreamgeeker-2025.2.1a0.tar.gz.

File metadata

File hashes

Hashes for dreamtools_dreamgeeker-2025.2.1a0.tar.gz
Algorithm Hash digest
SHA256 f014a17e96be9f4dfe4145c8f2217ec212175e61031dc9d45ec2b58c745b2a9e
MD5 69453f4a5a8b5b89588d301bc6c9f4bc
BLAKE2b-256 42d7ad40878500cd14a5e9e30ad81e3b87fb8bc967dc7055b53c5343a1cbef08

See more details on using hashes here.

File details

Details for the file dreamtools_dreamgeeker-2025.2.1a0-py3-none-any.whl.

File metadata

File hashes

Hashes for dreamtools_dreamgeeker-2025.2.1a0-py3-none-any.whl
Algorithm Hash digest
SHA256 81df404567a43368a69843def5f04ac13af7de54cf6c3ac23dbd2dee0cee8330
MD5 0c3062a81896af612ed1e8cf9d2712ea
BLAKE2b-256 ea8b02cae0eecac3d93ecb4bfe4569488efea2b7123ac64e7bf586da272725df

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