back to home

soruly / trace.moe

Trace back an anime scene with a screenshot

4,961 stars
260 forks
0 issues

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing soruly/trace.moe in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/soruly/trace.moe)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

trace.moe 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. Web Integrations Link to trace.moe from other websites, you can pass image URL in query string like this: trace.moe API For Bots/Apps, refer to https://soruly.github.io/trace.moe-api/ System Overview 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.~~ Integrated into trace.moe-api • ~~trace.moe-worker - includes hasher, loader and watcher.~~ Integrated into trace.moe-api • ~~LireSolr - image analysis and search plugin for Solr.~~ Integrated into trace.moe-api Others: • ~~anilist-crawler - getting anilist info and store in database.~~ Integrated into trace.moe-api • slides - past presentation slides on the project Hosting your own trace.moe system You're going to need these docker images. They are provided in the file. | Parts | Docker CI Build | Docker Image | | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | trace.moe-www | | | | trace.moe-api | | | Prerequisites You need docker compose for your OS. Windows is supported via WSL2. Getting started • Create directory • Create subdirectory using anilist ID as folder name. • Put video files in it. The full path should look like this • Copy to and set to • Start the containers It will scan the 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 More configurations Other configurations like port mapping are defined in compose.yml You can also increase to make hashing faster. Using pre-hashed data > Loading all 100,000+ files to memory requires about 160GB RAM • Download the pre-hashed data here: trace.moe database dump 2025-10 • Install zstd • Start all containers • Load the database dump to postgres This process takes a few minutes. You can ignore all errors like . • Load all hashes to Milvus wait a minute for scan to start, or trigger it manually by This process may take 24 hours. You can check the progress by Once all files are LOADED, it's ready for search. But background optimization in Milvus may take a few days to complete. How to cleanup everything To remove all docker containers and delete all database volumes: Finally, manually clean up the directory if you need to.