{"id":16316524,"url":"https://github.com/bizley/timeclock","last_synced_at":"2025-03-15T11:32:12.902Z","repository":{"id":33791542,"uuid":"162297221","full_name":"bizley/timeclock","owner":"bizley","description":"Simple work time clocking service","archived":false,"fork":false,"pushed_at":"2024-04-25T07:08:41.000Z","size":433,"stargazers_count":29,"open_issues_count":3,"forks_count":10,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-05-01T23:25:14.116Z","etag":null,"topics":["clock","hacktoberfest","holidays","register","timeclock","work","yii"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/bizley.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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},"funding":{"github":"bizley"}},"created_at":"2018-12-18T14:05:24.000Z","updated_at":"2024-07-10T08:42:49.975Z","dependencies_parsed_at":"2023-02-15T15:31:44.348Z","dependency_job_id":"cb53e8b1-2a3e-4245-b4a6-144bbae06e92","html_url":"https://github.com/bizley/timeclock","commit_stats":{"total_commits":193,"total_committers":7,"mean_commits":"27.571428571428573","dds":"0.24870466321243523","last_synced_commit":"5a3324c371cd6099b992057f87c3bae4e49cc8de"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bizley%2Ftimeclock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bizley%2Ftimeclock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bizley%2Ftimeclock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bizley%2Ftimeclock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bizley","download_url":"https://codeload.github.com/bizley/timeclock/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243724976,"owners_count":20337656,"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":["clock","hacktoberfest","holidays","register","timeclock","work","yii"],"created_at":"2024-10-10T22:04:53.424Z","updated_at":"2025-03-15T11:32:12.585Z","avatar_url":"https://github.com/bizley.png","language":"PHP","funding_links":["https://github.com/sponsors/bizley"],"categories":[],"sub_categories":[],"readme":"# TimeClock\n\n![Latest Stable Version](https://img.shields.io/packagist/v/bizley/timeclock.svg)\n[![Total Downloads](https://img.shields.io/packagist/dt/bizley/timeclock.svg)](https://packagist.org/packages/bizley/timeclock)\n[![Yii2](https://img.shields.io/badge/Powered_by-Yii_Framework-green.svg?style=flat)](https://www.yiiframework.com/)\n\nSimple work time clocking service built on [Yii 2 framework](https://www.yiiframework.com).\n\n![screen](https://bizley.github.io/timeclock/tc-dark.png)\n\n## Installation\n\n1. Install TimeClock using Composer:\n  \n    `composer create-project --prefer-dist bizley/timeclock timeclock`\n    \n2. Prepare virtual host pointing to `/public` directory.\n3. Prepare configuration for DB of your choice. Place it in `/src/config/db.php`.\n4. Modify the `/src/config/web.php` file to change:\n\n    - `timeZone` (default `UTC`),\n    - `language` (default `en-US`; `pl` and `de` translations are provided in `/src/messages/` folder),\n    - `components \u003e mailer` configuration to actually send emails (needed for password reset),\n    - `components \u003e formatter` configuration of date and time formats,\n    - `params \u003e company` (default `Company Name`; displayed in footer and other layout places),\n    - `params \u003e email` (default `email@company.com`; used as the email sender address for emails),\n    - `params \u003e allowedDomains` (default `['@company.com']`; array with email domains allowed for registration).\n    \n5. Change `/public/index.php` file to set `YII_DEBUG` mode to `false` and `YII_ENV` environment to `prod`.\n6. Apply migrations by running in console `php yii migrate`.\n7. Start webserver and register first account.\n8. If you want to make an account to be admin run in console `php yii admin/set ID` where `ID` is DB identifier of account \n   to be set (usually first one is `1`).\n   \n## Ground rules\n\n- Registering account requires its email address to be in one of the provided domains. If you want to change this behavior \n  you must prepare your own code. Current implementation is at `/src/models/RegisterForm.php` and `/src/views/site/register.php`.\n- Session can be started at any time but it must be ended not overlapping any other ended session.\n- There can be many sessions in one day.\n- Session can not be longer than midnight.\n- Not ended sessions not count for work hours.\n- Off-time must not overlap any other off-time period.\n- Holidays are automatically fetched from `https://www.kalendarzswiat.pl` which is Polish holiday list. If you want to \n  use something different you must prepare your own code for this. Current implementation is at `/src/models/Holiday.php`.\n\n## Features\n\n- account registration\n- password reset\n- profile update\n- themes\n- signing in with login or PIN\n- session time with note\n- off-time with note\n- session and off-time history\n- calendar\n- holidays\n- admin section\n- REST API\n- Bootstrap 4 layout\n\n## New in 2.3.0\n\n- vacations requests\n- projects\n- sessions time CSV download for admins\n- deactivating accounts for admins\n\n## Upgrading from 2.2.1 to 2.3.0\n\n1. Update all the project files to match the repository.\n2. Apply migrations by running in console `php yii migrate`.\n\n## General help\n\nRead [TimeClock Wiki](https://github.com/bizley/timeclock/wiki) first.\n\nFor anything related to Yii go to the [Yii 2 Guide](https://www.yiiframework.com/doc/guide/2.0/en).  \nI really don't want to point obvious links with solutions from there.\n\n## Usage of this project\n\nYou can use this project in whatever way you like as long as you mention where did you get it from.\n\n## Screenshots\n\n![screen2](https://bizley.github.io/timeclock/tc-light.png)\n\n![screen3](https://bizley.github.io/timeclock/tc-sunlight.png)\n\n![screen4](https://bizley.github.io/timeclock/tc-history.png)\n\n![screen5](https://bizley.github.io/timeclock/tc-calendar.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbizley%2Ftimeclock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbizley%2Ftimeclock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbizley%2Ftimeclock/lists"}