{"id":17948620,"url":"https://github.com/getjared/muse","last_synced_at":"2025-06-14T08:33:40.744Z","repository":{"id":259265411,"uuid":"877445653","full_name":"getjared/muse","owner":"getjared","description":"cli image color manipulation","archived":false,"fork":false,"pushed_at":"2024-11-18T07:25:45.000Z","size":187,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-04T05:41:46.071Z","etag":null,"topics":["c","cli","hacktoberfest","image-manipulation"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/getjared.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-23T16:58:20.000Z","updated_at":"2025-03-14T19:17:06.000Z","dependencies_parsed_at":"2024-12-16T17:45:24.950Z","dependency_job_id":"82b029cf-d401-4b5d-adfd-f49df082569c","html_url":"https://github.com/getjared/muse","commit_stats":null,"previous_names":["getjared/muse"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/getjared/muse","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getjared%2Fmuse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getjared%2Fmuse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getjared%2Fmuse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getjared%2Fmuse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/getjared","download_url":"https://codeload.github.com/getjared/muse/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/getjared%2Fmuse/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259786756,"owners_count":22911046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","cli","hacktoberfest","image-manipulation"],"created_at":"2024-10-29T09:07:48.831Z","updated_at":"2025-06-14T08:33:40.722Z","avatar_url":"https://github.com/getjared.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n## ｍｕｓｅ\n**a minimalist image processor**\n\n[![license: unlicense](https://img.shields.io/badge/license-unlicense-pink.svg)](http://unlicense.org/)\n[![made with c](https://img.shields.io/badge/made%20with-c-purple.svg)](https://en.wikipedia.org/wiki/C_(programming_language))\n\n\u003c/div\u003e\n\n## overview\nmuse is a high-performance image manipulation tool, it provides various dithering algorithms, effects, and color grading capabilities while maintaining minimal dependencies and blazing-fast execution.\n\n## before \u0026 after\nusing the catppuccin palette:\n| before | after |\n|--------|-------|\n| ![before](https://i.imgur.com/fkzmPtQ.jpg) | ![after](https://i.imgur.com/tkTjHtR.png) |\n\n\n## key features\n- advanced dithering algorithms (floyd-steinberg, bayer, ordered, jjn, sierra, atkinson, stucki)\n- lospec.com palette compatibility\n- vintage film emulation:\n  - super 8 grain effect\n  - super panavision 70 vignetting\n- comprehensive color grading\n- palette extraction from images\n- lightweight implementation in pure c\n\n## installation\n\n### prerequisites\n- c compiler (gcc/clang)\n- make\n- git\n\n### build from source\n```bash\ngit clone https://github.com/getjared/muse.git\ncd muse\nmake\nsudo make install\n```\n\n## usage\n\n### basic operations\n```bash\n# standard conversion with floyd-steinberg dithering\nmuse input.jpg output.png catppuccin.txt\n\n# bayer dithering\nmuse input.jpg output.png nord.txt bayer\n\n# ordered dithering\nmuse input.jpg output.png spooky-13.txt ordered\n\n# no dithering\nmuse input.jpg output.png croma16.txt nodither\n\n# extract palette\nmuse input.jpg -E palette.txt\n```\n\n### effects\n\n#### blur effect\n```bash\nmuse -b 3 input.jpg output.png nord.txt\n```\n\n#### film effects\n```bash\n# super 8 film grain\nmuse -s 3 input.png output.png croma16.txt\n\n# super panavision 70\nmuse -p 2 input.png output.png nord.txt\n\n# combined effects\nmuse -b 3 -s 2 -p 4 input.png output.png spooky-13.txt\n```\n\n### color adjustments\n\n| parameter | flag | range | default |\n|-----------|------|-------|---------|\n| brightness | `-B` | -255.0 to 255.0 | 0.0 |\n| contrast | `-C` | 0.0 to 5.0 | 1.0 |\n| saturation | `-S` | 0.0 to 5.0 | 1.0 |\n\n```bash\n# example with all adjustments\nmuse -B 10.0 -C 1.2 -S 1.1 input.png output.png nord.txt\n```\n\n## dithering algorithms\n\n| algorithm | description | best for |\n|-----------|-------------|-----------|\n| `floyd` | floyd-steinberg (default) | general purpose, smooth gradients |\n| `bayer` | ordered matrix pattern | retro graphics, consistent texture |\n| `ordered` | 8x8 threshold matrix | uniform pattern distribution |\n| `jjn` | jarvis, judice, and ninke | enhanced detail preservation |\n| `sierra` | sierra dithering | balanced error diffusion |\n| `stucki` | stucki dithering | high-quality error diffusion |\n| `atkinson` | atkinson dithering | classic mac-style dithering |\n| `nodither` | direct color mapping | sharp color boundaries |\n\n## palette system\n\n### location\npalettes are stored in `/usr/local/share/muse/palettes`\n\n### custom palette format\n```text\n;paint.net palette file\n;palette name: custom theme\n;colors: 16\nff000000    ; black\nff1a1b26    ; background\nff415166    ; muted blue\nffff9b82    ; coral\n[...additional colors...]\n```\n\n### palette extraction\n```bash\n# extract and display\nmuse input.jpg -E\n\n# extract to file\nmuse input.jpg -E custom.txt\n```\n\n## supported formats\n\n### input\n- jpg/jpeg\n- png\n- bmp\n- tga\n\n### output\n- png (lossless)\n- jpg (lossy, 95% quality)\n- bmp (uncompressed)\n- tga (lossless)\n\n## acknowledgments\n- [stb_image](https://github.com/nothings/stb/blob/master/stb_image.h) - image loading\n- [stb_image_write](https://github.com/nothings/stb/blob/master/stb_image_write.h) - image saving\n\n\u003cdiv align=\"center\"\u003e\n\n```ascii\n╭──────────────────────╮\n│ crafted with care    │\n│ by jared             │\n╰──────────────────────╯\n```\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetjared%2Fmuse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgetjared%2Fmuse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgetjared%2Fmuse/lists"}