mirumoji


Namemirumoji JSON
Version 2.5.4 PyPI version JSON
download
home_pageNone
SummaryCLI and GUI launcher for the Mirumoji project, an open-source, self-hostable Japanese language immersion tool.
upload_time2025-08-25 15:43:46
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords japanese video-player language cli gui language-learning
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Overview

> Mirumoji is an open-source, self-hosted Japanese immersion toolkit. Drop in any video, anime episode, drama or audio clip and it gives you: clickable tokenized subtitles with dictionary pop-ups, Whisper-powered transcription, instant SRT/clip extraction, and one-click Anki deck export — all in Docker, all running on your own machine.

> Optional [`OpenAI`](https://platform.openai.com/docs/overview) Integration - Customizable GPT Breakdowns of Subtitles -

> Optional [`Modal`](https://modal.com) Integration - Install a CPU only version and run all GPU tasks on the cloud -

---

# Preview

> You can see a preview of the application's frontend _(No backend running)_ [`Here`](https://svdc1.github.io/mirumoji)

# Features

## **Interactive Video Player**

![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/player.png?raw=true)

> Upload your local anime/J-Drama espisodes or any Japanese video and `.SRT` subtitles.

## **Clickable Japanese Subtitles**

![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/word_dialog.png?raw=true)

> Subtitles are tokenized ([`kuromoji.js`](https://github.com/takuyaa/kuromoji.js)), allowing you to click individual words with
> integrated offline JMDict for definitions.

## **OpenAI Integration**

![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/gpt_template.png?raw=true)

> Modify System Message and User Prompt with `{sentence}` and `{word}` variables.

## **Local Media Processing**

### **Video Conversion**

> Upload videos in various formats; they can be converted to MP4 for optimal playback.

### **SRT Generation**

> Generate subtitles for your videos. Runs [`FasterWhisper`](https://github.com/SYSTRAN/faster-whisper) with modified parameters to increase accuracy for longer media such as Anime/ J-Drama episodes.

## **Audio Transcription**

![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/transcription.png?raw=true)

> Transcribe Japanese audio from recordings or uploaded files.

## **Profile-Based Data Management:**

### **Persistent Storage**

![alt-img](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/profile.png?raw=true)

> Profile configurations and all other profile-related data is stored and managed via SQLite database by the backend.

### **Clip Saving**

![alt-img](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/clips.png?raw=true)

> Save important video segments with their associated word breakdowns and export as an Anki Deck

---

# Setup

> Both the [`frontend`](https://github.com/svdC1/mirumoji/tree/main/apps/frontend) and [`backend`](https://github.com/svdC1/mirumoji/tree/main/apps/backend) have pre-built [`Docker`](https://www.docker.com/) images and are set up to work with Docker Compose.

> The easiest setup is to run the [`launcher`](https://github.com/svdC1/mirumoji/tree/main/apps/cli) for your platform. **For detailed instructions please refer to the [`Setup Guide`](https://github.com/svdC1/mirumoji/wiki/Setup-Guide)**

> You can also choose to [`build`](https://docs.docker.com/build/) the images locally with the Dockerfiles provided.

---

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mirumoji",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "svdc <svdc1mail@gmail.com>",
    "keywords": "japanese, video-player, language, cli, gui, language-learning",
    "author": null,
    "author_email": "svdc <svdc1mail@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/b0/62/82046677d81ddfbe6baf35daf5fd3bff7ebf879d909b9783a439aa3a2373/mirumoji-2.5.4.tar.gz",
    "platform": null,
    "description": "# Overview\n\n> Mirumoji is an open-source, self-hosted Japanese immersion toolkit. Drop in any video, anime episode, drama or audio clip and it gives you: clickable tokenized subtitles with dictionary pop-ups, Whisper-powered transcription, instant SRT/clip extraction, and one-click Anki deck export \u2014 all in Docker, all running on your own machine.\n\n> Optional [`OpenAI`](https://platform.openai.com/docs/overview) Integration - Customizable GPT Breakdowns of Subtitles -\n\n> Optional [`Modal`](https://modal.com) Integration - Install a CPU only version and run all GPU tasks on the cloud -\n\n---\n\n# Preview\n\n> You can see a preview of the application's frontend _(No backend running)_ [`Here`](https://svdc1.github.io/mirumoji)\n\n# Features\n\n## **Interactive Video Player**\n\n![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/player.png?raw=true)\n\n> Upload your local anime/J-Drama espisodes or any Japanese video and `.SRT` subtitles.\n\n## **Clickable Japanese Subtitles**\n\n![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/word_dialog.png?raw=true)\n\n> Subtitles are tokenized ([`kuromoji.js`](https://github.com/takuyaa/kuromoji.js)), allowing you to click individual words with\n> integrated offline JMDict for definitions.\n\n## **OpenAI Integration**\n\n![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/gpt_template.png?raw=true)\n\n> Modify System Message and User Prompt with `{sentence}` and `{word}` variables.\n\n## **Local Media Processing**\n\n### **Video Conversion**\n\n> Upload videos in various formats; they can be converted to MP4 for optimal playback.\n\n### **SRT Generation**\n\n> Generate subtitles for your videos. Runs [`FasterWhisper`](https://github.com/SYSTRAN/faster-whisper) with modified parameters to increase accuracy for longer media such as Anime/ J-Drama episodes.\n\n## **Audio Transcription**\n\n![alt-text](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/transcription.png?raw=true)\n\n> Transcribe Japanese audio from recordings or uploaded files.\n\n## **Profile-Based Data Management:**\n\n### **Persistent Storage**\n\n![alt-img](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/profile.png?raw=true)\n\n> Profile configurations and all other profile-related data is stored and managed via SQLite database by the backend.\n\n### **Clip Saving**\n\n![alt-img](https://github.com/svdC1/mirumoji/blob/main/.github/example_imgs/clips.png?raw=true)\n\n> Save important video segments with their associated word breakdowns and export as an Anki Deck\n\n---\n\n# Setup\n\n> Both the [`frontend`](https://github.com/svdC1/mirumoji/tree/main/apps/frontend) and [`backend`](https://github.com/svdC1/mirumoji/tree/main/apps/backend) have pre-built [`Docker`](https://www.docker.com/) images and are set up to work with Docker Compose.\n\n> The easiest setup is to run the [`launcher`](https://github.com/svdC1/mirumoji/tree/main/apps/cli) for your platform. **For detailed instructions please refer to the [`Setup Guide`](https://github.com/svdC1/mirumoji/wiki/Setup-Guide)**\n\n> You can also choose to [`build`](https://docs.docker.com/build/) the images locally with the Dockerfiles provided.\n\n---\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "CLI and GUI launcher for the Mirumoji project, an open-source, self-hostable Japanese language immersion tool.",
    "version": "2.5.4",
    "project_urls": {
        "Homepage": "https://github.com/svdC1/mirumoji",
        "Issues": "https://github.com/svdC1/mirumoji/issues"
    },
    "split_keywords": [
        "japanese",
        " video-player",
        " language",
        " cli",
        " gui",
        " language-learning"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5d29ec6e3c68162db4957baec2141af07ce0f2844d90a2e3674be6d823c1e61e",
                "md5": "f7a071519067c2dd038142470e8d2db9",
                "sha256": "5238d76104aa7b3d68a586db602a501e5b78bf4baefa0bc6a653b8a4c9fa98a7"
            },
            "downloads": -1,
            "filename": "mirumoji-2.5.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f7a071519067c2dd038142470e8d2db9",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 33034,
            "upload_time": "2025-08-25T15:43:44",
            "upload_time_iso_8601": "2025-08-25T15:43:44.862437Z",
            "url": "https://files.pythonhosted.org/packages/5d/29/ec6e3c68162db4957baec2141af07ce0f2844d90a2e3674be6d823c1e61e/mirumoji-2.5.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b06282046677d81ddfbe6baf35daf5fd3bff7ebf879d909b9783a439aa3a2373",
                "md5": "63fa76c193ea7bb0279e723cb6f25c41",
                "sha256": "d6f21b60a8d1dba68699edd76b1f07f55114d71251dc6e0b7d6de377184918d7"
            },
            "downloads": -1,
            "filename": "mirumoji-2.5.4.tar.gz",
            "has_sig": false,
            "md5_digest": "63fa76c193ea7bb0279e723cb6f25c41",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 31983,
            "upload_time": "2025-08-25T15:43:46",
            "upload_time_iso_8601": "2025-08-25T15:43:46.103482Z",
            "url": "https://files.pythonhosted.org/packages/b0/62/82046677d81ddfbe6baf35daf5fd3bff7ebf879d909b9783a439aa3a2373/mirumoji-2.5.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-25 15:43:46",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "svdC1",
    "github_project": "mirumoji",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "mirumoji"
}
        
Elapsed time: 0.91000s