Skip to main content

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

Project description

Build Status Coverage Status

Common Python libraries for:

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

Logging (simpl.log)

Encapsulates logging boilerplate code to initialize logging using the
config module.

Sensitive Value Helpers

Helpers for managing sensitive values.

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

WSGI middleware

Includes sample middleware for use with WSGI apps including bottle.

Middleware included:

  • CORS: handles CORS requests

  • Context: handles setting a threadlocal context and adds a transaction ID.

  • Errors: handles catching and formatting errors

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

Date/Time Utilites

Provides functions that consistently format date/time and timestamp data for use in APIs.

MongoDB Backend Wrapper

Implements an opinionated wrapper for MongoDB databases and collections
that works with the rest module and supports query param filtering
(including text search) and pagination of backend collections.

release

latest

builds

Branch

Status

master

Build Status

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.8.1.tar.gz (46.6 kB view details)

Uploaded Source

Built Distribution

simpl-0.8.1-py2.py3-none-any.whl (60.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file simpl-0.8.1.tar.gz.

File metadata

  • Download URL: simpl-0.8.1.tar.gz
  • Upload date:
  • Size: 46.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for simpl-0.8.1.tar.gz
Algorithm Hash digest
SHA256 7e6145a4f1412ed8e1faea413debc050bf2b11a266af5b75d2e60b0d452a64b5
MD5 1c836fd689b772b80f14a7b57305e646
BLAKE2b-256 9dd5729c62aae491a6d3679f3b5d0b6e9d8eca596ff10ca25cb17d2e5422570d

See more details on using hashes here.

File details

Details for the file simpl-0.8.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for simpl-0.8.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3518876c4b145e8ba51436172740c2348544df258d93a819000458269782982e
MD5 0210ccfea4e17cd5dd4b5d222bebc702
BLAKE2b-256 86eb3aaa7aa26b5cddbd43d61664567febd68bddf5f3fee3d1c1122a50ef92d6

See more details on using hashes here.

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