{"id":24927079,"url":"https://github.com/ludelafo/panosse","last_synced_at":"2025-04-09T20:41:58.517Z","repository":{"id":83332484,"uuid":"56912600","full_name":"ludelafo/panosse","owner":"ludelafo","description":"panosse is a CLI tool to clean, encode, normalize, and verify your FLAC music library.","archived":false,"fork":false,"pushed_at":"2024-06-17T15:52:47.000Z","size":362,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-23T22:37:33.085Z","etag":null,"topics":["audio","clean","cobra","encode","flac","golang","metaflac","normalize","replaygain","verify","viper"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ludelafo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"COPYING.md","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2016-04-23T09:59:31.000Z","updated_at":"2024-12-26T14:53:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"607e22f0-5a6e-4a44-8350-fe2fe2e7f202","html_url":"https://github.com/ludelafo/panosse","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ludelafo%2Fpanosse","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ludelafo%2Fpanosse/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ludelafo%2Fpanosse/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ludelafo%2Fpanosse/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ludelafo","download_url":"https://codeload.github.com/ludelafo/panosse/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248109935,"owners_count":21049400,"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":["audio","clean","cobra","encode","flac","golang","metaflac","normalize","replaygain","verify","viper"],"created_at":"2025-02-02T12:54:58.463Z","updated_at":"2025-04-09T20:41:58.490Z","avatar_url":"https://github.com/ludelafo.png","language":"Go","readme":"# panosse\n\n[![Latest release](https://img.shields.io/github/v/release/ludelafo/panosse?include_prereleases)](https://github.com/ludelafo/panosse/releases)\n[![License](https://img.shields.io/github/license/ludelafo/panosse)](https://github.com/ludelafo/panosse/blob/main/COPYING.md)\n[![Issues](https://img.shields.io/github/issues/ludelafo/panosse)](https://github.com/ludelafo/panosse/issues)\n[![Pull requests](https://img.shields.io/github/issues-pr/ludelafo/panosse)](https://github.com/ludelafo/panosse/pulls)\n[![Discussions](https://img.shields.io/github/discussions/ludelafo/panosse)](https://github.com/ludelafo/panosse/discussions)\n\n## What is panosse?\n\npanosse is a CLI tool to clean, encode, normalize, and verify your FLAC music\nlibrary.\n\nIt is merely a wrapper around\n[flac](https://xiph.org/flac/documentation_tools_flac.html) and\n[metaflac](https://xiph.org/flac/documentation_tools_metaflac.html) and uses\n[Cobra](https://github.com/spf13/cobra) and\n[Viper](https://github.com/spf13/viper) under the hood.\n\n```text\nUsage:\n  panosse [command]\n\nAvailable Commands:\n  clean       Clean FLAC files from blocks and tags\n  config      Display panosse configuration\n  encode      Encode FLAC files\n  help        Help about any command\n  normalize   Normalize FLAC files with ReplayGain\n  verify      Verify FLAC files\n```\n\n\u003e [!NOTE]\n\u003e\n\u003e This is my first Go project. The code may not be idiomatic. I am open to\n\u003e suggestions and improvements. Criticism is welcome!\n\n## What panosse is not\n\npanosse is not a music player, tag editor, or a music library manager. panosse\nis focused on cleaning, encoding, normalizing, and verifying FLAC files.\n\nOther tools can be used to manage your music library, such as\n[beets](https://beets.io/),\n[MusicBrainz Picard](https://picard.musicbrainz.org/), or\n[foobar2000](https://www.foobar2000.org/).\n\nAs already mentioned, panosse is only a wrapper around flac and metaflac. It\ndoes not provide much more functionality. It was developed to automate and set\nsane defaults for my music library maintenance.\n\npanosse tries to stay close to the UNIX philosophy of doing one thing and doing\nit well. For example, panosse only proccesses one file at a time (except for\nnormalization), so you can easily parallelize the process using `find` and\n`xargs` or similar tools.\n\n## Usage\n\npanosse can be used as a standalone binary or with Docker.\n\nFor detailed information, see the dedicated [Usage](./docs/01_USAGE.md)\ndocumentation.\n\n## Commands and flags\n\nEvery panosse's commands have a `help` command to describe the command's usage.\n\nYou can use `panosse [command] --help` or `panosse help [command]` to display\nthe help.\n\nFor detailed information, see the dedicated\n[Commands and flags](./docs/02_COMMANDS_AND_FLAGS.md) documentation.\n\n## Configuration\n\nConfiguration can be set using environment variables, flags or a configuration\nfile.\n\nThe order of precedence is:\n\n1. Flags\n2. Environment variables\n3. Configuration file\n\nDisplay the current configuration with `panosse config`.\n\nFor a commented version of the example file, check the\n[`config.yaml`](./config.yaml) file.\n\nFor detailed information, see the dedicated\n[Configuration](./docs/03_CONFIGURATION.md) documentation.\n\n## Development\n\nTo build panosse, [Go](https://go.dev/) must be installed and configured .\n\nOnce Go is installed, build panosse with the following command:\n\n```sh\n# Build panosse\ngo build\n```\n\nOnce panosse is built, run it with the following command:\n\n```sh\n# Run panosse\n./panosse\n```\n\n## What does panosse mean?\n\npanosse (`/pa.nɔs/`) is a Swiss-French word meaning mop. The idea is that a mop\ncleans a floor, panosse cleans FLAC files.\n\n## Contributing\n\nIf you have interested in contributing to panosse, check the\n[Contributing](https://github.com/ludelafo/panosse/blob/main/CONTRIBUTING.md)\nguide.\n\nThank you in advance!\n\n## License\n\npanosse is licensed under the\n[GNU Affero General Public License (GNU AGPL-3.0)](https://github.com/ludelafo/panosse/blob/main/LICENCE.md).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fludelafo%2Fpanosse","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fludelafo%2Fpanosse","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fludelafo%2Fpanosse/lists"}