Skip to main content

PyPepper is a microservice toolkit written in Python.

Project description

logo

PyPepper

In memory of my father who passed away due to COVID-19.

PyPI GitHub Actions Coverage

:checkered_flag: Features

common

Common packages.

  • context
    • common.context A powerful chained context
  • security
    • common.security.crypto.elliptic.ecdsa Sign/Verify message by ECDSA
    • common.security.crypto.digest Get hash bytes/hex
    • common.security.crypto.salt Generates a random salt of the specified size
  • utils
    • common.utils.random A class for generating random values
    • common.utils.retry Retry running the function by random interval, support lambda
    • common.utils.time Get UTC/local datetime/timezone/timestamp, support sleep
    • common.utils.uuid UUID(v4) generator
  • cache
    • common.cache A thread safe TTL cache-set
  • log
    • common.log A simple logger based on loguru
  • options
    • common.options An easy-to-use options
  • :computer: system
    • common.system System signals handler

event

An event package with payload, support sign/verify signature.

fsm

An out-of-box FSM with event trigger, support custom state.

helper

Database helper.

  • helper.db.mongodb MongoDB helper
  • helper.db.mysql MySQL helper

network

  • network.http RESTFul API server based on FastAPI.

scheduler

A Workflow-based job scheduler.

loader

Module loader.

:computer: Development Environment

  • python 3.10,3.11,3.12,3.13
  • conda >= 22.9.0

:wrench: Quick Guide

  • Build code

    Install all dependencies and compile code.

    make build
    
  • Test with coverage

    make test
    
  • Build docker image

    make docker
    
  • Clean

    make clean
    

:bulb: Roadmap

  • Documents
  • Tracing

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

pypepper-0.3.7.tar.gz (53.5 kB view details)

Uploaded Source

Built Distribution

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

pypepper-0.3.7-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

Details for the file pypepper-0.3.7.tar.gz.

File metadata

  • Download URL: pypepper-0.3.7.tar.gz
  • Upload date:
  • Size: 53.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for pypepper-0.3.7.tar.gz
Algorithm Hash digest
SHA256 99e2de9548c05dbfa6f9ac0f15d984e02fe48d9e255d1d4bd82cf992f16b3b99
MD5 b56a9b94dd992f5cb7e8e892ce8f8de1
BLAKE2b-256 0e3db85f698ab012d84b773869cf9ef89c075ca7de3c10e2e194996e55ad5fa6

See more details on using hashes here.

File details

Details for the file pypepper-0.3.7-py3-none-any.whl.

File metadata

  • Download URL: pypepper-0.3.7-py3-none-any.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for pypepper-0.3.7-py3-none-any.whl
Algorithm Hash digest
SHA256 34a3065f1790818f3183081422625d2526059002efd99841d75939e2a6e55846
MD5 d338bb33191152b0b67a3c6c9ad68f84
BLAKE2b-256 1c06f51ececfc0e25d1813a610d52f07874daa991ced5f68f68af17681d9bd6a

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