Syncyomi
SyncYomi is an open-source project crafted to provide a seamless synchronization experience for your TachiyomiSY/Mihon (Mihon client is not implemented but it works the same probably will never be implemented)/manga reading progress and library across multiple devices.
Install / Use
/learn @syncyomi/SyncyomiREADME
Key features
- User-friendly and mobile-optimized web UI.
- Developed using Go and Vue, making SyncYomi lightweight and versatile, suitable for various platforms (Linux, FreeBSD, Windows, macOS) and architectures (e.g., x86, ARM).
- Excellent container support (Docker, k8s/Kubernetes).
- Compatible with both PostgreSQL and SQLite database engines.
- Notifications supported via Discord, Telegram, ntfy, and Notifiarr.
- Base path/subfolder (and subdomain) support for easy reverse-proxy integration.
Installation
<!-- Full installation guide and documentation can be found at https://syncyomi.com -->Head to releases and download the binary for your operating system. Then, run the binary.
Docker compose
docker-compose for syncyomi. Modify accordingly if running with unRAID or setting up with Portainer.
- Logging is optional
- Host port mapping might need to be changed to not collide with other apps
- Change
BASE_DOCKER_DATA_PATHto match your setup. Can be simply./data - Set custom network if needed
- You may need to update the host address to 0.0.0.0 if you are running with podman
Create docker-compose.yml and add the following. If you have a existing setup change to fit that.
version: "3.9"
services:
syncyomi:
container_name: syncyomi
image: ghcr.io/syncyomi/syncyomi:latest
restart: unless-stopped
environment:
- TZ=${TZ}
volumes:
- ${BASE_DOCKER_DATA_PATH}/syncyomi/config:/config
ports:
- 8282:8282
Then start with
docker compose up -d
Windows
Download the latest release and run it.
<!-- Check the windows setup guide [here](https://syncyomi.com/installation/windows) -->Linux generic
Download the latest release, or download the source code and build it yourself using make build.
wget $(curl -s https://api.github.com/repos/SyncYomi/SyncYomi/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)
Systemd (Recommended)
On Linux-based systems, it's recommended to run SyncYomi as a service with auto-restarting capabilities to ensure minimal downtime. The most common approach is to use systemd.
You will need to create a service file in /etc/systemd/system/ called syncyomi.service.
touch /etc/systemd/system/syncyomi@.service
Then place the following content inside the file (e.g. via nano/vim/ed):
[Unit]
Description=SyncYomi service for %i
After=syslog.target network-online.target
[Service]
Type=simple
User=%i
Group=%i
ExecStart=/usr/bin/syncyomi --config=/home/%i/.config/syncyomi/
[Install]
WantedBy=multi-user.target
Start the service. Enable will make it startup on reboot.
systemctl enable -q --now --user syncyomi@$USER
By default, the configuration is set to listen on 127.0.0.1. It is highly recommended to use a reverse proxy like caddy, nginx or traefik.
Note
If you are not running a reverse proxy change host in the config.toml to 0.0.0.0.
Usage
Configuring and Running the Service
Initial Setup
After the first run of the SyncYomi service, several files will be generated in your specified running directory. These are essential for the service's operation.
Configuration for Reverse Proxy Users
If you're using a reverse proxy and your setup includes a sub-directory, it's crucial to update the baseUrl value in your configuration. Additionally, adjust your proxy settings to exclude this suffix. Below is an example configuration for nginx:
location /syncyomi/ {
proxy_pass http://127.0.0.1:8282;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-Host $http_host;
rewrite ^/syncyomi/(.*) /$1 break;
}
After updating the configuration file, restart the SyncYomi service to apply these changes.
API Key Generation
To generate an API key, access the web interface of SyncYomi at http://<your-server-address>:8282.
Once the service is running, navigate to Settings > API Keys and create a new API key. This key is crucial for linking your Tachiyomi clients to the SyncYomi service.
Important Note: Treat each API key as a unique user. To ensure a seamless syncing experience across multiple devices, it's important to use the same API key for all the devices you intend to synchronize. Using different API keys will result in the devices being treated as separate users, each with their own syncing data. Keep your API key secure and consistent across all your devices for optimal functionality.
Install The App
Preparing for Installation
Before proceeding, backup your existing Tachiyomi environment. Then go to TachiyomiSY TachiyomiSY Preview version Download and Install it. Currently, it's in preview version of TachiyomiSY, but eventually it will be in the stable version.
Then, go to Settings > Data and Storage in the app. Under the Sync section, input your Host details (e.g., http://192.168.1.202:8282 or https://sync.mydomain.tld) and the previously generated API Key.
Important Configuration for Direct IP Users
If you are using a direct IP address (e.g., http://192.168.1.202:8282) to connect to your server, ensure the config.toml file on your server has the host set to 0.0.0.0. This setting allows connections from any IP address. Be sure to use your machine's IPv4 address. For guidance on how to find your IPv4 address, refer to an IPv4 finding guide for Windows.
Linux:
ip -4 addr show | grep -oP '(?<=inet\s)\d+(\.\d+){3}'
Community
Come join us on Discord!
Related Skills
node-connect
344.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
99.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
344.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
