Skip to content

Collection of color palettes for Python

License

Notifications You must be signed in to change notification settings

orsinium-labs/pencils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pencils

Pancils is a Python library with a colletion of color palettes.

Currently available palettes:

Features:

  • A lot of colors from manually picked palettes.
  • 100% type safe.
  • Best integration with IDEs, autocomplete all the way down.
  • Includes multiple representations (HEX, RGB, HSL) for each color.
  • Zero-dependency.

Installatiion:

python3 -m pip install pencils

Usage

Get the hex representation of "Sunflower" color from Dutch Palette of Flat UI Colors:

import pencils

pencils.NLPalette.colors.sunflower.value.hex
# 'FFC312'

#ffc312

That's a lot of attributes and each one of them has a meaning:

  1. NLPalette is an instance of the pencils.Palette class which holds information about palette name, author, source URL, and even emojis associated with the palette.
  2. colors attribute is an enum, a subclass of pencils.Colors.
  3. sunflower is the color ID.
  4. value is used to get the value of the enum. The value is an instance of pencils.Color class which contains operations on colors.
  5. hex is a lowercase hex representaion of the color without #.

Make the color darker:

color = pencils.NLPalette.colors.sunflower.value.hsl
color.lightness = .2
color.hex
# '664c00'

#664c00

Get random color from a random palette:

pencils.random_palette().random_color()
# Color(name='Unmellow Yellow', hex='fffa65')

#fffa65