Skip to main content

simpl is a collection of useful, common python libraries, primarily for building web services and APIs

Project description

# simpl [![Build Status](https://travis-ci.org/checkmate/simpl.svg?branch=master)](https://travis-ci.org/checkmate/simpl) [![Coverage Status](https://coveralls.io/repos/checkmate/simpl/badge.svg?branch=master)](https://coveralls.io/r/checkmate/simpl?branch=master)

Common Python libraries for:

  • [Configuration](#config)

  • [Logging](#logging)

  • [Secrets](#secrets)

  • [Python Utilites](#python)

  • [WSGI Middleware](#middleware)

  • [REST API Tooling](#rest)

## <a name=”config”></a>Config

Supports argparse-like configuration options with support for the following configuration methods: - command-line arguments - environment variables - keychain (OSX) and keyring (Linux) - ini/config files

## <a name=”logging”></a>Logging (simpl.log)

Encapsulates logging boilerplate code to initialize logging using the [config](#config) module.

## <a name=”secrets”></a>Sensitive Value Helpers

Helpers for managing sensitive values.

## <a name=”python”></a>Python Utilities

Code we wished was built in to python (or was simpler to use): - dictionary and list merging - dictionary get/set/in by path

## <a name=”middleware”></a>WSGI middleware

Includes sample middleware for use with WSGI apps including bottle.

Middleware included: - CORS: handles CORS requests

## <a name=”rest”></a>REST API Tooling

Helper code for handling RESTful APIs using bottle.

Code included: - body: a decorator that parses a call body and passes it to a route as an argument. The decorator can apply a schema (any callable including a voluptuous.Schema), return a default, and enforce that a body is required. - paginated: a decorator that returns paginated data with correct limit/offset validation and HTTP responses. - process_params: parses query parameters from bottle request

## release [![latest](https://img.shields.io/pypi/v/simpl.svg)](https://pypi.python.org/pypi/simpl)

## builds

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

simpl-0.4.1.tar.gz (331.0 kB view hashes)

Uploaded Source

Built Distribution

simpl-0.4.1-py2.py3-none-any.whl (55.6 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page