# \[ANN\] Colorfy.jl

**URL:** https://discourse.julialang.org/t/ann-colorfy-jl/137605
**Category:** Package Announcements
**Tags:** package, announcement, data, colors
**Created:** [June 13, 2026, 8:08pm UTC](https://discourse.julialang.org/t/ann-colorfy-jl/137605 "2026-06-13T20:08:47Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![juliohm](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juliohm/32/215266_2.png) [@juliohm](https://discourse.julialang.org/u/juliohm)
#### Post date: [June 13, 2026, 8:08pm UTC](https://discourse.julialang.org/t/ann-colorfy-jl/137605/1 "2026-06-13T20:08:47Z")

</div>

Colorfy.jl is a tiny utility to convert any vector of Julia objects into Colors.jl colors:

```julia
julia> using Colorfy

julia> values = [:red, :green, :blue];

julia> colorfy(values, alpha=[0.5, 0.6, 0.7])
3-element Vector{RGBA{FixedPointNumbers.N0f8}}:
 RGBA(1.0, 0.0, 0.0, 0.502)
 RGBA(0.0, 0.502, 0.0, 0.6)
 RGBA(0.0, 0.0, 1.0, 0.698)

```

New types can be registered by adding methods to `Colorfy.repr`, i.e., by implementing a reasonable colorful representation. For instance, we can convert Distributions.jl via a package extension. The colors have different transparency depending on the entropy:

```julia
julia> values = [Bernoulli(1.0), Bernoulli(0.8), Bernoulli(0.5)]
3-element Vector{Bernoulli{Float64}}:
 Bernoulli{Float64}(p=1.0)
 Bernoulli{Float64}(p=0.8)
 Bernoulli{Float64}(p=0.5)

julia> colorfy(values)
3-element Vector{ColorTypes.RGBA{Float64}}:
 RGBA(0.993248, 0.906157, 0.143936, 1.0)
 RGBA(0.993248, 0.906157, 0.143936, 0.2780719051126377)
 RGBA(0.267004, 0.004874, 0.329415, 0.0)

```

We use this utility package to visualize objects over Meshes.jl as colors. These objects are stored in vectors that are columns of GeoTables.jl.

The package was registered years ago, but I updated it recently to simplify the code and to make it more extendable. If you have a type with a colorful representation, please feel free to contribute a package extension. That way it can be automatically visualized with Makie.jl.
