{"id":25602800,"url":"https://github.com/tigger04/streak-notify","last_synced_at":"2025-10-07T19:05:28.197Z","repository":{"id":278334162,"uuid":"935278057","full_name":"tigger04/streak-notify","owner":"tigger04","description":"Streak Notify CLI: A lightweight Python application that displays text notifications with smooth fade-in and fade-out animations in a floating window.  It is designed to be centred - a little bit \"in your face\" for persistent reminders for example, but should disappear quickly","archived":false,"fork":false,"pushed_at":"2025-02-19T08:13:56.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-19T08:28:17.443Z","etag":null,"topics":["growl","hud","notifier","pyqt5","python3","stealth","streaker"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tigger04.png","metadata":{"files":{"readme":"README.org","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}},"created_at":"2025-02-19T07:30:49.000Z","updated_at":"2025-02-19T08:13:59.000Z","dependencies_parsed_at":"2025-02-19T08:39:18.646Z","dependency_job_id":null,"html_url":"https://github.com/tigger04/streak-notify","commit_stats":null,"previous_names":["tigger04/streak-notify"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigger04%2Fstreak-notify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigger04%2Fstreak-notify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigger04%2Fstreak-notify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tigger04%2Fstreak-notify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tigger04","download_url":"https://codeload.github.com/tigger04/streak-notify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240056025,"owners_count":19741058,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["growl","hud","notifier","pyqt5","python3","stealth","streaker"],"created_at":"2025-02-21T17:24:07.514Z","updated_at":"2025-10-07T19:05:28.148Z","avatar_url":"https://github.com/tigger04.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"* Streak Notify CLI\n\nA lightweight Python application that displays text notifications with smooth fade-in and fade-out animations in a floating window.\n\nIt is designed to be centred - a little bit \"in your face\" for persistent reminders for example, but should disappear quickly enough to not be too much in the way or interrupt you from that thing yo uwere doing.\n\nLike a streaker on the pitch - now you see him, now you don't quite trust your memory, was he really there? He's gone!\n\n** Features\n\n- Transparent, frameless window display\n- Smooth fade-in and fade-out animations\n- Configurable display duration and animation timing\n- Customizable appearance (font, colors, padding, corner radius)\n- Always-on-top window behavior\n- Centred screen positioning\n\n** Why Python?\nWell modern SwiftUI on MacOS doesn't let you do anything fun like a persistent canvas on top of all othe windows. Always easier to implmenent in other languages like Lua and Python simply because their integration libraries are written in Objective-C which is not deliberatly crippled like Apple's new toy SwiftUI is essentially an amputee and I feel its neuropathic pain.\n\n** Requirements\n\n- Python 3.x\n- PyQt5\n\n** Installation\n\n1. Clone this repository\n2. Create a Python virtual environment\n3. Install the required dependencies:\n\n#+begin_src bash\npython3 -m venv .\nsource ./bin/activate\npip install -r requirements.txt\n#+end_src bash\n\n** Usage\n\nThe application reads text from standard input (STDIN) and displays it as a notification. \n\nExample usage:\n#+begin_src bash\necho \"Hello World!\" | python streak.py\n#+end_src\n\nAlthough we have a nice shell script to handle the virtual env:\n\n#+begin_src bash\nls -l | streak\n#+end_src\n\nYou can symlink the shell script to work from wherever you keep your usual CLI scripts:\n\n#+begin_src bash\nln -svrn ./streak ~/bin\n#+end_src\n\n** Configuration\n\nThe following parameters can be adjusted in the script:\n\n*** Display timing\n- =DISPLAY_TIME_MS=: Duration to show the text (default: 3000ms)\n- =FADE_IN_TIME_MS=: Fade in duration (default: 1000ms)\n- =FADE_OUT_TIME_MS=: Fade out duration (default: 2000ms)\n\n*** Appearance\n- =FONT_FAMILY=: Font to use (default: \"Tequila\")\n- =FONT_SIZE=: Text size (default: 28)\n- =BACKGROUND_COLOR=: Window background color with opacity\n- =TEXT_COLOR=: Text color\n- =PADDING_PX=: Padding around text (default: 20px)\n- =CORNER_RADIUS_PX=: Corner rounding (default: 15px)\n\n** Where did you get that lovely font?\n[[https://github.com/tigger04/tigger-fonts][My stupid Tequila font is here]] under the SIL Open Font license.\n\n** Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n** License\n\nMIT FTW\n\n** TODO Roadmap if I ever get around to it\n- Make the config parameters for display timing and appearance *configurable via CLI switches* (currently these are vars at the top of the Python script)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftigger04%2Fstreak-notify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftigger04%2Fstreak-notify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftigger04%2Fstreak-notify/lists"}