←back to thread

97 points meodai | 1 comments | | HN request time: 0.276s | source

I built this API to return the closest named color for any hex value—using curated lists like my own [1], XKCD [2], and others.

I made it from scratch without Express or any frameworks because:

- I’m a frontend/interaction dev and wanted to learn how to build an API from the ground up. - Existing APIs didn’t guarantee unique names per color—mine does. - It also supports WebSocket updates, gzip responses, and multiple name sets.

I’ve been collecting color names for over 10 years [1]. With ~30,000 entries, bundling them into every color-related project became excessive. This API keeps things lightweight—for me and hopefully for others too.

GitHub: https://github.com/meodai/color-name-api

Would love feedback on naming logic, accuracy, performance, or backend best practices I might’ve missed.

[1] Large Color Name List: https://github.com/meodai/color-names [2] XKCD color survey results: https://xkcd.com/color/rgb/

Show context
magic_hamster ◴[] No.44335894[source]
This is nicely done, but can you please explain why you need this? What is the use of the color names when you already know the actual color value and can use it?
replies(3): >>44335939 #>>44336037 #>>44336101 #
chownie ◴[] No.44336101[source]
N=1 but I'm colourblind and frequently I need to talk to someone about a UI colour while not having any idea what the colour is called, this kind of thing is useful for me.
replies(5): >>44336124 #>>44336292 #>>44336317 #>>44336852 #>>44349716 #
pimlottc ◴[] No.44336852[source]
I would also find such a tool useful, but names like “Watermelon Sugar”, “Tidal”, or “Singapore Orchid” don’t really help me at all. Just tell me something like “dark brown”, “pale green”, “hot pink”, “tan”, etc.
replies(2): >>44337898 #>>44338099 #
IshKebab ◴[] No.44337898[source]
Yeah I agree. Maybe useful if it wasn't nonsense paint colour names.
replies(1): >>44338193 #
1. meodai ◴[] No.44338193[source]
The API provides plenty of lists that should fit your less ‘nonsensical’ needs.