Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

xpydd/EyeRest

Repository files navigation

EyeRest(Rust + Tauri 2)

EyeRest 是一个基于 Rust + Tauri 2 的桌面护眼工具,提供亮度调节、蓝光过滤与定时休息提醒。

image.png image1.png

功能说明

  • 亮度调节:通过软件覆盖层降低视觉亮度
  • 蓝光过滤:通过暖色覆盖层减少蓝光刺激
  • 定时提醒:按设定间隔弹出全屏休息遮罩与建议
  • 界面风格:主界面与提醒页采用 iOS Liquid Glass 视觉风格
  • 托盘常驻:关闭主界面后驻留系统托盘
  • 配置持久化:用户调整实时保存,重启后自动恢复

多显示器与分屏同步

  • 外接显示器:每个显示器都会创建独立覆盖层窗口,亮度与蓝光效果同步应用
  • 分屏使用:覆盖层按显示器全屏显示,因此分屏中的所有窗口都会同步生效
  • 休息提醒:休息遮罩会在所有显示器上同时显示

技术方案说明

本项目的亮度与蓝光过滤采用软件覆盖层,而不是依赖显示器硬件接口。

原因:

  • 硬件亮度接口(例如 Windows 下 WMI)依赖显示器型号与驱动支持
  • 在 Windows/macOS + 各类内置/外接显示器之间不存在统一且稳定的硬件级 API

因此软件覆盖层是当前跨设备一致性更高、可控性更强的方案。

项目结构

  • src/main.rs:主进程、托盘、覆盖层窗口、提醒调度、Tauri 命令
  • src/config.rs:配置读取、保存、默认值与清洗
  • src/reminder.rs:不同连续使用时长下的提醒文案
  • ui/index.html + ui/app.js + ui/style.css:主界面与交互
  • ui/effect.*:亮度/蓝光覆盖层
  • ui/break.*:全屏休息提醒层

配置文件位置

  • Windows:%APPDATA%/eyerest/config.json
  • macOS:~/Library/Application Support/eyerest/config.json
  • Linux:~/.config/eyerest/config.json

本地开发

cargo check
cargo tauri dev

构建

cargo tauri build

许可证

MIT

About

EyeRest 是一个基于 Rust + Tauri 2 的桌面护眼工具,提供亮度调节、蓝光过滤与定时休息提醒。

Resources

Stars

Watchers

Forks

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /