Skip to main content

Python Utility Package

Project description

rite Logo

Python Utility Package

rites to write py right




license website python wheel

stars forks downloads issues sponsors contributors



Table of Contents

About

rite is a modern Python utility library with zero external runtime dependencies. Built with Python 3.12+ in mind, it provides a comprehensive collection of utilities for cryptography, filesystem operations, text processing, collections, conversions, networking, and more.

Key Features

  • Zero Dependencies: No external runtime dependencies
  • Type Safe: Comprehensive type hints with Python 3.12+ syntax
  • Well Tested: >99% code coverage with extensive test suite
  • Modern Python: Supports Python 3.12, 3.13
  • Modular Design: Clear module organization with consistent structure
  • Fully Documented: Extensive documentation and practical examples

Module Overview

Module Description
collections Buffers, caches (LRU/LFU/TTL), dict/list/set utilities, queues, trees
conversion Type conversions, format transformations, unit conversions
crypto UUID generation, hashing (SHA-256, MD5, BLAKE2), ciphers, random
diagnostics Debugging, error handling, logging, metrics, profiling
filesystem File/folder operations, compression, path utilities, MIME types
functional Composition, currying, decorators, memoization, predicates
markup HTML/XML/Markdown processing, entity encoding, sanitization
net HTTP utilities, MIME types, URL encoding, request helpers
numeric Math operations, statistics, number formatting
reflection Attributes, inspection, signatures, type checking
serialization JSON, CSV, INI, TOML, pickle serialization
system Environment, platform detection, process management, shell
temporal Date/time utilities, timestamp operations, formatting
text Slug generation, case conversion, sanitization, analysis, search

Quick Start

Installation

From PyPI:

pip install rite

Using Poetry:

poetry add rite

From Source:

git clone https://github.com/scape-agency/rite.git
cd rite
poetry install

View on PyPI

Basic Usage

# Cryptography
from rite.crypto.uuid import uuid_hex
from rite.crypto.hash import hash_sha256

user_id = uuid_hex()
password_hash = hash_sha256("secure_password")

# Filesystem
from rite.filesystem.file import file_copy, file_exists

if file_exists("config.json"):
    file_copy("config.json", "config.backup.json")

# Text Processing
from rite.text.slug import slug_generate
from rite.text.case import case_to_snake

slug = slug_generate("Hello World!")  # 'hello-world'
snake = case_to_snake("helloWorld")   # 'hello_world'

# Collections
from rite.collections.list import list_unique, list_flatten

unique = list_unique([1, 2, 2, 3])    # [1, 2, 3]
flat = list_flatten([[1, 2], [3, 4]]) # [1, 2, 3, 4]

# Serialization
from rite.serialization.json import json_load, json_dump

data = json_load("config.json")
json_dump(data, "output.json", indent=2)

# Functional
from rite.functional.composition import composition_pipe

pipeline = composition_pipe(str.strip, str.lower, str.title)
result = pipeline("  hello world  ")  # 'Hello World'

# System
from rite.system.platform import platform_is_linux, platform_name

if platform_is_linux():
    print(f"Running on {platform_name()}")

# Diagnostics
from rite.diagnostics.profiling import profiling_stopwatch

with profiling_stopwatch() as timer:
    # ... your code ...
    pass
print(f"Elapsed: {timer.elapsed:.3f}s")

Documentation

User Documentation

Developer Documentation

AI Agent Documentation

Additional Resources


Authors

rite is an open-source project by Scape Agency.

Scape Agency is a spatial innovation collective that dreams, discovers and designs the everyday of tomorrow. We blend design thinking with emerging technologies to create a brighter perspective for people and planet. Our products and services naturalise technology in liveable and sustainable –scapes that spark the imagination and inspire future generations.


Contributing

We'd love for you to contribute and to make rite even better than it is today! Please refer to the contribution guidelines for details on:

  • Code of conduct
  • Development workflow
  • Code standards
  • Testing requirements
  • Pull request process

Quick start for contributors:

# Clone the repository
git clone https://github.com/scape-agency/rite.git
cd rite

# Install dependencies
poetry install --with dev

# Install pre-commit hooks
poetry run pre-commit install

# Run tests
make test

# Run all checks
make check

License

Except where otherwise noted, rite is licensed under the terms of the MIT License.


Disclaimer

THIS SOFTWARE IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.


Made with ♥ by Scape Agency
Copyright 2025 Scape Agency. All Rights Reserved

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

rite-0.2.4.tar.gz (148.3 kB view details)

Uploaded Source

Built Distribution

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

rite-0.2.4-py3-none-any.whl (359.8 kB view details)

Uploaded Python 3

File details

Details for the file rite-0.2.4.tar.gz.

File metadata

  • Download URL: rite-0.2.4.tar.gz
  • Upload date:
  • Size: 148.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.12 Linux/6.11.0-1018-azure

File hashes

Hashes for rite-0.2.4.tar.gz
Algorithm Hash digest
SHA256 b29dc72087d7164b13b7e9106afded0599a8832f555c5a293d3fb34cd8f704d0
MD5 bfe2cae6e547330ed2749f1a12d9eb44
BLAKE2b-256 364a0829846a12da994db4f91cccdfcac5d6f38f79c9c5ed3921c3bd28a829ba

See more details on using hashes here.

File details

Details for the file rite-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: rite-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 359.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.12 Linux/6.11.0-1018-azure

File hashes

Hashes for rite-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 0feb1d4491eb87e52b12d6eb938b94b68e3a583b3f54bdd76153afdb031a5ee5
MD5 f8b60e5fec733b3742a50c65b5af08bb
BLAKE2b-256 bd19cc39684ef6278f5b7a2dfdf233f49ce22279211936bdacc3e3aa49cef612

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