mirumoji


Namemirumoji JSON
Version 2.2.4 PyPI version JSON
download
home_pageNone
SummaryCLI launcher for the Mirumoji project, an open-source, self-hostable Japanese language immersion tool.
upload_time2025-08-02 20:52:49
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords japanese video-player language cli 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, language-learning",
    "author": null,
    "author_email": "svdc <svdc1mail@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/d1/53/2945055989b8abdad626386cde306e6623928b3c6c7fb8e389794ae94526/mirumoji-2.2.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 launcher for the Mirumoji project, an open-source, self-hostable Japanese language immersion tool.",
    "version": "2.2.4",
    "project_urls": {
        "Homepage": "https://github.com/svdC1/mirumoji",
        "Issues": "https://github.com/svdC1/mirumoji/issues"
    },
    "split_keywords": [
        "japanese",
        " video-player",
        " language",
        " cli",
        " language-learning"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f50ef15af3e83f7727f4d57b3ecd0de2ed409e89970cd1d873add001f2be75ea",
                "md5": "4610e579d682452b7b9c5618c269a023",
                "sha256": "a6b1b673dc29143ef9e68264cbf9e8318d1962c55ba439e694680265f9b57cbd"
            },
            "downloads": -1,
            "filename": "mirumoji-2.2.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4610e579d682452b7b9c5618c269a023",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 10415,
            "upload_time": "2025-08-02T20:52:48",
            "upload_time_iso_8601": "2025-08-02T20:52:48.256385Z",
            "url": "https://files.pythonhosted.org/packages/f5/0e/f15af3e83f7727f4d57b3ecd0de2ed409e89970cd1d873add001f2be75ea/mirumoji-2.2.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d1532945055989b8abdad626386cde306e6623928b3c6c7fb8e389794ae94526",
                "md5": "81b0ca594db87123533d0fe47a8634a0",
                "sha256": "2eb2848d03a1c533c0da1d98b2abb3b74df9b5911b4e8600365421ddd3cdb585"
            },
            "downloads": -1,
            "filename": "mirumoji-2.2.4.tar.gz",
            "has_sig": false,
            "md5_digest": "81b0ca594db87123533d0fe47a8634a0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 11480,
            "upload_time": "2025-08-02T20:52:49",
            "upload_time_iso_8601": "2025-08-02T20:52:49.598861Z",
            "url": "https://files.pythonhosted.org/packages/d1/53/2945055989b8abdad626386cde306e6623928b3c6c7fb8e389794ae94526/mirumoji-2.2.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-02 20:52:49",
    "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.61408s