{"id":22503308,"url":"https://github.com/danihek/hellwal","last_synced_at":"2025-05-16T14:07:07.138Z","repository":{"id":263903119,"uuid":"891221277","full_name":"danihek/hellwal","owner":"danihek","description":"Pywal-like color palette generator, but faster and in C","archived":false,"fork":false,"pushed_at":"2025-05-09T15:37:41.000Z","size":609,"stargazers_count":397,"open_issues_count":5,"forks_count":10,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-05-09T16:43:25.635Z","etag":null,"topics":["c","color-palette","colors","colorschemes","generator","hell","hellwal","idkk","rice","templates","themes","wal","wallpaper"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/danihek.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,"zenodo":null}},"created_at":"2024-11-20T00:11:25.000Z","updated_at":"2025-05-09T16:41:48.000Z","dependencies_parsed_at":"2024-11-20T23:19:32.985Z","dependency_job_id":"3cc4dcb0-ff31-473e-8bad-d1eec34e2f85","html_url":"https://github.com/danihek/hellwal","commit_stats":null,"previous_names":["danihek/hellwal"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danihek%2Fhellwal","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danihek%2Fhellwal/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danihek%2Fhellwal/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danihek%2Fhellwal/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danihek","download_url":"https://codeload.github.com/danihek/hellwal/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253505165,"owners_count":21918915,"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","color-palette","colors","colorschemes","generator","hell","hellwal","idkk","rice","templates","themes","wal","wallpaper"],"created_at":"2024-12-06T23:31:08.381Z","updated_at":"2025-05-16T14:07:07.132Z","avatar_url":"https://github.com/danihek.png","language":"C++","funding_links":[],"categories":["C++"],"sub_categories":[],"readme":"# Hellwal - Fast, Extensible Color Palette Generator\n\n\u003cp align=\"center\"\u003e\n    \u003cimg align=\"center\" src=\"https://raw.githubusercontent.com/danihek/trashcan/refs/heads/main/output.gif\" alt=\"Preview\" width=\"500\"\u003e\n\u003c/p\u003e\n\n### Star History\n\n\u003cdetails\u003e\n  \u003csummary\u003eClick to expand star history\u003c/summary\u003e\n    \u003cp align=\"right\"\u003e\n      \u003cimg\n        alt=\"Star History Chart\"\n        src=\"https://api.star-history.com/svg?repos=danihek/hellwal\u0026type=Date\u0026theme=dark\"\n      \u003e\n    \u003c/p\u003e\n\u003c/details\u003e\n\n## Installation\n\n1. **Archlinux**:\n\n```sh\nyay -S hellwal\n```\n\n2. **Mac/Linux via Homebrew**:\n\n```sh\nbrew install hellwal\n```\n\n3. **NixOS**, nixpkgs **unstable**:\n\n```nix\nenvironment.systemPackages = [\n  pkgs.hellwal\n];\n```\n\n## Building\n\nClone git repo, run make command and you are ready to go! - you just need C compiler and gnumake!\n\n```sh\ngit clone https://github.com/danihek/hellwal \u0026\u0026 cd hellwal \u0026\u0026 make\n```\n\n## How to use?\n\nRun this with your wallpaper image:\n\n```sh\nhellwal -i [image]\n```\n\nYou can also randomly pick image from given directory like this:\n\n```sh\nhellwal -i \u003cfolder\u003e --random\n```\n\nGenerated, templates are saved in ``~/.cache/hellwal/`` directory.\n\n## Templates\n**[INFO]** - if you got hellwal from **AUR**, examples of default templates are stored in `/usr/share/docs/`\n\nLook up for templating examples in [templates folder](./templates), they look more-less like this:\n\n```sh\n# Main\nbackground='%%background%%'\nforeground='%%foreground%%'\n\n# Path\nwallpaper_path='%%wallpaper%%'\n\n# Colors\ncolor0='%%color0.hex%%'\ncolor1='%%color1.hex%%'\n\n# ... and so on and so fourth.\n\ncolor15='%%color15.hex%%'\n\n\n# RGB\nbackgroundRGB='%%background.rgb%%'\nforegroundRGB='%%foreground.rgb%%'\n\ncolor15butRGB='%%color15.rgb%%'\n\n```\n\nYou can get any generated color between 0-15 values.\nBy writing '.' after keyword you can specify type: hex or rgb. If you havent specify this output of template will be in hex.\n\n### Available color template formats:\n\n| Type | Input      | Output  |\n|------|------------|---------|\n| hex  | color0.hex | 000000  |\n| rgb  | color0.rgb | 0, 0, 0 |\n\n### Addtional variables accepted by templates\n\nAlongside with colors you can specify some variables to make them more suitable for your needs.\nFor now these variables are available:\n\n| Variable |  Description            | Usage                        |\n|----------|-------------------------|------------------------------|\n| alpha    |  Set transparency value | `%% color1.hex alpha=0.5 %%` |\n\n## JSON\n\nYou can use ``--json``argument to suppress any other output and write colors to ``stdout`` in json format. It's easy to do something with it with ``jq`` later. For example:\n\n```sh\nhellwal -i [wallpaper] --json | jq '.'\n```\n\n## Themes\n\nYou can set your own theme, re-run it anytime and apply to your config or other programs!\nIt can be previously generated palette from image, gruvbox, tokyonight or anything you want!\nFor example gruvbox theme:\n\n```sh\n%% color0  = #282828 %%\n%% color1  = #cc241d %%\n%% color2  = #98971a %%\n%% color3  = #d79921 %%\n%% color4  = #458588 %%\n%% color5  = #b16286 %%\n%% color6  = #689d6a %%\n%% color7  = #a89984 %%\n%% color8  = #928374 %%\n%% color9  = #fb4934 %%\n%% color10 = #b8bb26 %%\n%% color11 = #fabd2f %%\n%% color12 = #83a598 %%\n%% color13 = #d3869b %%\n%% color14 = #8ec07c %%\n%% color15 = #ebdbb2 %%\n```\n\nSave text above as file or take from this repo [gruvbox](./themes/gruvbox.hellwal) and just run hellwal:\n\n```sh\nhellwal --theme ./themes/gruvbox.hellwal\n```\n\nI recommend to put all themes to ``~/.config/hellwal/themes folder``, because from there you can just provide theme name, and it will pick it up automatically, without specifying path. Of course if you want, you can also set different theme-folder path. For example:\n\n```sh\nhellwal -t gruvbox.hellwal --theme-folder ~/dotfiles/configs/hellwal/themes\n```\n\n## NEON Mode\n\nNeon mode boosts colors to make them look more neon-like, sometimes it's pain in the EYE, but usually it looks better. Turned **off** by default.\n\n```sh\nhellwal -i [wallpaper] --neon-mode\n```\n\n## Modes\n\nYou can select ``-d`` and ``--dark`` or ``-l`` and ``--light`` mode on every given image, theme etc, no matter if it's generated from image or from theme file. Also there is ``--color`` mode.\n\n### Dark mode (on by default)\n\n```sh\nhellwal -i [wallpaper] --dark\n```\n\n### Light mode\n\n```sh\nhellwal -i [wallpaper] --light\n```\n\n### color mode (crazyy one)\n\n```sh\nhellwal -i [wallpaper] --color\n```\n\nThe best thing about it is that you are able to combine all of them together. Usually it's not a good idea, but sometimes you can achieve some crazy combination of colors!\n\n```sh\nhellwal -i [wallpaper] --color --light --dark\n```\n\n---\n\nAlso you have couple of cool arguments to manipulate how colors will be computed:\n\n- you can make all colors in palette darker by specifying ``--dark-offset`` from 0-1:\n\n```sh\nhellwal -i [wallpaper] --light --dark-offset 0.5\n```\n\n- same with ``--bright-offset``:\n\n```sh\nhellwal -i [wallpaper] --bright-offset 0.5\n```\n\n- invert colors  ``--invert``:\n\n```sh\nhellwal -i [wallpaper] --light --invert\n```\n\n- specify gray scale, if you want monochromatic colors ``--gray-scale``:\n\n```sh\nhellwal -i [wallpaper] --color --gray-scale 0.8\n```\n\n## Scripts\n\nWith ``--script`` or ``-s`` you can run script(or any shell command) after hellwal.\n**Note**: it will only run if hellwal will not encounter any errors.\n\n### On a side note:\n\nIf you want your new terminals to open with previusly generated or specified color palette, add this templates to your ``~/.config/hellwal/templates/`` folder:\n\n- variables.sh\n- terminal.sh\n\nthen in ``.bash.rc`` add following lines:\n\n```sh\nsource ~/.cache/hellwal/variables.sh\nsh ~/.cache/hellwal/terminal.sh\n```\n\n### Alternatively if you use fish add these to fish config:\n\n```sh\nsource ~/.cache/hellwal/variablesfish.fish\nfish ~/.cache/hellwal/terminal.sh\n```\n\n# Showcase\n![showcase2](https://github.com/user-attachments/assets/ddf2a55e-0fbb-4661-827a-6b124f1dacdb)\n\n# Special thanks:\n- [dylanaraps](https://github.com/dylanaraps) - for [https://github.com/dylanaraps/pywal](pywal) and other amazing stuff he created.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanihek%2Fhellwal","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanihek%2Fhellwal","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanihek%2Fhellwal/lists"}