{"id":13595891,"url":"https://github.com/ciromattia/kcc","last_synced_at":"2026-05-03T00:06:30.562Z","repository":{"id":5726583,"uuid":"6938242","full_name":"ciromattia/kcc","owner":"ciromattia","description":"KCC (a.k.a. Kindle Comic Converter) is a comic and manga converter for ebook readers.","archived":false,"fork":false,"pushed_at":"2026-04-16T20:31:00.000Z","size":30355,"stargazers_count":4993,"open_issues_count":62,"forks_count":326,"subscribers_count":43,"default_branch":"master","last_synced_at":"2026-04-16T22:26:05.546Z","etag":null,"topics":["azw3","cbz","comics","eink","epub","kindle","kobo","koreader","manga","pdf","remarkable-tablet","webtoon","webtoons"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ciromattia.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.txt","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"eink_dude","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":null}},"created_at":"2012-11-30T11:50:29.000Z","updated_at":"2026-04-16T21:13:09.000Z","dependencies_parsed_at":"2026-04-07T06:06:29.910Z","dependency_job_id":null,"html_url":"https://github.com/ciromattia/kcc","commit_stats":{"total_commits":968,"total_committers":33,"mean_commits":"29.333333333333332","dds":0.5402892561983471,"last_synced_commit":"41d24e77e19514ced661a1b9df4055b7c931c07b"},"previous_names":[],"tags_count":117,"template":false,"template_full_name":null,"purl":"pkg:github/ciromattia/kcc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ciromattia%2Fkcc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ciromattia%2Fkcc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ciromattia%2Fkcc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ciromattia%2Fkcc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ciromattia","download_url":"https://codeload.github.com/ciromattia/kcc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ciromattia%2Fkcc/sbom","scorecard":{"id":283264,"data":{"date":"2025-08-11","repo":{"name":"github.com/ciromattia/kcc","commit":"d2828877afe9fdba74b818ad1ab78287912c75ed"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.3,"checks":[{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":1,"reason":"Found 4/29 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"30 commit(s) and 23 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql-analysis.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql-analysis.yml:29","Warn: no topLevel permission defined: .github/workflows/codeql-analysis.yml:1","Warn: no topLevel permission defined: .github/workflows/docker-base-publish.yml:1","Warn: no topLevel permission defined: .github/workflows/docker-publish.yml:1","Warn: no topLevel permission defined: .github/workflows/package-linux.yml:1","Warn: no topLevel permission defined: .github/workflows/package-macos.yml:1","Warn: no topLevel permission defined: .github/workflows/package-osx-legacy.yml:1","Warn: no topLevel permission defined: .github/workflows/package-windows-with-docker.yml:1","Warn: no topLevel permission defined: .github/workflows/package-windows.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.txt:0","Info: FSF or OSI recognized license: ISC License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v9.0.0 not signed: https://api.github.com/repos/ciromattia/kcc/releases/233805194","Warn: release artifact v8.0.4 not signed: https://api.github.com/repos/ciromattia/kcc/releases/231530606","Warn: release artifact v8.0.2 not signed: https://api.github.com/repos/ciromattia/kcc/releases/230197801","Warn: release artifact v7.6.0 not signed: https://api.github.com/repos/ciromattia/kcc/releases/228611403","Warn: release artifact v7.5.1 not signed: https://api.github.com/repos/ciromattia/kcc/releases/225970850","Warn: release artifact v9.0.0 does not have provenance: https://api.github.com/repos/ciromattia/kcc/releases/233805194","Warn: release artifact v8.0.4 does not have provenance: https://api.github.com/repos/ciromattia/kcc/releases/231530606","Warn: release artifact v8.0.2 does not have provenance: https://api.github.com/repos/ciromattia/kcc/releases/230197801","Warn: release artifact v7.6.0 does not have provenance: https://api.github.com/repos/ciromattia/kcc/releases/228611403","Warn: release artifact v7.5.1 does not have provenance: https://api.github.com/repos/ciromattia/kcc/releases/225970850"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'","Warn: branch protection not enabled for branch '7z-kindlegen'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/codeql-analysis.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/codeql-analysis.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/codeql-analysis.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/codeql-analysis.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker-base-publish.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/docker-base-publish.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker-publish.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/docker-publish.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-linux.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-linux.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-linux.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-linux.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-linux.yml:62: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-linux.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-linux.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-linux.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-macos.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-macos.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-macos.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-macos.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-macos.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-macos.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-macos.yml:81: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-macos.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-macos.yml:86: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-macos.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-osx-legacy.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-osx-legacy.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-osx-legacy.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-osx-legacy.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-osx-legacy.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-osx-legacy.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-osx-legacy.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-osx-legacy.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-windows-with-docker.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows-with-docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-windows-with-docker.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows-with-docker.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-windows-with-docker.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows-with-docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-windows-with-docker.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows-with-docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-windows-with-docker.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows-with-docker.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-windows.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-windows.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/package-windows.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-windows.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/package-windows.yml:62: update your workflow using https://app.stepsecurity.io/secureworkflow/ciromattia/kcc/package-windows.yml/master?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:2: pin your Docker image by updating ghcr.io/ciromattia/kcc:docker-base-20241116 to ghcr.io/ciromattia/kcc:docker-base-20241116@sha256:d90b5944361aac3426d63b3cdf8b9b91312e8778a60ca57fdb3a491a44dfa507","Warn: containerImage not pinned by hash: Dockerfile-base:1","Warn: containerImage not pinned by hash: Dockerfile-base:19","Warn: containerImage not pinned by hash: Dockerfile-base:76","Warn: containerImage not pinned by hash: Dockerfile-base:133","Warn: containerImage not pinned by hash: Dockerfile-base:136","Warn: containerImage not pinned by hash: Dockerfile-base:139","Warn: containerImage not pinned by hash: Dockerfile-base:144","Warn: pipCommand not pinned by hash: Dockerfile-base:10-14","Warn: pipCommand not pinned by hash: Dockerfile-base:10-14","Warn: pipCommand not pinned by hash: Dockerfile-base:34-71","Warn: pipCommand not pinned by hash: Dockerfile-base:34-71","Warn: pipCommand not pinned by hash: Dockerfile-base:91-129","Warn: pipCommand not pinned by hash: Dockerfile-base:91-129","Warn: pipCommand not pinned by hash: .github/workflows/package-linux.yml:38","Warn: pipCommand not pinned by hash: .github/workflows/package-linux.yml:39","Warn: pipCommand not pinned by hash: .github/workflows/package-macos.yml:39","Warn: pipCommand not pinned by hash: .github/workflows/package-macos.yml:40","Warn: npmCommand not pinned by hash: .github/workflows/package-macos.yml:76","Warn: pipCommand not pinned by hash: .github/workflows/package-osx-legacy.yml:43","Warn: pipCommand not pinned by hash: .github/workflows/package-osx-legacy.yml:44","Warn: npmCommand not pinned by hash: .github/workflows/package-osx-legacy.yml:50","Info:   0 out of  19 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  10 third-party GitHubAction dependencies pinned","Info:   0 out of   8 containerImage dependencies pinned","Info:   0 out of  12 pipCommand dependencies pinned","Info:   0 out of   2 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":8,"reason":"2 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":7,"reason":"SAST tool detected but not run on all commits","details":["Info: SAST configuration detected: CodeQL","Warn: 0 commits out of 17 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T16:30:41.685Z","repository_id":5726583,"created_at":"2025-08-17T16:30:41.685Z","updated_at":"2025-08-17T16:30:41.685Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32201874,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-23T20:19:26.138Z","status":"ssl_error","status_checked_at":"2026-04-23T20:19:23.520Z","response_time":53,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["azw3","cbz","comics","eink","epub","kindle","kobo","koreader","manga","pdf","remarkable-tablet","webtoon","webtoons"],"created_at":"2024-08-01T16:02:00.582Z","updated_at":"2026-05-03T00:06:30.554Z","avatar_url":"https://github.com/ciromattia.png","language":"Python","funding_links":["https://ko-fi.com/eink_dude","https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=D8WNYNPBGDAS2","https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=YTTJ4LK2JDHPS","https://ko-fi.com/Q5Q41BW8HS"],"categories":["Python","Ebook Tools"],"sub_categories":["Generator"],"readme":"\u003cimg src=\"header.jpg\" alt=\"Header Image\" width=\"400\"\u003e\n\n# KCC\n\n[![GitHub release](https://img.shields.io/github/release/ciromattia/kcc.svg)](https://github.com/ciromattia/kcc/releases)\n[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/ciromattia/kcc/docker-publish.yml?label=docker%20build)](https://github.com/ciromattia/kcc/pkgs/container/kcc)\n[![Github All Releases](https://img.shields.io/github/downloads/ciromattia/kcc/total.svg)](https://github.com/ciromattia/kcc/releases)\n\n\n**Kindle Comic Converter** optimizes black \u0026 white (or color) comics and manga for E-ink ereaders \nlike Kindle, Kobo, ReMarkable, and more.\nPages display in fullscreen without margins, \nwith proper fixed layout support.\nSupported input formats include JPG/PNG image files in folders, archives like CBZ, or PDFs.\nSupported output formats include MOBI/AZW3, EPUB, KEPUB, CBZ, and PDF.\nKCC runs on Windows, macOS, and Linux.\n\nJust drop your input files into the KCC window, hit convert, and USB drop the output files onto your device's `documents` folder!\n\nhttps://github.com/user-attachments/assets/da73d625-e082-482d-91a4-ae4765e96fd7\n\n**WARNING**: Kindle Scribe 2025 support may not be possible. Does not work well currently.\n\n**NEW**: PDF output is now supported for direct conversion to reMarkable devices! \nWhen using a reMarkable profile (Rmk1, Rmk2, RmkPP), the format automatically defaults to PDF \nfor optimal compatibility with your device's native PDF reader.\n\nThe absolute highest quality source files are print quality DRM-free PDFs from Kodansha/[Humble Bundle](https://humblebundleinc.sjv.io/xL6Zv1)/Fanatical,\nwhich can be directly converted by KCC.\n\nIts main feature is various optional image processing steps to look good on eink screens, \nwhich have different requirements than normal LCD screens.\nCombining that with downscaling to your specific device's screen resolution\ncan result in filesize reductions of hundreds of MB per volume with no visible quality loss on eink.\nThis can also improve battery life, page turn speed, and general performance \non underpowered ereaders with small memory and storage capacities.\n\nKCC avoids many common formatting issues (some of which occur [even on the Kindle Store](https://github.com/ciromattia/kcc/wiki/Kindle-Store-bad-formatting)), such as:\n1) faded black levels causing unneccessarily low contrast, which is hard to see and can cause eyestrain.\n2) unneccessary margins at the bottom of the screen\n3) Not utilizing the full 1860x2480 resolution of the 10\" Kindle Scribe\n4) incorrect page turn direction for manga that's read right to left\n5) unaligned two page spreads in landscape, where pages are shifted over by 1\n6) Removing without blur the rainbow effect on color eink Kaleido 3 due to manga screentones\n\nThe GUI looks like this, built in Qt6, with my most commonly used settings:\n\n![image](https://github.com/user-attachments/assets/36ad2131-6677-4559-bd6f-314a90c27218)\n\nSimply drag and drop your files/folders into the KCC window, \nadjust your settings (hover over each option to see details in a tooltip), \nand hit convert to create ereader optimized files.\nYou can change the default output directory by holding `Shift` while clicking the convert button.\nThen just drag and drop the generated output files onto your device's documents folder via USB.\nIf you are on macOS and use a 2022+ Kindle, you may need to use Amazon USB File Manager for Mac.\n\nYouTube tutorial (please subscribe): https://www.youtube.com/watch?v=QQ6zJcMF2Iw\n\nInstallation tutorial: https://www.youtube.com/watch?v=IR2Fhcm9658\n\n### A word of warning\n**KCC** _is not_ [Amazon's Kindle Comic Creator](http://www.amazon.com/gp/feature.html?ie=UTF8\u0026docId=1001103761) nor is in any way endorsed by Amazon.\nAmazon's tool is for comic publishers and involves a lot of manual effort, while **KCC** is for comic/manga readers.\n_KC2_ in no way is a replacement for **KCC** so you can be quite confident we are going to carry on developing our little monster ;-)\n\n### Issues / new features / donations\nIf you have general questions about usage, feedback etc. please [post it here](http://www.mobileread.com/forums/showthread.php?t=207461).\nIf you have some **technical** problems using KCC please [file an issue here](https://github.com/ciromattia/kcc/issues/new).\nIf you can fix an open issue, fork \u0026 make a pull request.\n\nIf you find **KCC** valuable you can consider donating to the authors:\n- Ciro Mattia Gonano (founder, active 2012-2014):\n\n  [![Donate PayPal](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=D8WNYNPBGDAS2)\n\n- Paweł Jastrzębski (active 2013-2019):\n\n  [![Donate PayPal](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=YTTJ4LK2JDHPS)\n  [![Donate Bitcoin](https://img.shields.io/badge/Donate-Bitcoin-green.svg)](https://jastrzeb.ski/donate/)\n\n- Alex Xu (active 2023-Present)\n\n  [![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/Q5Q41BW8HS)\n\n## Commissions\n\nThis section is subject to change:\n\nEmail (for commisions and inquiries): `kindle.comic.converter` gmail\n\n\n## Sponsors\n\n- Free code signing on Windows provided by [SignPath.io](https://about.signpath.io/), certificate by [SignPath Foundation](https://signpath.org/)\n\n## DOWNLOADS\n\n- **https://github.com/ciromattia/kcc/releases**\n\nClick on **Assets** of the latest release.\n\nYou probably want either\n- `KCC_*.*.*.exe` (Windows)\n- `kcc_macos_arm_*.*.*.dmg` (recent Mac with Apple Silicon M1 chip or later)\n- `kcc_macos_i386_*.*.*.dmg` (older Mac with Intel chip macOS 14+)\n\nThere are also legacy macOS 10.14+ and Windows 7 experimental versions available.\n\nThe `c2e` and `c2p` versions are command line tools for power users.\n\nOn macOS, if you get a `can't be opened` error, follow: https://support.apple.com/guide/mac-help/open-a-mac-app-from-an-unknown-developer-mh40616/mac\n\nFor flatpak, Docker, and AppImage versions, refer to the wiki: https://github.com/ciromattia/kcc/wiki/Installation\n\n## FAQ\n- Should I use Calibre?\n  - No. Calibre doesn't properly support fixed layout EPUB/MOBI, so modifying KCC output (even just metadata!) in Calibre can break the formatting.\n    Additionally, it will break page numbers.\n    Viewing KCC output in Calibre will also not work properly.\n    Direct USB dropping is reccomended.\n- Blank pages?\n  - May happen when [using PNG with Kindle Scribe](https://github.com/ciromattia/kcc/issues/665) or [any format with a Kindle Colorsoft](https://github.com/ciromattia/kcc/issues/768). Solve by using JPG with Kindle Scribe or buying a Kobo Colour. Happens more often when turning pages really fast. You can try PDF output.\n    Going back a few pages and exiting and re-entering book should fix it temporarily.\n- What output format should I use?\n  - MOBI for Kindles. CBZ for Kindle DX. CBZ for Koreader. KEPUB for Kobo. PDF for ReMarkable or Kindle Scribe 2025.\n- All options have additional information in tooltips if you hover over the option.\n- To get the converted book onto your Kindle/Kobo, just drag and drop the mobi/kepub into the documents folder on your Kindle/Kobo via USB\n- Kindle panel view not working?\n  - Virtual panel view is enabled in Aa menu on your Kindle, not in KCC as of 7.4\n- Right to left mode not working?\n  - RTL mode only affects splitting order for CBZ output. Your cbz reader itself sets the page turn direction.\n- Colors inverted?\n  - Disable Kindle dark mode\n- Cannot connect Kindle Scribe or 2024+ Kindle to macOS\n  - Use official MTP [Amazon USB File Transfer app](https://www.amazon.com/gp/help/customer/display.html/ref=hp_Connect_USB_MTP?nodeId=TCUBEdEkbIhK07ysFu)\n    (no login required). Works much better than previously recommended Android File Transfer. Cannot run simutaneously with other transfer apps.\n- How to make AZW3 instead of MOBI?\n  - The `.mobi` file generated by KCC is a dual filetype, it's both MOBI and AZW3. The file extension is `.mobi` for compatibility reasons.\n- Huge margins / slow page turns?\n  - You likely modified the file during transfer using a 3rd party app. Try simply dragging and dropping the final mobi/kepub file into the Kindle documents folder via USB.\n\n## PREREQUISITES\n\nYou'll need to install various tools to access important but optional features. Close and re-open KCC to get KCC to detect them.\n\n### KindleGen\n\nOn Windows and macOS, install [Kindle Previewer](https://www.amazon.com/Kindle-Previewer/b?ie=UTF8\u0026node=21381691011) and `kindlegen` will be autodetected from it.\n\nIf you have issues detecting it, get stuck on the MOBI conversion step, or use Linux AppImage or Flatpak, refer to the wiki: https://github.com/ciromattia/kcc/wiki/Installation#kindlegen\n\n### 7-Zip\n\nThis is optional but will make conversions much faster.\n\nThis is required for certain files and advanced features. \n\nKCC will ask you to install if needed.\n\nRefer to the wiki to install: https://github.com/ciromattia/kcc/wiki/Installation#7-zip\n\n## INPUT FORMATS\n**KCC** can understand and convert, at the moment, the following input types:\n- Folders containing: PNG, JPG, GIF or WebP files\n- CBZ, ZIP *(With `7z` executable)*\n- CBR, RAR *(With `7z` executable)*\n- CB7, 7Z *(With `7z` executable)*\n- PDF *(Only extracting JPG images)*\n\n## USAGE\n\nShould be pretty self-explanatory. All options have detailed information in tooltips.\nAfter completed conversion, you should find ready file alongside the original input file (same directory).\n\nPlease check [our wiki](https://github.com/ciromattia/kcc/wiki/) for more details.\n\nCLI version of **KCC** is intended for power users. It allows using options that might not be compatible and decrease the quality of output.\nCLI version has reduced dependencies, on Debian based distributions this commands should install all needed dependencies:\n```\nsudo apt-get install python3 p7zip-full python3-pil python3-psutil python3-slugify\n```\n\n### Profiles:\n\n```\n        'K1': (\"Kindle 1\", (600, 670), Palette4, 1.0),\n        'K2': (\"Kindle 2\", (600, 670), Palette15, 1.0),\n        'K11': (\"Kindle 11\", (1072, 1448), Palette16, 1.0),\n        'K34': (\"Kindle Keyboard/Touch\", (600, 800), Palette16, 1.0),\n        'K57': (\"Kindle 5/7\", (600, 800), Palette16, 1.0),\n        'K810': (\"Kindle 8/10\", (600, 800), Palette16, 1.0),\n        'KDX': (\"Kindle DX/DXG\", (824, 1000), Palette16, 1.0),\n        'KPW': (\"Kindle Paperwhite 1/2\", (758, 1024), Palette16, 1.0),\n        'KV': (\"Kindle Voyage\", (1072, 1448), Palette16, 1.0),\n        'KPW34': (\"Kindle Paperwhite 3/4\", (1072, 1448), Palette16, 1.0),\n        'KPW5': (\"Kindle Paperwhite 5/Signature Edition\", (1236, 1648), Palette16, 1.0),\n        'KPW6': (\"Kindle Paperwhite 6\", (1272, 1696), Palette16, 1.0),\n        'KO': (\"Kindle Oasis 2/3\", (1264, 1680), Palette16, 1.0),\n        'KCS': (\"Kindle Colorsoft\", (1272, 1696), Palette16, 1.0),\n        'KS1860': (\"Kindle 1860\", (1860, 1920), Palette16, 1.0),\n        'KS1920': (\"Kindle 1920\", (1920, 1920), Palette16, 1.0),\n        'KS': (\"Kindle Scribe 1/2\", (1860, 2480), Palette16, 1.0),\n        'KS3': (\"Kindle Scribe 3\", (1986, 2648), Palette16, 1.0),\n        'KSCS': (\"Kindle Scribe Colorsoft\", (1986, 2648), Palette16, 1.0),\n        'KoMT': (\"Kobo Mini/Touch\", (600, 800), Palette16, 1.0),\n        'KoG': (\"Kobo Glo\", (768, 1024), Palette16, 1.0),\n        'KoGHD': (\"Kobo Glo HD\", (1072, 1448), Palette16, 1.0),\n        'KoA': (\"Kobo Aura\", (758, 1024), Palette16, 1.0),\n        'KoAHD': (\"Kobo Aura HD\", (1080, 1440), Palette16, 1.0),\n        'KoAH2O': (\"Kobo Aura H2O\", (1080, 1430), Palette16, 1.0),\n        'KoAO': (\"Kobo Aura ONE\", (1404, 1872), Palette16, 1.0),\n        'KoN': (\"Kobo Nia\", (758, 1024), Palette16, 1.0),\n        'KoC': (\"Kobo Clara HD/Kobo Clara 2E\", (1072, 1448), Palette16, 1.0),\n        'KoCC': (\"Kobo Clara Colour\", (1072, 1448), Palette16, 1.0),\n        'KoL': (\"Kobo Libra H2O/Kobo Libra 2\", (1264, 1680), Palette16, 1.0),\n        'KoLC': (\"Kobo Libra Colour\", (1264, 1680), Palette16, 1.0),\n        'KoF': (\"Kobo Forma\", (1440, 1920), Palette16, 1.0),\n        'KoS': (\"Kobo Sage\", (1440, 1920), Palette16, 1.0),\n        'KoE': (\"Kobo Elipsa\", (1404, 1872), Palette16, 1.0),\n        'Rmk1': (\"reMarkable 1\", (1404, 1872), Palette16, 1.0),\n        'Rmk2': (\"reMarkable 2\", (1404, 1872), Palette16, 1.0),\n        'RmkPP': (\"reMarkable Paper Pro\", (1620, 2160), Palette16, 1.0),\n        'RmkPPMove': (\"reMarkable Paper Pro Move\", (954, 1696), Palette16, 1.0),\n        'OTHER': (\"Other\", (0, 0), Palette16, 1.0),\n```\n\n### Standalone `kcc-c2e.py` usage:\n\n```\nusage: kcc-c2e [options] [input]\n\nMANDATORY:\n  input                 Full path to comic folder or file(s) to be processed.\n\nMAIN:\n  -p PROFILE, --profile PROFILE\n                        Device profile (Available options: K1, K2, K34, K578, KDX, KPW, KPW5, KV, KO, K11, KS, KoMT, KoG, KoGHD, KoA, KoAHD, KoAH2O, KoAO, KoN, KoC, KoCC, KoL, KoLC, KoF, KoS, KoE)\n                        [Default=KV]\n  -m, --manga-style     Manga style (right-to-left reading and splitting)\n  -q, --hq              Try to increase the quality of magnification\n  -2, --two-panel       Display two not four panels in Panel View mode\n  -w, --webtoon         Webtoon processing mode\n  --ts TARGETSIZE, --targetsize TARGETSIZE\n                        the maximal size of output file in MB. [Default=100MB for webtoon and 400MB for others]\n\nPROCESSING:\n  -n, --noprocessing    Do not modify image and ignore any profile or processing option\n  --pdfextract          Use legacy PDF image extraction method from KCC 8 and earlier.\n  --pdfwidth            Render vector PDFs based on device width instead of height.\n  -u, --upscale         Resize images smaller than device's resolution\n  -s, --stretch         Stretch images to device's resolution\n  -r SPLITTER, --splitter SPLITTER\n                        Double page parsing mode. 0: Split 1: Rotate 2: Both [Default=0]\n  -g GAMMA, --gamma GAMMA\n                        Apply gamma correction to linearize the image [Default=Auto]\n  --autolevel           Set most common dark pixel value to be black point for leveling.\n  --noautocontrast      Disable autocontrast\n  --colorautocontrast   Force autocontrast for all pages. Skipped when near blacks and whites don't exist\n  -c CROPPING, --cropping CROPPING\n                        Set cropping mode. 0: Disabled 1: Margins 2: Margins + page numbers [Default=2]\n  --cp CROPPINGP, --croppingpower CROPPINGP\n                        Set cropping power [Default=1.0]\n  --preservemargin      After calculating crop, \"back up\" a specified percentage amount [Default=0]\n  --cm CROPPINGM, --croppingminimum CROPPINGM\n                        Set cropping minimum area ratio [Default=0.0]\n  --ipc INTERPANELCROP, --interpanelcrop INTERPANELCROP\n                        Crop empty sections. 0: Disabled 1: Horizontally 2: Both [Default=0]\n  --blackborders        Disable autodetection and force black borders\n  --whiteborders        Disable autodetection and force white borders\n  --nosmartcovercrop    Disable attempt to crop main cover from wide image\n  --coverfill           Center-crop only the cover to fill target device screen\n  --forcecolor          Don't convert images to grayscale\n  --forcepng            Create PNG files instead JPEG for black and white images\n  --webp                Replace JPG with lossy WEBP and PNG with lossless WEBP\n  --force-png-rgb       Force color images to be saved as PNG\n  --pnglegacy           Use a more compatible 8 bit PNG instead of 4 bit.\n  --noquantize          Don't quantize PNG images to 16 colors\n  --mozjpeg             Create JPEG files using mozJpeg\n  --jpeg-quality        The JPEG quality, on a scale from 0 (worst) to 95 (best). Default 85 for most devices.\n  --maximizestrips      Turn 1x4 strips to 2x2 strips\n  -d, --delete          Delete source file(s) or a directory. It's not recoverable.\n  --tempdir             Create temporary files directory on source file drive.\n\nOUTPUT SETTINGS:\n  -o OUTPUT, --output OUTPUT\n                        Output generated file to specified directory or file\n  -t TITLE, --title TITLE\n                        Comic title [Default=filename or directory name]\n  --metadatatitle       Write title using ComicInfo.xml or other embedded metadata. 0: Don't use Title from metadata 1: Combine Title with default schema 2: Use Title only [Default=0]\n  -a AUTHOR, --author AUTHOR\n                        Author name [Default=KCC]\n  -f FORMAT, --format FORMAT\n                        Output format (Available options: Auto, MOBI, EPUB, CBZ, PDF, KFX, MOBI+EPUB) [Default=Auto]\n  --nokepub             If format is EPUB, output file with '.epub' extension rather than '.kepub.epub'\n  -b BATCHSPLIT, --batchsplit BATCHSPLIT\n                        Split output into multiple files. 0: Don't split 1: Automatic mode 2: Consider every subdirectory as separate volume [Default=0]\n  --spreadshift         Shift first page to opposite side in landscape for two page spread alignment\n  --norotate            Do not rotate double page spreads in spread splitter option.\n  --rotateright         Rotate double page spreads in opposite direction.\n  --rotatefirst         Put rotated spread first in spread splitter option.\n  --filefusion          Combines all input files into a single file.\n  --eraserainbow       Erase rainbow effect on color eink screen by attenuating interfering frequencies\n\nCUSTOM PROFILE:\n  --customwidth CUSTOMWIDTH\n                        Replace screen width provided by device profile\n  --customheight CUSTOMHEIGHT\n                        Replace screen height provided by device profile\n\nOTHER:\n  -h, --help            Show this help message and exit\n\n```\n\n### Standalone `kcc-c2p.py` usage:\n\n```\nusage: kcc-c2p [options] [input]\n\nMANDATORY:\n  input                 Full path to comic folder(s) to be processed. Separate multiple inputs with spaces.\n\nMAIN:\n  -y HEIGHT, --height HEIGHT\n                        Height of the target device screen\n  -i, --in-place        Overwrite source directory\n  -m, --merge           Combine every directory into a single image before splitting\n\nOTHER:\n  -d, --debug           Create debug file for every split image\n  -h, --help            Show this help message and exit\n```\n\n## INSTALL FROM SOURCE\n\nThis section is for developers who want to contribute to KCC or power users who want to run the latest code without waiting for an official release.\n\nEasiest to use [GitHub Desktop](https://desktop.github.com) to clone your fork of the KCC repo. From GitHub Desktop, click on `Repository` in the toolbar, then `Command Prompt` (Windows)/`Terminal` (Mac) to open a window in the KCC repo.\n\nDepending on your system [Python](https://www.python.org) may be called either `python` or `python3`. We use virtual environments (venv) to manage dependencies.\n\nIf you want to edit the code, a good code editor is [VS Code](https://code.visualstudio.com).\n\nIf you want to edit the `.ui` files, use `pyside6-designer` which is included in the `pip install pyside6`.\nIf new objects have been added, verify that correct tab order has been applied by using [Tab Order Editing Mode](https://doc.qt.io/qt-6/designer-tab-order.html).\nThen use the `gen_ui_files` scripts to autogenerate the python UI.\n\nAn example PR adding a new checkbox is here: https://github.com/ciromattia/kcc/pull/785\n\nvideo of adding a new checkbox: https://youtu.be/g3I8DU74C7g\n\nDo not use `git merge` to merge master from upstream, \nuse the \"Sync fork\" button on your fork on GitHub in your branch \nto avoid weird looking merges in pull requests.\n\nWhen making changes, be aware of how your change might affect file splitting/chunking\nor chapter alignment.\n\n### Windows install from source\n\nOne time setup and running for the first time:\n```\npython -m venv venv\nvenv\\Scripts\\activate.bat\npip install -r requirements.txt\npython kcc.py\n```\n\nEvery time you close Command Prompt, you will need to re-activate the virtual environment and re-run:\n\n```\nvenv\\Scripts\\activate.bat\npython kcc.py\n```\n\nYou can build a `.exe` of KCC like the downloads we offer with\n\n```\npython setup.py build_binary\n```\n\n### macOS install from source\n\nIf the system installed Python gives you issues, please install the latest Python from either brew or the official website.\n\nOne time setup and running for the first time:\n```\npython3 -m venv venv\nsource venv/bin/activate\npip install -r requirements.txt\npython kcc.py\n```\n\nEvery time you close Terminal, you will need to reactivate the virtual environment and re-run:\n\n```\nsource venv/bin/activate\npython kcc.py\n```\n\nYou can build a `.app` of KCC like the downloads we offer with\n\n```\npython setup.py build_binary\n```\n\n## CREDITS\n**KCC** is made by\n\n- [Ciro Mattia Gonano](http://github.com/ciromattia)\n- [Paweł Jastrzębski](http://github.com/AcidWeb)\n- [Darodi](http://github.com/darodi)\n- [Alex Xu](http://github.com/axu2)\n\nThis script born as a cross-platform alternative to `KindleComicParser` by **Dc5e** (published [here](http://www.mobileread.com/forums/showthread.php?t=192783)).\n\nThe app relies and includes the following scripts:\n\n - `DualMetaFix` script by **K. Hendricks**. Released with GPL-3 License.\n - `image.py` class from **Alex Yatskov**'s [Mangle](https://github.com/FooSoft/mangle/) with subsequent [proDOOMman](https://github.com/proDOOMman/Mangle)'s and [Birua](https://github.com/Birua/Mangle)'s patches.\n - Icon is by **Nikolay Verin** ([http://ncrow.deviantart.com/](http://ncrow.deviantart.com/)) and released under [CC BY-NC-SA 3.0](http://creativecommons.org/licenses/by-nc-sa/3.0/) License.\n\n## SAMPLE FILES CREATED BY KCC\n\nhttps://www.mediafire.com/folder/ixh40veo6hrc5/kcc_samples\n\nOlder links (dead):\n\n\n* [Kindle Oasis 2 / 3](http://kcc.iosphe.re/Samples/Ubunchu!-KO.mobi)\n* [Kindle Paperwhite 3 / 4 / Voyage / Oasis](http://kcc.iosphe.re/Samples/Ubunchu!-KV.mobi)\n* [Kindle Paperwhite 1 / 2](http://kcc.iosphe.re/Samples/Ubunchu!-KPW.mobi)\n* [Kindle](http://kcc.iosphe.re/Samples/Ubunchu!-K578.mobi)\n* [Kobo Aura](http://kcc.iosphe.re/Samples/Ubunchu-KoA.kepub.epub)\n* [Kobo Aura HD](http://kcc.iosphe.re/Samples/Ubunchu-KoAHD.kepub.epub)\n* [Kobo Aura H2O](http://kcc.iosphe.re/Samples/Ubunchu-KoAH2O.kepub.epub)\n* [Kobo Aura ONE](http://kcc.iosphe.re/Samples/Ubunchu-KoAO.kepub.epub)\n* [Kobo Forma](http://kcc.iosphe.re/Samples/Ubunchu-KoF.kepub.epub)\n\n## PRIVACY\n**KCC** is initiating internet connections in two cases:\n* During startup - Version check and announcement check.\n* When error occurs - Automatic reporting on Windows and macOS.\n\n## KNOWN ISSUES\nPlease check [wiki page](https://github.com/ciromattia/kcc/wiki/Known-issues).\n\n## COPYRIGHT\nCopyright (c) 2012-2025 Ciro Mattia Gonano, Paweł Jastrzębski, Darodi and Alex Xu.\n**KCC** is released under ISC LICENSE; see [LICENSE.txt](./LICENSE.txt) for further details.\n\n## Verification\nImpact-Site-Verification: ffe48fc7-4f0c-40fd-bd2e-59f4d7205180\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fciromattia%2Fkcc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fciromattia%2Fkcc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fciromattia%2Fkcc/lists"}