{"id":21028778,"url":"https://github.com/jgmdev/infocus","last_synced_at":"2026-03-13T08:32:05.151Z","repository":{"id":150318489,"uuid":"118507496","full_name":"jgmdev/infocus","owner":"jgmdev","description":"Automatic activity time tracker application.","archived":false,"fork":false,"pushed_at":"2018-11-08T01:06:50.000Z","size":501,"stargazers_count":5,"open_issues_count":2,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-08T06:40:43.287Z","etag":null,"topics":["activities","automatic","daemon","php","time-tracker"],"latest_commit_sha":null,"homepage":null,"language":"PHP","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/jgmdev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2018-01-22T19:56:02.000Z","updated_at":"2018-11-08T01:06:52.000Z","dependencies_parsed_at":"2023-04-04T12:48:00.893Z","dependency_job_id":null,"html_url":"https://github.com/jgmdev/infocus","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/jgmdev/infocus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jgmdev%2Finfocus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jgmdev%2Finfocus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jgmdev%2Finfocus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jgmdev%2Finfocus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jgmdev","download_url":"https://codeload.github.com/jgmdev/infocus/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jgmdev%2Finfocus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30462270,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-13T06:34:02.089Z","status":"ssl_error","status_checked_at":"2026-03-13T06:33:49.182Z","response_time":60,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["activities","automatic","daemon","php","time-tracker"],"created_at":"2024-11-19T11:59:04.557Z","updated_at":"2026-03-13T08:32:05.132Z","avatar_url":"https://github.com/jgmdev.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# InFocus\n\nAutomatic activity time tracker application.\n\n![InFocus Logo](https://raw.githubusercontent.com/jgmdev/infocus/master/static/images/logo.png)\n\n**OS:** Linux\n**License:** GPLv3\n**Status:** Beta\n\n## About\n\nInFocus is an automatic activity time tracker that monitors the currently\nfocused window and stores the amount of time spent on it on a daily basis.\nThe application was developed as a way to monitor my self, and rises from\nthe concern that I may be trashing significant amounts of time on stuff that\ndoesn't matters. So InFocus should help in the auto-evaluation of our daily\nwork on the computer making it easier to make decisions concerning our daily\nschedule.\n\n## Installation\n\nThe application is developed in PHP and makes use of php's built-in webserver\nto host the user interface and uses chromium or firefox as a medium\nto display the web interface. Currently the --app flag of chromium is employed\nto get an experience more similar to that of a typical application.\n\nBefore using the application you have to fetch the composer dependencies by\ndoing:\n\n```shell\ncd infocus\ncomposer install\n```\n\n**Dependencies**\n\n* php - for interface and activity logger\n* php-sqlite - the php pdo extension to store activity data\n* chromium - to display the user interface (recommended)\n* firefox - to display the user interface (optional)\n* xprop - get active window\n* wmctrl - information of active windows\n* xprintidle - detect if the person is away from keyboard\n\nIf installing directly to system as root user:\n\n```shell\ncd infocus\n./install.sh\n```\n\nThe ./install.sh shell script also supports de DESTDIR environment flag, which\ncan be used to easily package the application for distribution by distro\npackagers.\n\n```shell\ncd infocus\nDESTDIR=~/infocus/install ./install.sh\n```\n\n### Uninstallation\n\n```shell\ncd infocus\n./install.sh remove\n```\n\n## Usage\n\nTo start tracking your daily activity is needed to launch the infocus logger\nby enabling the systemd infocus service for your user account.\n\n```shell\nsystemctl --user enable infocus\nsystemctl --user start infocus\n```\n\nThis will track all the applications that you use and how much time you spent\non them. This information is stored on a sqlite database located on:\n\n\u003e ~/.config/InFocus/activity_log.db\n\nThe web interface can then be launched from the applications menu.\n\n## CLI Usage\n\nFor help on the available infocus commands, at your shell just invoke:\n\n```shell\ninfocus help\n```\n\n## Screenshots\n\n**Overview**\n![overview](https://raw.githubusercontent.com/jgmdev/infocus/master/screenshots/overview.png)\n\n**Applications**\n![applications](https://raw.githubusercontent.com/jgmdev/infocus/master/screenshots/applications.png)\n\n**Activities**\n![activities](https://raw.githubusercontent.com/jgmdev/infocus/master/screenshots/activities.png)\n\n**Inactivity**\n![inactivity](https://raw.githubusercontent.com/jgmdev/infocus/master/screenshots/inactivity.png)\n\n**Preferences**\n![preferences](https://raw.githubusercontent.com/jgmdev/infocus/master/screenshots/preferences.png)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjgmdev%2Finfocus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjgmdev%2Finfocus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjgmdev%2Finfocus/lists"}