the signals and their derived score are provisional and subject to change.
validate manually before sharing.
c1ca57d6d3a4e6e86110f5fd8c5d070ed99bc2e8none
# RENDERER PROCESS
Vue 2 + Element UI + vue-router based Electron renderer for Icalingua++.
## STRUCTURE
```
src/renderer/
├── main.ts # Entry point
├── App.vue # Root component
├── components/ # Reusable components + vac-mod/ + multipane/
├── views/ # Route-level views (ChatView, LoginView, etc.)
├── router/ # vue-router configuration
├── utils/ # IPC bridge, themes, caches
└── assets/ # ELECTRON MAIN PROCESS
## OVERVIEW
Electron main process: Node.js backend handling QQ protocol adapters, IPC communication with renderer, and native OS integration.
## STRUCTURE
```
src/main/
├── index.ts # Entry: parses argv, sets flags, defers to ready.ts
├── ready.ts # Post-init: creates bot, sets up window/tray, handles lifecycle
├── adapters/ # Protocol implementations (all implement Adapter interface)
├── ipc/ # IPC ha# BRIDGE KNOWLEDGE BASE
**Project:** Icalingua++ Bridge OICQ
**Role:** Independent relay service for remote QQ clients
## OVERVIEW
Standalone Node.js service bridging QQ protocol (oicq/milky/onebot) to Electron clients via Socket.IO. Enables 24/7 online presence, multi-device access, and multi-account management.
## STRUCTURE
```
icalingua-bridge-oicq/
├── index.ts # Entry: adapter selection + Socket.IO init
├── adapters/ # Protocol backends (oicq/milky/# Storage Providers Package
## OVERVIEW
`@icalingua/storage-providers` implements the `StorageProvider` interface for persisting chat data across multiple database backends.
## IMPLEMENTATIONS
| File | Database | Notes |
|------|----------|-------|
| `SQLStorageProvider.ts` | SQLite (default), MySQL, PostgreSQL | Uses knex query builder. Most complex implementation. |
| `MongoStorageProvider.ts` | MongoDB | Native driver. Used by Bridge deployments. |
| `RedisStorageProvider.ts` | Redis | ioredis client# @icalingua/types
## OVERVIEW
Shared TypeScript type declarations for Icalingua++ monorepo. Consumed by both Electron client and Bridge service.
## KEY TYPES
| File | Description |
|------|-------------|
| `Message.d.ts` | Core message model (senderId, content, timestamp, files, replyMessage, etc.) |
| `Room.d.ts` | Chat room model (roomId, roomName, unreadCount, priority, lastMessage) |
| `Adapter.d.ts` | Protocol adapter interface (oicq, socketIo, readOnly modes) |
| `StorageProvider.d.ts` | Storage # ICALINGUA DESKTOP CLIENT
Electron + Vue 2 桌面客户端, QQ 协议主入口。
## STRUCTURE
```
src/
├── main/ # Electron 主进程
│ ├── index.ts # 入口
│ ├── adapters/ # 协议适配 (oicq/socketIo/readOnly)
│ ├── ipc/ # IPC handlers (5 files)
│ ├── providers/ # socketIoProvider
│ ├── handlers/ # fileMgr
│ └── utils/ # 30 个工具文件
├── render# PROJECT KNOWLEDGE BASE
**Generated:** 2026-03-20
**Commit:** 5c11c2e5
**Branch:** develop
## OVERVIEW
Icalingua++ — Electron + Vue 2 桌面 QQ 客户端,附带独立 Bridge 中继服务。pnpm monorepo,TypeScript 全栈。基于 oicq 协议库实现 QQ 通信。
## STRUCTURE
```
icalingua-plus-plus/
├── icalingua/ # Electron 桌面客户端(主应用)
│ ├── src/main/ # Electron 主进程
│ ├── src/renderer/ # Vue 2 渲染进none