Skip to main content

MareArts XColor

PyPI version Python Downloads License: MIT

A robust, modern color extraction library for extracting dominant colors from images with optional GPU acceleration, mask-based region selection, advanced preprocessing, and color similarity analysis. Optimized with Cython for high performance and cross-platform compatibility.

Version 0.0.6 - Enhanced build system with ARM64 support, improved performance, and optional GPU acceleration.

✨ Features

🚀 Dual Performance Modes: CPU-only for compatibility, optional GPU acceleration for speed
🔍 Color Similarity Analysis: Find how much specific colors appear in images
🎭 Mask Support: Extract colors from specific regions using mask images
⚡ Modern Algorithms: K-means and DBSCAN clustering with LAB color space
🎨 Accurate Results: Perceptual LAB color space for better color accuracy
🏗️ Cross-Platform: Pre-built wheels for Linux (x86_64, ARM64), macOS, Windows
📦 Easy Installation: Works out-of-the-box with optional GPU dependencies
🔧 Developer Friendly: Dual Python/Cython implementation for easy contribution

📦 Installation

pip install marearts-xcolor

Perfect for most users. Installs quickly with no GPU dependencies.

For GPU Users (Optional Acceleration)

# For CUDA 12.x users
pip install marearts-xcolor[gpu]

# For CUDA 11.x users
pip install marearts-xcolor cupy-cuda11x cuml

# Check your CUDA version first
nvidia-smi

💡 Smart Fallback: Even GPU installations work on CPU-only systems with automatic fallback.

Check Your Installation

from marearts_xcolor.gpu_utils import print_gpu_info
print_gpu_info()

🚀 Quick Start

Basic Usage (Works for Everyone)

from marearts_xcolor import ColorExtractor

# Auto mode - uses GPU if available, CPU otherwise
extractor = ColorExtractor(n_colors=5, use_gpu='auto')
colors = extractor.extract_colors('image.jpg')

print(colors)
# Output: [{'color': (255, 128, 64), 'percentage': 35.2}, ...]

GPU Mode Examples

# Recommended: Auto mode (best of both worlds)
extractor = ColorExtractor(use_gpu='auto')

# CPU only (guaranteed compatibility)
extractor = ColorExtractor(use_gpu='never')

# GPU required (only if you need guaranteed acceleration)
extractor = ColorExtractor(use_gpu='force')

📚 Usage Examples

1. Basic Color Extraction

from marearts_xcolor import ColorExtractor

# Create extractor with auto GPU detection
extractor = ColorExtractor(n_colors=5, use_gpu='auto')

# From file path
colors = extractor.extract_colors('image.jpg')

# From OpenCV image
import cv2
image = cv2.imread('image.jpg')
colors = extractor.extract_colors(image)

# From PIL image
from PIL import Image
import numpy as np
pil_image = Image.open('image.jpg')
image_array = np.array(pil_image)
colors = extractor.extract_colors(image_array)

2. Performance Comparison (CPU vs GPU)

import time
import numpy as np

# Create large test image
large_image = np.random.randint(0, 255, (2000, 2000, 3), dtype=np.uint8)

# Test CPU performance
extractor_cpu = ColorExtractor(n_colors=8, use_gpu='never')
start = time.time()
colors_cpu = extractor_cpu.extract_colors(large_image)
cpu_time = time.time() - start

# Test GPU performance (automatically falls back to CPU if unavailable)
extractor_gpu = ColorExtractor(n_colors=8, use_gpu='auto')
start = time.time()
colors_gpu = extractor_gpu.extract_colors(large_image)
gpu_time = time.time() - start

print(f"CPU time: {cpu_time:.2f}s")
print(f"GPU time: {gpu_time:.2f}s")
if gpu_time < cpu_time:
    print(f"GPU speedup: {cpu_time/gpu_time:.1f}x faster!")

3. With Mask (Region Selection)

# Extract colors only from white areas of mask
colors = extractor.extract_colors('image.jpg', 'mask.jpg')

