# itako discord.gg <---> fluxer.app channel bridge. unifies platforms, unifies friends. One channel on each side; messages are relayed through webhooks so they show the original author's name and avatar. ## Docs - **[INSTALL.md](INSTALL.md)** — setup guide (bots, tokens, .env, running) - **[TODO.md](TODO.md)** — roadmap: edit/delete sync, stickers, service mode, … ## Layout - `itako/bridge.py` — runs both bots in one asyncio process: - discord.py bot listens on Discord, relays to a **Fluxer** webhook - fluxer.py `Bot` listens on Fluxer, relays to a **Discord** webhook - Webhooks named `itako-bridge` (configurable) are created once per channel and reused. ## Setup 1. `uv sync` 2. Copy `.env.example` to `.env` and fill in (see [INSTALL.md](INSTALL.md)): - Discord: bot token + the channel ID to bridge (enable Message Content intent!) - Fluxer: create a bot application at fluxer.app, grab its token, invite it to your guild, put its token + the channel ID 3. `uv run python -m itako.bridge` ## Loop protection - Messages authored by either bot account are ignored. - Messages posted by either side's webhook (`message.webhook_id`) are ignored, so relayed copies never bounce back.