Skip to main content

An open-source Python library for color processing, random color generation, conversion between common types, and retrieval of common color properties, color palettes, and color information.

Project description

Hued

Python Version Code Size Downloads License Compliance PyPI Version

An open-source Python library for color generation, conversion, and retrieval of common properties, palettes, and color information.

Changes in version 1.0.4:

  • Updated colors.py with 500+ new color names to map to.

Changes in version 1.0.3:

  • Created new functions for the analiysis module. Including rgb_to_linear, and other functions to return more color properties, like luminance and vibrancy. We've also added new functions to calculate the color contrast ratio between to colors, and an accessibility function to return if foreground text color should be light, or dark, based on the background color.
  • Created a new blend_colors function in our conversions module, to blend 2 RGB colors based on a given ratio. Also created new color conversion functions to convert each format into another target format, instead of just RGB.
  • Added 3 more color schemes to palettes. Created new functions under the ColorPalette class, for random color generation, and a batch HEX color generation function.

[!TIP] Most functions rely on the RGB color format, but you can quickly convert between RGB, and other color formats, using the functions provided in the conversions module.

Installation

You can install Hued using pip:

pip install hued

Supported Python Versions

Hued supports the following Python versions:

  • Python 3.6
  • Python 3.7
  • Python 3.8
  • Python 3.9
  • Python 3.10
  • Python 3.11 or later

Please ensure that one of these Python versions is installed before using Hued. Hued may not work as expected on lower versions of Python than the supported.

Features

  • Color Generation: Generate random colors and palettes.
  • Color Conversion: Convert between different color formats (RGB, HEX, HSL, etc.).
  • Color Properties: Retrieve properties like brightness, temperature, and whether a color is muted, pastel, or vibrant.
  • Color Names: Get relevant color names, based on HEX values, and convert between color names and HEX values.

Usage

Color Properties

from hued.colors import ColorManager

# Initialize the color manager
color_manager = ColorManager()

# Generate a random color
colorBlue = color_manager.get_color_by_name("Blue");

print("Blue Hex:", colorBlue.get("Hex"));

You can view more properties by going to Hued's package documentation

Color Conversion

from hued.conversions import hex_to_rgb, rgb_to_hsl

# Convert HEX to RGB
rgb_color = hex_to_rgb("FF0000"); # Red
print(f"Hex to RGB: {rgb_color}")

# Convert RGB to HSL
hsl_color = rgb_to_hsl(255, 0, 0) # Red
print(f"RGB to HSL: {hsl_color}")

Color Analysis

from hued.analysis import get_temperature, is_pastel

# Check if a color is a pastel color
pastel_color = (255, 200, 200)  # Example pastel color
is_pastel = is_pastel(pastel_color)
print(f"Is Pastel: {is_pastel}")

# Check if a color is vibrant
warm_color = (255, 0, 0)  # Example warm color
temperature = get_temperature(warm_color)
print(f"The current color is: {temperature}") # Warm

Color Generation and Palettes

from hued.palettes import ColorPalette

base_color = (255, 60, 52)  # Red

# Initialize the ColorPalette with a base color (RGB)
palette = ColorPalette(base_color)

# Get the complementary color
complementary = palette.generate_complementary()
print(f"Complementary color of {base_color}: {complementary}")

# Generate a random palette, with calculated color schemes, and base color
random_palette = palette.generate_random_palette()
print(f"Generated color palette's base color: {random_palette.get('Base Color')}")

More functions are available for the ColorPalette class, including converting all contained colors to Hex colors.

Contributing

Contributions are welcome! If you encounter any issues, have suggestions, or want to contribute to Hued, please open an issue or submit a pull request on GitHub.

License

Hued is released under the terms of the MIT License (Modified). Please see the LICENSE file for the full text.

Modified License Clause

The modified license clause grants users the permission to make derivative works based on the Hued software. However, it requires any substantial changes to the software to be clearly distinguished from the original work and distributed under a different name.

By enforcing this distinction, it aims to prevent direct publishing of the source code without changes while allowing users to create derivative works that incorporate the code but are not exactly the same.

Please read the full license terms in the LICENSE file for complete details.

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

hued-1.0.4.tar.gz (27.6 kB view details)

Uploaded Source

Built Distribution

hued-1.0.4-py3-none-any.whl (26.9 kB view details)

Uploaded Python 3

File details

Details for the file hued-1.0.4.tar.gz.

File metadata

  • Download URL: hued-1.0.4.tar.gz
  • Upload date:
  • Size: 27.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for hued-1.0.4.tar.gz
Algorithm Hash digest
SHA256 d1d0beea79f7db9d62567f120f671271f4bb16e141414f6179e2c59dddb30802
MD5 fb25bdf7385dbc56077da7ad5b65d70c
BLAKE2b-256 9a753790d2167ccc5c233c952f8efb83632eda7283a8251085492901f19ab1ae

See more details on using hashes here.

File details

Details for the file hued-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: hued-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 26.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for hued-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 36225c657037e42d1a88c89d175485c817d67e5cf981c1dc7d2eade0e414b1c3
MD5 1197f0774bc54d2c95ffb2d0fdff27c4
BLAKE2b-256 3399e00616f0af746ce56f6c0b3e53868cbe02c4fd95edd9dae8ebb50b26364f

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