Pika
An open-source colour picker app for macOS
Install / Use
/learn @superhighfives/PikaREADME
Pika
Pika (pronounced pi·kuh, like picker) is an easy to use, open-source, native colour picker for macOS. Pika makes it easy to quickly find colours onscreen, in the format you need, so you can get on with being a speedy, successful designer.
<img width="768" alt="Screenshots of the dark and light Pika interface" src="https://superhighfives.com/assets/pika-readme%402x.png">Download
Download the latest version of the app at:<br /> superhighfives.com/pika
Or install with Homebrew:
brew install --cask pika
Features
- Quick color picking from anywhere on screen
- Multiple color format support (Hex, RGB, HSB, HSL, LAB, OpenGL)
- Keyboard shortcuts for efficiency
- URL scheme support for automation
- System color picker integration
- Undo/redo functionality
- Color swapping capabilities
Learn More
Learn more about the motivations behind the project, and the product vision.
<a href="https://www.producthunt.com/golden-kitty-awards/hall-of-fame?year=2022"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://user-images.githubusercontent.com/449385/215260970-a3c37e86-7d2c-458e-84f8-32a6e24b0cc7.png"> <img width="250" alt="Golden Kitty Awards 2022 Finalist" src="https://user-images.githubusercontent.com/449385/215260971-e09cdbea-588a-45a9-955c-cbfd1822c2b9.png"> </picture> </a>Requirements
OS
- macOS Sequoia (Version 14) and newer
Keyboard Shortcuts
As of version 0.0.18, Pika supports the following keyboard shortcuts:
Pick colors
- <kbd>⌘ D</kbd>: Pick foreground
- <kbd>⌘ ⇧ D</kbd>: Pick background
Copy colors
- <kbd>⌘ C</kbd>: Copy foreground
- <kbd>⌘ ⇧ C</kbd>: Copy background
Use the system colour picker
- <kbd>⌘ S</kbd>: Use for foreground
- <kbd>⌘ ⇧ S</kbd>: Use for background
Change formats
- <kbd>⌘ 1</kbd>: Format Hex
- <kbd>⌘ 2</kbd>: Format RGB
- <kbd>⌘ 3</kbd>: Format HSB
- <kbd>⌘ 4</kbd>: Format HSL
- <kbd>⌘ 5</kbd>: Format LAB
- <kbd>⌘ 6</kbd>: Format OpenGL
- <kbd>⌘ 7</kbd>: Format OKLCH
Change colors
- <kbd>⌘ Z</kbd>: Undo last pick
- <kbd>⌘ ⇧ Z</kbd>: Redo last pick
- <kbd>X</kbd>: Swap colors
URL Triggers
As of version 0.0.17, you can trigger Pika using the pika:// URL scheme.
You can also change the format by appending it to the URL when picking or copying. For example, pika://pick/foreground/hex (or rgb, hsl, hsb).
Pick colors
- Pick foreground:
pika://pick/foreground
- Pick background:
pika://pick/background
- Pick colour with specific format:
pika://pick/foreground/hex(or hex, rgb, hsb, hsl, lab, opengl, oklch)pika://pick/background/hex(or hex, rgb, hsb, hsl, lab, opengl, oklch)
- Use the system color picker for foreground:
pika://system/foreground
- Use the system color picker for background:
pika://system/background
Copy colors
- Copy foreground:
pika://copy/foreground
- Copy background:
pika://copy/background
- Copy colour with specific format:
pika://copy/foreground/hex(or hex, rgb, hsb, hsl, lab, opengl, oklch)pika://copy/background/hex(or hex, rgb, hsb, hsl, lab, opengl, oklch)
- Copy text
pika://copy/text
- Copy JSON
pika://copy/json
Change formats
- Format Hex
pika://format/hex
- Format RGB
pika://format/rgb
- Format HSB
pika://format/hsb
- Format HSL
pika://format/hsl
- Format LAB
pika://format/lab
- Format OpenGL
pika://format/opengl
- Format OKLCH
pika://format/oklch
Change colors
- Undo last pick
pika://undo
- Redo last pick
pika://redo
- Swap colors
pika://swap
Development
Getting Started with Contributing
Make sure you have mint installed, and bootstrap the toolchain dependencies:
brew install mint
mint bootstrap
Open Pika.xcodeproj and to run the project. Sparkle requires that you have a team and signing profile set for the project, or it will crash with a dyld / signal SIGABRT error.
If you run into any problems, please detail them in an issue.
Contributions
Any and all contributions are welcomed. Check for open issues, look through the project roadmap, help translating the app and submit a PR.
Dependencies and Thanks
- Sparkle software update framework
- Defaults
- Keyboard Shortcuts
- Launch At Login
- NSWindow+Fade
- Sweetercolor colour extension library for Swift (slightly tweaked for NSColor, rather than UIColor)
- Color names
- Metal shader code in part thanks to Smiley
And a huge thank you to Stormnoid for the incredible 2D vector field visualisation on Shadertoy.
