https://github.com/svdc1/mirumoji
Self-hosted Japanese immersion player — clickable subs, Whisper transcription & Anki export
https://github.com/svdc1/mirumoji
anki docker fastapi japanese-language-learners japanese-learning japanese-study language-learning openai python react self-hosted subtitles typescript video-player whisper
Last synced: 10 months ago
JSON representation
Self-hosted Japanese immersion player — clickable subs, Whisper transcription & Anki export
- Host: GitHub
- URL: https://github.com/svdc1/mirumoji
- Owner: svdC1
- License: mit
- Created: 2025-06-03T19:09:36.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-08-14T19:11:22.000Z (10 months ago)
- Last Synced: 2025-08-14T20:36:02.896Z (10 months ago)
- Topics: anki, docker, fastapi, japanese-language-learners, japanese-learning, japanese-study, language-learning, openai, python, react, self-hosted, subtitles, typescript, video-player, whisper
- Language: Python
- Homepage:
- Size: 21.4 MB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: docs/README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: docs/CODE_OF_CONDUCT.md
- Security: docs/SECURITY.md
Awesome Lists containing this project
README



---
# 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
> View a [`Preview`](https://svdc1.github.io/mirumoji) of the frontend _(No backend running)_
# Documentation
> Access full [`Documentantion`](https://svdc1.github.io/mirumoji/docs)
# Features
## **Interactive Video Player**

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

> Subtitles are tokenized ([`kuromoji.js`](https://github.com/takuyaa/kuromoji.js)), allowing you to click individual words for information
## **Dictionary**

> Dictionary ([`kotobase`](https://github.com/svdC1/kotobase)) page allowing wildcard searches.
## **Text Analyzer**

> Copy and paste text for tokenized output with furigana and clickable words.
## **OpenAI Integration**

> 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**

> Transcribe Japanese audio from recordings or uploaded files.
## **Profile-Based Data Management**
### **Persistent Storage**

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

> 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://svdc1.github.io/mirumoji/docs/Setup-Guide)**
> You can also choose to [`build`](https://hub.docker.com/repository/docker/svdc1/mirumoji/general) the images locally with the Dockerfiles provided.
---
# Image Sizes
> Compressed sizes for the Docker Images
> - 
> - 
> - 