{"id":23853586,"url":"https://github.com/roboyoshi/hek","last_synced_at":"2025-07-12T13:34:52.741Z","repository":{"id":270644362,"uuid":"195890956","full_name":"roboyoshi/hek","owner":"roboyoshi","description":"Check your music collection given a set of rules","archived":false,"fork":false,"pushed_at":"2019-07-08T15:14:12.000Z","size":58,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-05T06:27:13.648Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/roboyoshi.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":"2019-07-08T21:52:51.000Z","updated_at":"2021-03-12T15:10:32.000Z","dependencies_parsed_at":"2025-01-02T05:07:25.766Z","dependency_job_id":"e46be470-1fe7-4fe5-99e9-dba6b16cdaa0","html_url":"https://github.com/roboyoshi/hek","commit_stats":null,"previous_names":["roboyoshi/hek"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/roboyoshi/hek","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roboyoshi%2Fhek","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roboyoshi%2Fhek/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roboyoshi%2Fhek/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roboyoshi%2Fhek/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/roboyoshi","download_url":"https://codeload.github.com/roboyoshi/hek/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roboyoshi%2Fhek/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265002556,"owners_count":23696076,"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":[],"created_at":"2025-01-02T23:18:06.206Z","updated_at":"2025-07-12T13:34:52.721Z","avatar_url":"https://github.com/roboyoshi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# hek\n\nPython script that checks your music collection given a set of rules\n\n- Does not modify files\n- Reads FLAC and mp3 tags\n- Checks capitalization, filetypes, missing tags\n- Manage exceptions\n\n![hek](demo.gif)\n\n## Depends on\n- `python-mutagen`\n\n## Installation\n```bash\n$ git clone https://github.com/dunon/hek.git\n$ cd hek\n$ sudo cp hek.py /usr/bin/hek\n```\n### Arch Linux\nAvailable on the [AUR](https://aur.archlinux.org/packages/hek/)\n\n## Usage\n```bash\n$ hek ~/Music\n$ hek .                 # run on current directory\n$ hek -v                # display version\n$ hek ~/Music --files    # check files only\n$ hek ~/Music --tags    # check tags only\n```\n\n## Configuration\nSee [example_config](https://github.com/dunon/hek/tree/master/example_config)\n\n### Rules\nStored in `~/.config/hek/rules`\n- Capitalize after these symbols `capitalize_after`\n- Only allow these filetypes `filetypes`\n- How directories must end `dir_ends`\n- Do not allow certain symbols or sequences in files `sequences_files`\n- Do not allow certain symbols or sequences in tags `sequences_tags`\n\n### Exceptions\nStored in `~/.config/hek`\n- Some words are not capitalized `ignore_case`\n- Do not warn about lower case after ' `ignore_quote_case`\n- Allow symbols or sequences as exceptions `ignore_contains`\n- Do no warn about missing year `ignore_year`\n- Do not warn about different albumartist/artist `ignore_albumartist`\n- Ignore how directory ends `ignore_dir_ends`\n\n## License\nhek is released under the GNU GPLv3 license. See `LICENSE` for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froboyoshi%2Fhek","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froboyoshi%2Fhek","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froboyoshi%2Fhek/lists"}