# Create circular mask
import numpy as np
import cv2

height, width = 500, 500
mask = np.zeros((height, width), dtype=np.uint8)
cv2.circle(mask, (250, 250), 200, 255, -1)
colors = extractor.extract_colors(image, mask)

4. Color Similarity Analysis

# Define colors you want to find
target_colors = {
    'red': (255, 0, 0),
    'white': (255, 255, 255),
    'blue': (0, 0, 255)
}

# Find how much each color appears in the image
results = extractor.analyze_color_similarity('image.jpg', target_colors)

for color_name, result in results.items():
    print(f"{color_name}: {result['percentage']:.1f}% "
          f"(similarity: {result['similarity']:.1f}%)")

5. Brand Color Analysis

# Check brand color presence
brand_colors = {
    'brand_blue': (0, 123, 255),
    'brand_red': (220, 53, 69),
    'brand_green': (40, 167, 69)
}

results = extractor.analyze_color_similarity('product.jpg', brand_colors)

6. Performance Optimization Settings

# Fast mode - best for real-time processing
fast_extractor = ColorExtractor(
    n_colors=3,
    algorithm='kmeans',
    preprocessing=False,  # Skip preprocessing
    lab_space=False,      # Use RGB
    use_gpu='auto'        # Use GPU if available
)

# Accurate mode - best for detailed analysis
accurate_extractor = ColorExtractor(
    n_colors=8,
    algorithm='kmeans',
    preprocessing=True,   # Enable preprocessing
    lab_space=True,       # Use LAB color space
    use_gpu='auto'        # Use GPU if available
)

# CPU-only mode - guaranteed compatibility
cpu_extractor = ColorExtractor(
    n_colors=5,
    use_gpu='never'       # Force CPU mode
)

🖥️ Command Line Interface

# Basic extraction
marearts-xcolor image.jpg --colors 5

# With mask and visualization
marearts-xcolor image.jpg --mask mask.jpg --colors 8 --visualize output.png

# Fast mode
marearts-xcolor image.jpg --fast --colors 3

# Different algorithm
marearts-xcolor image.jpg --algorithm dbscan --colors 5

# Check version and GPU status
marearts-xcolor --version

📖 API Reference

ColorExtractor Class

ColorExtractor(n_colors=5, algorithm='kmeans', preprocessing=True, lab_space=True, use_gpu='auto')

Parameters:

  • n_colors: Number of dominant colors to extract (default: 5)
  • algorithm: 'kmeans' or 'dbscan' (default: 'kmeans')
  • preprocessing: Enable noise reduction and lighting normalization (default: True)
  • lab_space: Use LAB color space for accuracy (default: True)
  • use_gpu: GPU usage mode - 'auto', 'never', or 'force' (default: 'auto')

GPU Modes Explained

Mode Behavior Use Case
'auto' Uses GPU if available, falls back to CPU Recommended - Best performance with compatibility
'never' Always uses CPU Guaranteed compatibility, consistent performance
'force' Requires GPU, fails if unavailable Only when GPU acceleration is mandatory

Methods

extract_colors(image, mask=None)

Extract dominant colors from image.

Returns: List of {'color': (R,G,B), 'percentage': float}

analyze_color_similarity(image, target_colors, mask=None)

Analyze how much each target color appears in the image.

Returns: Dict with similarity analysis for each target color

GPU Utilities

from marearts_xcolor.gpu_utils import print_gpu_info, print_installation_guide

# Check GPU status and get installation instructions
print_gpu_info()

# Show complete installation guide
print_installation_guide()

📊 Example Output

Color Extraction:

[
  {"color": [255, 128, 64], "percentage": 35.2},
  {"color": [120, 200, 150], "percentage": 28.7},
  {"color": [80, 80, 80], "percentage": 20.1}
]

Color Similarity Analysis:

