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.6.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.6-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pypepper-0.3.6.tar.gz
Algorithm Hash digest
SHA256 94114cf3e1dd9ac11dc9d9656f8022d4f9792a5021b177e2dd2e9e69b0b758a0
MD5 24f752ce65edc249ba3d91120eec3e17
BLAKE2b-256 1ea7320f770c5bf8f591988955633147198b57b26ac14cb26d847407626a9f7e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pypepper-0.3.6-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.16

File hashes

Hashes for pypepper-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 078aaa9f9f5a1aff1c847a60e71ea899035a9658ec24644b84ce236b5161613d
MD5 ab28c339a9cba9894e0a19d256e667fb
BLAKE2b-256 545b41e5688b1a1c68c72d2dce64b91320119391305ee6963c1319c368d2219b

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