{"id":13661008,"url":"https://github.com/hsluv/hsluv-python","last_synced_at":"2025-05-15T19:00:23.609Z","repository":{"id":4992981,"uuid":"6151112","full_name":"hsluv/hsluv-python","owner":"hsluv","description":"Python implementation of HSLuv (revision 4)","archived":false,"fork":false,"pushed_at":"2025-04-28T23:17:45.000Z","size":1925,"stargazers_count":140,"open_issues_count":0,"forks_count":15,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-29T00:32:04.828Z","etag":null,"topics":["color-palettes","colors","colorspace","colorspaces","hpluv","hsl","hsluv","python"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/hsluv/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hsluv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-10-10T02:36:23.000Z","updated_at":"2025-04-28T23:17:43.000Z","dependencies_parsed_at":"2024-12-14T01:02:50.600Z","dependency_job_id":"7c56f753-da97-49bd-a578-ed09cafb2a68","html_url":"https://github.com/hsluv/hsluv-python","commit_stats":{"total_commits":136,"total_committers":11,"mean_commits":"12.363636363636363","dds":0.5735294117647058,"last_synced_commit":"599131460683f842044f9ffc8a495cb227c6190a"},"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hsluv%2Fhsluv-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hsluv%2Fhsluv-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hsluv%2Fhsluv-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hsluv%2Fhsluv-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hsluv","download_url":"https://codeload.github.com/hsluv/hsluv-python/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254404337,"owners_count":22065639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["color-palettes","colors","colorspace","colorspaces","hpluv","hsl","hsluv","python"],"created_at":"2024-08-02T05:01:28.500Z","updated_at":"2025-05-15T19:00:23.573Z","avatar_url":"https://github.com/hsluv.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"[![Build Status](https://github.com/hsluv/hsluv-python/actions/workflows/test.yml/badge.svg)](https://github.com/hsluv/hsluv-python/actions/workflows/test.yml)\n[![Package Version](https://img.shields.io/pypi/v/hsluv.svg)](https://pypi.python.org/pypi/hsluv/)\n\nA Python implementation of [HSLuv](https://www.hsluv.org) (revision 4).\n\n## Installation\n\n`pip install hsluv`\n\nPython 2 users: `pip install hsluv==5.0.0`\n\n## Usage\n\n\u003e This library does not hide (clamp) floating point error, e.g. you might receive a value outside\n\u003e of the expected range. If you wish to display the outputs of this library, consider rounding them \n\u003e for your purpose. The floating point error has not been quantified, but at least 10 decimal digits \n\u003e should be free of it.\n\n### `hsluv_to_hex([hue, saturation, lightness])`\n\n`hue` is a float between 0 and 360, `saturation` and `lightness` are floats between 0 and 100. This \nfunction returns the resulting color as a hex string.\n\n### `hsluv_to_rgb([hue, saturation, lightness])`\n\nLike above, but returns a list of 3 floats between 0 and 1, for each RGB channel.\n\n### `hex_to_hsluv(hex)`\n\nTakes a hex string and returns the HSLuv color as a list of floats as defined above.\n\n### `rgb_to_hsluv([red, green, blue])`\n\nLike above, but `red`, `green` and `blue` are passed as floats between 0 and 1.\n\nFor HPLuv (the pastel variant), use `hpluv_to_hex`, `hpluv_to_rgb`, `hex_to_hpluv` and `rgb_to_hpluv`.\n\n## Testing\n\nRun `python setup.py test`.\n\n## Authors\n\n* Robert McGinley ([mcginleyr1](https://github.com/mcginleyr1))\n* Alexei Boronine ([boronine](https://github.com/boronine))\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhsluv%2Fhsluv-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhsluv%2Fhsluv-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhsluv%2Fhsluv-python/lists"}