{
  "red": {
    "percentage": 20.5,
    "similarity": 95.0,
    "closest_color": [248, 12, 8]
  },
  "blue": {
    "percentage": 15.3,
    "similarity": 88.2,
    "closest_color": [10, 50, 200]
  }
}

⚡ Performance Guide

When GPU Acceleration Helps

  • ✅ Large images (>1000x1000 pixels)
  • ✅ Many colors requested (>10)
  • ✅ Batch processing multiple images
  • ✅ DBSCAN algorithm on large datasets

When CPU is Sufficient

  • ✅ Small to medium images (<500x500 pixels)
  • ✅ Few colors requested (<5)
  • ✅ Single image processing
  • ✅ K-means algorithm

Benchmark Your System

from marearts_xcolor.gpu_utils import print_gpu_info

# Check your GPU status
print_gpu_info()

# Run the performance comparison example above

🔧 Installation Troubleshooting

Common Issues & Solutions

GPU Libraries Not Found

Error: GPU forced but not available

Solution:

# Install GPU dependencies
pip install marearts-xcolor[gpu]

# Or manually
pip install cupy-cuda12x cuml  # for CUDA 12.x
pip install cupy-cuda11x cuml  # for CUDA 11.x

Check Your CUDA Version

nvidia-smi

CuPy Installation Issues

# For conda users
conda install cupy

# For pip users, check CUDA version and install matching CuPy
pip install cupy-cuda12x  # for CUDA 12.x
pip install cupy-cuda11x  # for CUDA 11.x

Still Having Issues?

# Use CPU-only mode (always works)
extractor = ColorExtractor(use_gpu='never')

Platform-Specific Notes

  • Linux: Full GPU support with CUDA
  • Windows: CuPy support available, cuML support limited
  • macOS: CPU-only recommended (no CUDA support)

📋 Requirements

Core Dependencies (Always Installed)

  • Python 3.9, 3.10, 3.11, 3.12
  • opencv-python==4.10.0.84
  • scikit-learn>=1.0.0
  • numpy (version-specific: 1.23.5 for Python <3.12, 1.26.0 for Python ≥3.12)
  • matplotlib>=3.5.0
  • pillow>=8.0.0
  • scipy>=1.7.0

Optional GPU Dependencies

  • cupy-cuda12x (for CUDA 12.x) or cupy-cuda11x (for CUDA 11.x)
  • cuml>=22.12.0 (RAPIDS cuML for GPU-accelerated clustering)

🌍 Platform Support

  • Linux: x86_64 and ARM64 (manylinux2014) with optional GPU acceleration
  • macOS: Intel (x86_64) and Apple Silicon (arm64) - CPU only
  • Windows: AMD64 and ARM64 with optional GPU acceleration

💡 Best Practices

For Most Users

# Recommended approach - works everywhere, fast when possible
extractor = ColorExtractor(use_gpu='auto')

For Production/CI

import os
# Force CPU mode in CI environments for consistency
gpu_mode = 'never' if os.getenv('CI') else 'auto'
extractor = ColorExtractor(use_gpu=gpu_mode)

For GPU-Intensive Applications

# Only use 'force' mode if GPU acceleration is critical
try:
    extractor = ColorExtractor(use_gpu='force')
except RuntimeError:
    print("GPU required but not available. Please install GPU dependencies.")
    sys.exit(1)

📄 License

MIT License


Made with ❤️ by MareArts - Bringing GPU acceleration to color extraction without the complexity!

Metadata

Release files for marearts-xcolor 0.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for marearts-xcolor 0.0.7
File
marearts_xcolor-0.0.7-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
marearts_xcolor-0.0.7-cp312-cp312-manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
marearts_xcolor-0.0.7-cp312-cp312-manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
marearts_xcolor-0.0.7-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details
marearts_xcolor-0.0.7-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
marearts_xcolor-0.0.7-cp311-cp311-manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
marearts_xcolor-0.0.7-cp311-cp311-manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
marearts_xcolor-0.0.7-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
marearts_xcolor-0.0.7-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
marearts_xcolor-0.0.7-cp310-cp310-manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
marearts_xcolor-0.0.7-cp310-cp310-manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details
marearts_xcolor-0.0.7-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details
marearts_xcolor-0.0.7-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
marearts_xcolor-0.0.7-cp39-cp39-manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
marearts_xcolor-0.0.7-cp39-cp39-manylinux2014_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ ARM64 Details
marearts_xcolor-0.0.7-cp39-cp39-macosx_10_9_universal2.whl CPython 3.9 CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size: 17.2 MB

