这个项目能做什么

Motiq 是一个面向 iOS 开发者的自托管分析 SDK,旨在让他们在不依赖 Google Analytics 等第三方追踪器的情况下了解用户行为。该项目由两部分组成:适用于 iOS 应用的 Swift SDK(需要 iOS 16+ 和 Swift 6)以及基于 FastAPI 和 SQLite 构建的自托管服务器。 主要功能包括自定义事件命名和属性、离线事件排队(以便在用户离线时保留数据)、自动会话跟踪,以及通过单个服务器实例追踪同一开发者的多个应用。所有收集的数据均经过匿名化处理,从而避免了需要显示侵入式隐私弹窗。 安装步骤包括通过 SPM 将 Swift 包添加到 Xcode 项目中,并配置基础 URL 和 API 密钥。服务器的设置过程为:克隆仓库、创建 Python 虚拟环境、安装依赖,然后使用 uvicorn 运行 FastAPI 应用。建议将服务器放在 Caddy 或 nginx 等反向代理之后运行,最好以 systemd 服务的形式运行。 事件可以通过简单的 Swift 调用来追踪,例如 `Motiq.shared.track("button_tapped", properties: ["button": "sign_up"])`. 事件会在本地排队,并按照可配置的批次刷新。项目路线图包括用于数据分析的 Web 仪表盘、从 SQLite 迁移到 PostgreSQL,以及 Docker 容器支持。