Common Python Library
https://www.sh-edraft.de
Sven Heidemann
01bc746092
# Conflicts: # src/cpl_cli/.cpl/__init__.py # src/cpl_cli/__init__.py # src/cpl_cli/_templates/__init__.py # src/cpl_cli/_templates/build/__init__.py # src/cpl_cli/_templates/publish/__init__.py # src/cpl_cli/abc/__init__.py # src/cpl_cli/command/__init__.py # src/cpl_cli/configuration/__init__.py # src/cpl_cli/cpl-cli.json # src/cpl_cli/helper/__init__.py # src/cpl_cli/live_server/__init__.py # src/cpl_cli/migrations/__init__.py # src/cpl_cli/migrations/base/__init__.py # src/cpl_cli/migrations/service/__init__.py # src/cpl_cli/publish/__init__.py # src/cpl_cli/source_creator/__init__.py # src/cpl_cli/validators/__init__.py # src/cpl_core/__init__.py # src/cpl_core/application/__init__.py # src/cpl_core/configuration/__init__.py # src/cpl_core/console/__init__.py # src/cpl_core/cpl-core.json # src/cpl_core/database/__init__.py # src/cpl_core/database/connection/__init__.py # src/cpl_core/database/context/__init__.py # src/cpl_core/dependency_injection/__init__.py # src/cpl_core/dependency_injection/service_provider.py # src/cpl_core/dependency_injection/service_provider_abc.py # src/cpl_core/environment/__init__.py # src/cpl_core/logging/__init__.py # src/cpl_core/mailing/__init__.py # src/cpl_core/pipes/__init__.py # src/cpl_core/time/__init__.py # src/cpl_core/utils/__init__.py # src/cpl_discord/.cpl/__init__.py # src/cpl_discord/.cpl/schematic_discord_event.py # src/cpl_discord/__init__.py # src/cpl_discord/application/__init__.py # src/cpl_discord/command/__init__.py # src/cpl_discord/configuration/__init__.py # src/cpl_discord/container/__init__.py # src/cpl_discord/cpl-discord.json # src/cpl_discord/events/__init__.py # src/cpl_discord/helper/__init__.py # src/cpl_discord/service/__init__.py # src/cpl_discord/service/discord_bot_service.py # src/cpl_discord/service/discord_bot_service_abc.py # src/cpl_discord/service/discord_service.py # src/cpl_query/__init__.py # src/cpl_query/base/__init__.py # src/cpl_query/base/queryable_abc.py # src/cpl_query/cpl-query.json # src/cpl_query/enumerable/__init__.py # src/cpl_query/extension/__init__.py # src/cpl_query/iterable/__init__.py |
||
---|---|---|
docs | ||
src | ||
tests | ||
tools | ||
unittests | ||
.gitignore | ||
cpl-workspace.json | ||
LICENSE | ||
pyproject.toml | ||
README.md |
CPL - Common python library
CPL is a development platform for python server applications
using Python.
Table of Contents
Features
- Expandle
- Application base
- Standardized application classes
- Application object builder
- Application extension classes
- Startup classes
- Startup extension classes
- Configuration
- Configure via object mapped JSON
- Console argument handling
- Console class for in and output
- Banner
- Spinner
- Options (menu)
- Table
- Write
- Write_at
- Write_line
- Write_line_at
- Dependency injection
- Service lifetimes: singleton, scoped and transient
- Providing of application environment
- Environment (development, staging, testing, production)
- Appname
- Customer
- Hostname
- Runtime directory
- Working directory
- Logging
- Standardized logger
- Log-level (FATAL, ERROR, WARN, INFO, DEBUG & TRACE)
- Mail handling
- Send mails
- Pipe classes
- Convert input
- Utils
- Credential manager
- Encryption via BASE64
- PIP wrapper class based on subprocess
- Run pip commands
- String converter to different variants
- to_lower_case
- to_camel_case
- ...
- Credential manager
Getting Started
Prerequisites
- Install python which includes Pip installs packages
Installation
Install the CPL package
pip install cpl --extra-index-url https://pip.sh-edraft.de
Install the CPL CLI
pip install cpl-cli --extra-index-url https://pip.sh-edraft.de
Create workspace:
cpl new <console|library|unittest> <PROJECT NAME>
Run the application:
cd <PROJECT NAME>
cpl start
Roadmap
See the open issues for a list of proposed features (and known issues).
Contributing
Contributing Guidelines
Read through our contributing guidelines to learn about our submission process, coding rules and more.
Want to Help?
Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing.
License
Distributed under the MIT License. See LICENSE for more information.
Contact
Sven Heidemann - sven.heidemann@sh-edraft.de
Project link: https://git.sh-edraft.de/sh-edraft.de/sh_common_py_lib