{"id":49037307,"url":"https://github.com/pchomik/glint","last_synced_at":"2026-04-19T12:04:21.910Z","repository":{"id":339074164,"uuid":"1160368202","full_name":"pchomik/glint","owner":"pchomik","description":"A lightweight Windows application that draws a visual border around the currently focused window.","archived":false,"fork":false,"pushed_at":"2026-02-26T22:31:46.000Z","size":596,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-27T04:46:42.117Z","etag":null,"topics":["border","glazewm","rust","windows","windows-10","windows-11"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pchomik.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-17T21:23:32.000Z","updated_at":"2026-02-26T22:31:50.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/pchomik/glint","commit_stats":null,"previous_names":["pchomik/window-border","pchomik/glint"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pchomik/glint","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pchomik%2Fglint","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pchomik%2Fglint/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pchomik%2Fglint/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pchomik%2Fglint/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pchomik","download_url":"https://codeload.github.com/pchomik/glint/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pchomik%2Fglint/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32005837,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["border","glazewm","rust","windows","windows-10","windows-11"],"created_at":"2026-04-19T12:04:15.952Z","updated_at":"2026-04-19T12:04:21.891Z","avatar_url":"https://github.com/pchomik.png","language":"Rust","readme":"# Glint\n\nA lightweight Windows application that draws a visual border around the currently focused window. Designed to work seamlessly with window managers like GlazeWM to provide clear visual feedback on which window has focus.\n\n\u003cimg src=\"https://raw.githubusercontent.com/pchomik/glint/main/docs/preview.png\" width=\"800\" alt=\"Preview\"\u003e\n\n## Features\n\n- **Visual Focus Indicator** - Draws a colored border around the active window\n- **Customizable Appearance** - Adjust border width, corner radius, and color\n- **System Window Filtering** - Automatically ignores system windows (taskbar, start menu, etc.)\n- **Regex-based Filtering** - Exclude specific windows by title or class using regular expressions\n- **Multi-monitor Support** - Works across all monitors\n- **DPI Aware** - Properly scales with monitor DPI settings\n\n## Configuration\n\nThe application reads configuration from `%APPDATA%\\Glint\\config.toml` (i.e., `C:\\Users\\\u003cYourUsername\u003e\\AppData\\Roaming\\Glint\\config.toml`).\n\n### Available Options\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `window_border_width` | integer | `3` | Border width in pixels |\n| `window_border_radius` | integer | `0` | Corner radius in pixels (0 = sharp corners) |\n| `ignored_windows` | array | `[]` | List of regex patterns to match window titles |\n\n### Example Configuration\n\n```toml\n# Window Border Configuration\n\n# Border width in pixels (default: 3)\nwindow_border_width = 4\n\n# Corner radius in pixels (default: 0)\nwindow_border_radius = 8\n\n# Regex patterns for windows to ignore\n# The border will not be drawn for windows matching these patterns\nignored_windows = [\n    \"^Settings$\",\n    \"^Volume Control$\",\n    \"Picture-in-Picture\",\n]\n```\n\n### Configuration Details\n\n\u003cdetails\u003e\n\n\u003csummary\u003ewindow_border_width\u003c/summary\u003e\n\n#### `window_border_width`\n\nSets the thickness of the border around the active window.\n\n- **Type:** Integer\n- **Default:** `3`\n- **Valid Range:** 1-20 pixels\n\n```toml\nwindow_border_width = 5\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\n\u003csummary\u003ewindow_border_radius\u003c/summary\u003e\n\n#### `window_border_radius`\n\nControls the corner radius of the border. Set to `0` for sharp corners.\n\n- **Type:** Integer\n- **Default:** `0`\n- **Valid Range:** 0-50 pixels\n\n```toml\nwindow_border_radius = 10\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\n\u003csummary\u003eignored_windows\u003c/summary\u003e\n\n#### `ignored_windows`\n\nA list of regular expression patterns. Windows with titles matching any of these patterns will not have a border drawn around them.\n\n- **Type:** Array of strings\n- **Default:** Empty array `[]`\n\n```toml\nignored_windows = [\n    # Ignore Windows Settings\n    \"^Settings$\",\n\n    # Ignore Picture-in-Picture windows\n    \"Picture-in-Picture\",\n\n    # Ignore notification popups\n    \"^Notification$\",\n\n    # Ignore specific applications by title\n    \"Notepad\",\n]\n```\n\n\u003c/details\u003e\n\n## Building from Source\n\n### Prerequisites\n\n- [Rust](https://rustup.rs/) (latest stable version)\n- Windows SDK\n- Visual Studio Build Tools (for Windows development)\n\n### Build Instructions\n\n1. **Clone the repository:**\n\n```bash\ngit clone https://github.com/yourusername/glint.git\ncd glint\n```\n\n2. **Build the release version:**\n\n```bash\ncargo build --release\n```\n\n3. **The executable will be located at:**\n\n```\ntarget/release/Glint.exe\n```\n\n### Running in Development\n\nTo run the application in development mode:\n\n```bash\ncargo run\n```\n\n## Integration with GlazeWM\n\nGlint is designed to work as a startup application with [GlazeWM](https://github.com/lars-derichter/glazewm), a tiling window manager for Windows.\n\n### Adding to GlazeWM Configuration\n\nOpen your GlazeWM configuration file located at `%USERPROFILE%\\.glzr\\glazewm\\config.yaml` and add the following:\n\n```yaml\ngeneral:\n  # Commands to run when the WM has started.\n  startup_commands: [\"shell-exec c:\\\\Users\\\\user\\\\.bin\\\\Glint.exe\"]\n\n  # Commands to run just before the WM is shutdown.\n  shutdown_commands: [\"shell-exec taskkill /IM Glint.exe /F\"]\n```\n\n\u003e **Note:** Update the path `c:\\Users\\user\\.bin\\Glint.exe` to match where you've placed the executable.\n\n### Important: Windows SmartScreen Warning\n\nSince this application is not signed and not distributed through the Windows Store, Windows SmartScreen may show a warning when you first run it.\n\n**To approve the application:**\n\n1. Run `Glint.exe` manually for the first time\n2. When Windows shows the SmartScreen warning, click **\"More info\"**\n3. Click **\"Run anyway\"** to approve the binary\n\nOnce you've approved it manually, you can safely add it to your GlazeWM startup commands. Windows will remember your decision for this executable.\n\n## Contributing\n\nContributions are welcome! Whether you want to:\n\n- Report a bug\n- Suggest a new feature\n- Submit a pull request\n- Improve documentation\n\n## License\n\nThis project is licensed under the **GPL-3.0 license** - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- [GlazeWM](https://github.com/lars-derichter/glazewm) - For inspiration and the integration pattern\n- [windows-rs](https://github.com/microsoft/windows-rs) - For the Windows API bindings\n- All contributors who help improve this project\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpchomik%2Fglint","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpchomik%2Fglint","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpchomik%2Fglint/lists"}