Anime Scene Search Engine
Trace back the scene where an anime screenshots is taken from.
It tells you which anime, which episode, and the exact moment this scene appears.
Try this image yourself.
Link to trace.moe from other websites, you can pass image URL in query string like this:
https://trace.moe/?url=https://images.plurk.com/32B15UXxymfSMwKGTObY5e.jpg
For Bots/Apps, refer to https://soruly.github.io/trace.moe-api/
This repo is just an index page for the whole trace.moe system. It consists of different parts as below:
Client-side:
- trace.moe-www - web server serving the webpage trace.moe
- trace.moe-WebExtension - browser add-ons to help copying and pasting images
- trace.moe-telegram-bot - official Telegram Bot
Server-side:
- trace.moe-api - API server for image search and database updates
- trace.moe-media - media server for video storage and scene preview generation, now integrated into trace.moe-api
- trace.moe-worker - includes hasher, loader and watcher, now integrated into trace.moe-api
- LireSolr - image analysis and search plugin for Solr, now integrated into trace.moe-api
Others:
- anilist-crawler - getting anilist info and store in mariaDB, now integrated into trace.moe-api
- slides - past presentation slides on the project
You're going to need these docker images. They are provided in the compose.yml
file.
Parts | Docker CI Build | Docker Image |
---|---|---|
trace.moe-www | ||
trace.moe-api |
You need docker compose for your OS. Windows is supported via WSL2.
-
Create directory
/mnt/c/trace.moe/video/
-
Create subdirectory using anilist ID as folder name.
-
Put video files in it. The full path should look like this
/mnt/c/trace.moe/video/{anilist_ID}/foo.mp4
-
Copy
.env.example
to.env
and setVIDEO_PATH
to/mnt/c/trace.moe/video/
-
Start the containers
docker compose up -d
It will scan the VIDEO_PATH
every minute for new video files (.mp4 .mkv .webm files only, others are ignored).
You can check the indexing process the from logs of api server
- Open http://localhost:3000 and start searching
Other configurations like port mapping are defined in compose.yml
You can also increase MAX_WORKER
to make hashing faster.