sh_cpl/README.md

3.5 KiB

CPL - Common python library


CPL is a development platform for python server applications
using Python.

Table of Contents

  1. Features
  2. Getting Started
  3. Roadmap
  4. Contributing
  5. License
  6. Contact

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
      • ...

Getting Started

Get started with CPL.

Prerequisites

Installation

Install the CPL package

pip install cpl-core --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