Release files / marearts_xcolor-0.0.7-cp312-cp312-win_amd64.whl

Download URL marearts_xcolor-0.0.7-cp312-cp312-win_amd64.whl
Size 88.0 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
86af4c173a9bb653f4c43cc907f0f9abc58919b4569350ee1fedb448ac26bf69
BLAKE2b-256 checksum
How to use checksums
86582c114b05c2f037411bfb4c16d49b3e8b336a646debedc0bc5203880f417f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp312-cp312-manylinux2014_x86_64.whl

Download URL marearts_xcolor-0.0.7-cp312-cp312-manylinux2014_x86_64.whl
Size 2.0 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
f12769c1cea38c5ea1c5284b0b39caa2d9a5659300da3d6b1ddb4b8ac87e0711
BLAKE2b-256 checksum
How to use checksums
e643c2587cc9e79899e9d5a6e35c2f9fad7cf89a36504c0c3100938e9bcb1fa7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp312-cp312-manylinux2014_aarch64.whl

Download URL marearts_xcolor-0.0.7-cp312-cp312-manylinux2014_aarch64.whl
Size 2.1 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
68eb54542a5f957e679362a3decd39159b41799d3baa5fa6f91c7639673425fe
BLAKE2b-256 checksum
How to use checksums
f1aea9b5780f613d5d0d3b77d16f2b35ddf365397328588a4aa82eb66c5d6405
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp312-cp312-macosx_10_13_universal2.whl

Download URL marearts_xcolor-0.0.7-cp312-cp312-macosx_10_13_universal2.whl
Size 199.4 kB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
dbf41c6f965401829f6c967a1ef94e17bbd5bd606c412f3efc4c9a8cc30fc17e
BLAKE2b-256 checksum
How to use checksums
8e9582aad9acf6e8a4ddb00b37c234ee8b60882475b6e53310e8f24aca155148
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp311-cp311-win_amd64.whl

Download URL marearts_xcolor-0.0.7-cp311-cp311-win_amd64.whl
Size 91.6 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
5e8d9c8b4f3721842975b651a48015858ff22267e290bc323937204b411bdb23
BLAKE2b-256 checksum
How to use checksums
d2efd3d591af087afff15c78acd435dbcf47976f031db8d83a29c72ac1172204
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp311-cp311-manylinux2014_x86_64.whl

Download URL marearts_xcolor-0.0.7-cp311-cp311-manylinux2014_x86_64.whl
Size 2.2 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
1f178ce9771328a25a988a43da4f05da0054dd5d19557a12310539128cf3e0c6
BLAKE2b-256 checksum
How to use checksums
c1ed51443c9b29c21635b62b7e23503a0de1a689eb2a76b7e0142e85ec98e382
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp311-cp311-manylinux2014_aarch64.whl

Download URL marearts_xcolor-0.0.7-cp311-cp311-manylinux2014_aarch64.whl
Size 2.2 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
2f6a79e0b00fdc820e955f115c7c272580e49230cf0732c7a178336a528a4b93
BLAKE2b-256 checksum
How to use checksums
3b873044c9762381635094849abcfe4c724e1d405ed612ae9a1c581de5baf940
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp311-cp311-macosx_10_9_universal2.whl

