Skip to main content

A new pip-installable library

Project description

colorswan

colorswan is a precision color conversion library for Python, focused on converting sRGB to the perceptual color spaces Oklab and Oklch.

It provides accurate conversions using standard white points and matrices, suitable for color science, data visualization, and web design applications.

Installation

pip install colorswan

Usage

Basic Conversion (Hex to Oklab/Oklch)

from colorswan import OkColor

converter = OkColor()

# Convert from Hex
result = converter.convert("#FF0000") # Red
print(result)
# Output:
# {
#   'oklab': {'L': 0.6279..., 'a': 0.2248..., 'b': 0.1258...},
#   'oklch': {'L': 0.6279..., 'C': 0.2576..., 'h': 29.233...}
# }

Tuple Input

You can also pass RGB tuples (0-255).

# Convert from RGB Tuple
white = converter.convert((255, 255, 255))
print(white['oklab'])
# {'L': 1.0, 'a': 0.0, 'b': 0.0}

Using Constants

The library exposes standard color matrices and white points.

from colorswan import constants

print(constants.WHITE_POINT_D65)
# (0.95047, 1.0, 1.08883)

Features

  • Accurate: Implements the official Oklab matrices (sRGB -> Linear -> XYZ -> LMS -> Oklab).
  • Zero Dependencies: Pure Python implementation.
  • Easy to Use: Simple API for common color tasks.

License

MIT

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

colorswan-0.0.2.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

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

colorswan-0.0.2-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file colorswan-0.0.2.tar.gz.

File metadata

  • Download URL: colorswan-0.0.2.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for colorswan-0.0.2.tar.gz
Algorithm Hash digest
SHA256 5ebe9ebccfe5d144269c45e23a2af74a2b5f5e3a7ca03f2f3aa1eeea61bce96f
MD5 f57b623b6963fd7d7108d27f68247967
BLAKE2b-256 f381501beee898bc95587ef792197887a49e303a2fb2d47f528f29f71abf2c17

See more details on using hashes here.

File details

Details for the file colorswan-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: colorswan-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.1

File hashes

Hashes for colorswan-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 30f2e0d1bf003dbd0f9518ee560e814d3c2dfbbf6d5e71e8390291531aa605ea
MD5 6043c9db8ceb5d899ba74331e57a5244
BLAKE2b-256 db2256ceb687060723e830f7a84405488ff0a3fbf2f57e67b1734d3b1dc7fc1c

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