Optikur is a minimalist desktop eye-care assistant built with Tauri, React, and TypeScript. It helps users reduce digital eye strain by encouraging regular breaks based on the 20-20-20 rule and offering guided eye exercises.
- 20-20-20 Break Timer: Customizable timer for work sessions with a full-screen break reminder overlay.
- Guided Eye Exercises: Visual exercises to help stretch and rest eye muscles (figure-8 tracing, blinking pacer, focus depth shift, perimeter sweeps).
- Custom Schedules & Settings: Adjustable focus and break durations, strict break enforcement options, audio chimes, and system tray background execution.
- Usage Analytics: Overview of daily breaks completed and a weekly break history chart.
- Settings Persistence: Saves application preferences locally using Tauri's Rust backend.
- Dark, Light & System Themes: Adheres to Apple HIG and Microsoft Fluent Design system preferences.
- Frontend: React, TypeScript, Tailwind CSS
- Desktop Runtime: Tauri (Rust)
- Build Tool: Vite
# Clone the repository
git clone https://github.com/edeniyanda/IlluminePal.git
# Navigate into the project directory
cd IlluminePal
# Install dependencies
npm installnpm run devnpm run tauri devnpm run build.
├── src/
│ ├── components/ # UI components (Sidebar, TopBar, BreakOverlay, ToastOverlay)
│ ├── context/ # React context providers (TimerContext, ThemeContext)
│ ├── pages/ # Application views (Dashboard, Reminders, Exercises, Analytics, Settings)
│ ├── types/ # TypeScript type definitions
│ └── utils/ # Helper utilities (Web Audio API synthesizer, notifications)
├── src-tauri/
│ ├── src/ # Rust source files (main.rs, settings.rs)
│ └── tauri.conf.json # Tauri app configuration
├── index.html # HTML entry point
├── package.json # Dependencies and scripts
└── vite.config.ts # Vite configuration
MIT