Skip to main content

A set of helper functions

Project description

Boilerplate Tools

A collection of utility functions and tools to simplify common development tasks.

Installation

pip install boilerplate-tools

Features

  • Smart String Formatting: String templating with variable validation
  • Configuration Management: Load and process configuration files
  • JSON I/O: Simple functions for reading, writing, and appending JSON data
  • Path Management: Easily handle Python path configuration

Usage Examples

Smart Format

from boilerplate_tools import smart_format

# Format a string with required variables
result = smart_format("Hello, {name}!", {"name": "World"})
print(result)  # Output: Hello, World!

# Will raise KeyError for missing variables
try:
    smart_format("Hello, {name}!", {})
except KeyError as e:
    print(e)  # Missing required template variable: 'name'

# Will warn about unused variables
import warnings
with warnings.catch_warnings(record=True) as w:
    smart_format("Hello, {name}!", {"name": "World", "unused": "value"})
    if w:
        print(w[0].message)  # Unused variables provided that are not in the template: unused

Configuration Loading

from boilerplate_tools import load_config

# Load a configuration file with variable resolution
config = load_config("config.yaml")
print(config.some_key)

JSON I/O

from boilerplate_tools import read_json, write_json, append_json

# Read a JSON file
data = read_json("data.json")

# Write a JSON file
write_json("output.json", {"name": "John", "age": 30})

# Append to a JSON list file
append_json("list.json", [{"name": "John"}, {"name": "Jane"}])

Path Management

from boilerplate_tools import setup_root

# Add the current directory to sys.path
setup_root()

# Add the parent directory to sys.path
setup_root(n_up=1)

# Get the root directory path
root_dir = setup_root(n_up=1, return_root=True)
print(f"Root directory: {root_dir}")

Development

Distribution creation:

python setup.py sdist bdist_wheel

Upload to PyPI:

twine upload dist/*

TODO

  • Add Pytest tests for all functions

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

boilerplate_tools-0.1.4.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

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

boilerplate_tools-0.1.4-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file boilerplate_tools-0.1.4.tar.gz.

File metadata

  • Download URL: boilerplate_tools-0.1.4.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for boilerplate_tools-0.1.4.tar.gz
Algorithm Hash digest
SHA256 291d114e377552011bd1ceda9d51b76d9b42d6da23cb4a040ccdaa39b9efcdf3
MD5 3dbe80072f15e06024ae5a00f0142e9b
BLAKE2b-256 2a2ff997435cfce48bef58ba710b8ee4e2772df51b30f944c934c5af24d9b88a

See more details on using hashes here.

File details

Details for the file boilerplate_tools-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for boilerplate_tools-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c9b5132c0aa6a2193c6bb731321a81bcbefe9a7f3c7ae725a09da2c321086c8b
MD5 6580a5e76e6a0df7e942d961c28bb094
BLAKE2b-256 e908b6e700cf9256ebc2133bf103399bfd9ea33c81cf09b1d186d10ecf0277c4

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