Download URL marearts_xcolor-0.0.7-cp311-cp311-macosx_10_9_universal2.whl
Size 205.4 kB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
af95e3f6ad86898104a7b0325538c6e2e2e000a96aa071e3f901ffd30538f33e
BLAKE2b-256 checksum
How to use checksums
132612b49b519531a82f6257956a6226b8354e4c013c4eb778f382fc9f069c18
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp310-cp310-win_amd64.whl

Download URL marearts_xcolor-0.0.7-cp310-cp310-win_amd64.whl
Size 91.2 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
86119f730cdebc5955396a4e1c2ece3749cd7468f6fab6ad07d2135f4d4a0b3b
BLAKE2b-256 checksum
How to use checksums
d288ebdbe567c44938fe99f8e840f118969fb3839f471e8bd6bdc8dc8aeabbbf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp310-cp310-manylinux2014_x86_64.whl

Download URL marearts_xcolor-0.0.7-cp310-cp310-manylinux2014_x86_64.whl
Size 1.5 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
41ca74b3c0f740f7f620394dcf21ae54ff1a62f3a10811ba05ec369e4952b059
BLAKE2b-256 checksum
How to use checksums
89062b378f97480150099b3ab39be1e3e1073278072d4655c84f26101392de15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp310-cp310-manylinux2014_aarch64.whl

Download URL marearts_xcolor-0.0.7-cp310-cp310-manylinux2014_aarch64.whl
Size 2.2 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
09cbcb7e84fae40fb2a29c9273b8ec65c7e93f926d36cf24250ad79d76d624bd
BLAKE2b-256 checksum
How to use checksums
2011adfefc8eb89cf5db1df1b7d692fead53b2fcb91711c01c86b4f2eb45a6ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp310-cp310-macosx_10_9_universal2.whl

Download URL marearts_xcolor-0.0.7-cp310-cp310-macosx_10_9_universal2.whl
Size 202.7 kB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
dd64e7ace33b69a91f619bd7e1f02ef1388ad095c96b1b31e7c5659329840df3
BLAKE2b-256 checksum
How to use checksums
fba87e8ccf4099c1b645970d5353173ebb100e1523504a3fe6a73484a3b26538
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp39-cp39-win_amd64.whl

Download URL marearts_xcolor-0.0.7-cp39-cp39-win_amd64.whl
Size 116.2 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
d44874ccca0cce90c7ecb6c625bac08cbd47337443cd094140c0eb2d29d285b9
BLAKE2b-256 checksum
How to use checksums
2fbab9164584dc9ac7b280e2ebb2b617000dd08b1552d2a72304f5e300159942
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release files / marearts_xcolor-0.0.7-cp39-cp39-manylinux2014_x86_64.whl

Download URL marearts_xcolor-0.0.7-cp39-cp39-manylinux2014_x86_64.whl
Size 1.5 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
1f3f8f8e617f16e7d08228fdd54d836b84678645c3e7d681fd802f4196f82825
BLAKE2b-256 checksum
How to use checksums
f74d0359da13630d9a79b8fa0e3b0c02b216c3e758e1c553e9a91b6760cf83a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp39-cp39-manylinux2014_aarch64.whl

Download URL marearts_xcolor-0.0.7-cp39-cp39-manylinux2014_aarch64.whl
Size 2.2 MB
Tags CPython 3.9 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
083a767133c4560716d3350679ef40da2a1e6c682adb6db03307e0d6a4a5849e
BLAKE2b-256 checksum
How to use checksums
e2a33a7322d8b230e0f97f05f4eb0ebcd1930efad67efaf57634da63e879081b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.11

Release files / marearts_xcolor-0.0.7-cp39-cp39-macosx_10_9_universal2.whl

Download URL marearts_xcolor-0.0.7-cp39-cp39-macosx_10_9_universal2.whl
Size 217.2 kB
Tags CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
332a53105968916f25e57eaf7956fee6ad8ee18bcb421ced57c21ae8b25a09d9
BLAKE2b-256 checksum
How to use checksums
0cffc1caa207851ba890c0300e91ba97b1598fc05494ee8027ba055a6695bdb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 5, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.7 This release

16 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page