/EyesGuard

πŸ‘€ Windows Application for protecting your eyes

Primary LanguageC#MIT LicenseMIT

Eyes Guard

Microsoft Store BuitlWithDot.Net shield platform Build status


What is Eyes Guard?

Eyes Guard is a Windows Application for protecting your eyes. It will help you (also can force you!) to break if you are working with your PC for a long time using configurable times.

Download Link

For Windows 10 or 11 (Official with latest features): Download from Windows Store

For Windows 7 (Unofficial Fork, maybe not latest and not feature complete): Download from ExplorerOL's GitHub

Any Screenshots?

Control Panel

Eyes Guard

Settings

Eyes Guard Settings

Notify Icon

Eyes Guard NotifyIcon


What features does it have?

Feature Implementation State Is live on store version?
Short Break βœ” Implemented βœ” Yes
Long Break βœ” Implemented βœ” Yes
Timing Customization βœ” Implemented βœ” Yes
Stas βœ” Implemented βœ” Yes
Pause or Stop protection βœ” Implemented βœ” Yes
Windows Tray Integration βœ” Implemented βœ” Yes
Auto Start βœ” Implemented βœ” Yes
Customize messages βœ” Implemented βœ” Yes
Multi-language βœ” Implemented βœ” Yes

How can I help?

Eyes Guard is a free and open-source app. If you like it, please consider:

  • ⭐ Star this project in GitHub
  • πŸ“ Write a review in Microsoft Store page of Eyes Guard
  • ko-fi
  • πŸ‘©β€πŸ’» Contribute to Software Development of Eyes Guard
  • ✏ Translate app to your language using guide below

Supported Languages

Language Locale Translator
us English en-US Aryan Ebrahimpour, Gianpaolo Filippa, Akash Joshi
ir Persian fa-IR Aryan Ebrahimpour
it Italian it-IT Gianpaolo Filippa
fr French fr-FR Bouillon Pierre
ru Russian ru-RU Dmitry Vorobjev
no Norwegian nb-NO Thomas Rory Gummerson
in Tamil ta-IN Muthu Kumar
ko Korean ko-KR Sung Jae Cho
ch Chinese zh-CN Qixiny
tr Turkish tr-TR Furkan KARADENΔ°Z
de German de-DE Marco Heinisch
po Polish po-PO Bartlomiej Szmolke
ua Ukrainian uk-UA Yaroslav Shaposhnyk
add Add Language You

Can I contribute?

PRs are very welcome!

You can contribute to software development and/or create translations for the app.

How to contribute to translating app

Method 1 : using GitHub


Adding a new Language:

  1. Go to Languages folder and create a new yaml file with name {StandardCountryCode}.yml like en-US.yml or fa-IR.yml. Here is a List of country codes you can pick.
  2. Copy the content of en-US.yml to the new created file.
  3. In the meta part of yaml edit the Translators array. Remove the existing translators in the copied file and just put information of yourself.
  4. Translate the Translation section of file and make a PR!

Modifying a translation file:

  1. Go to Languages and find the language you want to edit using its standard locale.
  2. In the meta part of yaml and in the Translators array, add yourself as a new translator without removing others from the list.
  3. Make your changes in the Translation section and make a PR!

Method 2 : using Email


Use the links mentioned in above method, modify/add translation file, then email it to me: Oxaryan@outlook.com

πŸ“œ RTL Languages

For right-to-left languages like Persian, Arabic, etc. It is not needed to explicitly state language layout in the meta section. Simply use a standard country code, and the app automatically detects if it has right-to-left direction or not and changes the design of elements in app.

πŸ“ Solution Structure

Project Name Language Description
EyesGuard C# Main Application (at the time of starting project I didn't know F# to write the app entirely in F#)
EyesGuard.Data F# Type Provider and Data Access / Translations
StorePackage Used to publish WPF app into Store

πŸ”¨ Build

You need Paket Package manager for .NET to restore the packages.

git clone https://github.com/avestura/EyesGuard
cd .\EyesGuard
paket install
cd .\Source\EyesGuard
dotnet run