KenmeiToAnilist
Migrate and synchronize your manga library from Kenmei to AniList.
Install / Use
/learn @RLAlpha49/KenmeiToAnilistREADME
Kenmei to Anilist
Effortlessly migrate and synchronize your manga library from Kenmei to AniList with a beautiful, modern desktop app. 🚀
📸 Screenshots
- Home Page

- Import Kenmei CSV

- Smart Matching

- Sync to AniList

- Settings

✨ Features
- Import from Kenmei: Easily import your entire manga collection from a Kenmei CSV export.
- Smart Matching: An algorithm matches your manga to AniList entries.
- One-Click Sync: Synchronize your collection to AniList with a single click after reviewing matches.
- Auto-Pause Manga: Automatically pause manga that haven't been updated within a customizable time period.
- Flexible Configuration: Customize how synchronization works with priority settings for status, progress, and scores.
- Automatic Updates: Built-in Electron auto-updater with in‑app download and install. Optional pre‑release channel support.
- Automatic Backups: Configurable scheduled backups (hourly/daily/weekly) with rotation and restore from Settings.
🛠️ How It Works
- Import: Export your manga library from Kenmei as a CSV and import it into the app.
- Match: The app automatically matches your manga to AniList entries. Review and adjust matches as needed.
- Review: See a summary of your collection and any issues before syncing.
- Sync: With one click, sync your collection to AniList, including status, progress, and privacy settings.
🚀 Getting Started
Prerequisites
Installation
# Clone the repository
git clone https://github.com/RLAlpha49/KenmeiToAnilist.git
cd KenmeiToAnilist
# Install dependencies
npm install --force
# or
yarn install
Running the App (Development)
npm start
# or
yarn start
Building for Production
npm run make
# or
yarn make
Environment Variables
Create a .env file in the root if you want to set the default AniList credentials:
VITE_ANILIST_CLIENT_ID=your-client-id
VITE_ANILIST_CLIENT_SECRET=your-client-secret
You can also configure credentials in the app's Settings page.
📚 Documentation
For Users
- User Guide – How to use the application
For Developers
- Contributing Guide – How to contribute to the project
- Architecture Documentation – Technology choices, processes, structure, performance & security
- IPC Architecture – Inter-process communication patterns, context bridge, and sequence diagrams
- Storage Implementation Guide – Three‑layer storage architecture details
- AniList API Reference – GraphQL operations, auth, rate limiting, error handling
Generated API (TypeDoc)
- TypeDoc Site – Auto‑generated source/API docs
🙏 Credits
This project makes use of several external APIs and services:
- AniList – The primary manga database and sync target.
- MangaDex – Used as a fallback source.
- Comick – Used as a fallback source.
🤝 Contributing
We welcome contributions from the community! Whether you're fixing bugs, adding features, improving documentation, or suggesting ideas, your help is appreciated.
This project follows Conventional Commits for commit messages, enabling automatic changelog generation and semantic versioning.
Quick Links
- Contributing Guide - Setup, coding standards, PR process
- Commit Message Guidelines - Conventional commits format
- Bug Report Template - Report bugs
- Architecture Documentation - Understand the codebase
Development Quick Start
# Fork and clone the repository
git clone https://github.com/YOUR_USERNAME/KenmeiToAnilist.git
cd KenmeiToAnilist
# Install dependencies
npm install --force
# Run in development mode
npm start
# Before committing (runs automatically via Husky)
npm run precommit
# Commit your changes using conventional commits format
git commit -m "feat(scope): description of your changes"
# See CONTRIBUTING.md for commit message guidelines
For detailed instructions, see CONTRIBUTING.md.
📄 License
This project is licensed under the MIT License. See LICENSE for details.
