Color Keeper is a local-first Electron app for building and organizing color palettes. Libraries are stored as plain JSON files in a user-selected folder so they can be synced with Dropbox or similar.
npm installnpm run devnpm run buildWhen you choose a library folder, the app creates:
index.json — Library index, tags, folders, and recent list.palettes/<palette-id>.json — Each palette stored as its own file.{
"version": 1,
"updatedAt": "2026-01-22T00:00:00.000Z",
"palettes": [
{
"id": "...",
"name": "...",
"colorCount": 4,
"preview": ["#FF6B6B", "#FFD93D"],
"tags": ["Warm"],
"folderId": null,
"isFavorite": false,
"updatedAt": "..."
}
],
"tags": [{ "id": "Warm", "name": "Warm", "createdAt": "..." }],
"folders": [
{ "id": "client-work", "name": "Client Work", "createdAt": "..." }
],
"recentPaletteIds": ["..."]
}
{
"id": "...",
"name": "...",
"colors": ["#FF6B6B", "#FFD93D"],
"tags": ["Warm"],
"folderId": null,
"notes": "...",
"isFavorite": false,
"createdAt": "...",
"updatedAt": "...",
"source": { "type": "manual" }
}
Color Keeper supports JSON and CSV imports.
{ "palettes": [...] }.name, colors, tags, notes, folder. Use ; to separate colors and tags.Example CSV:
name,colors,tags,notes,folder
Sunset,#FF6B6B;#FFD93D;#6BCB77,Warm;Brand,Marketing palette,Brand work
.sketchpaletteExports are best-effort formats and may require adjustments for production use or strict tooling. Always review the output before shipping.
Pantone matches are offline approximations using CIE distance. They are for reference only and are not sourced from licensed Pantone datasets.
AI features are powered by the GitHub Copilot SDK and are opt-in under “Enable AI Mode.”
copilot auth login.If AI is not authenticated, the app will show a reminder and let you copy the login command.