{"id":13571403,"url":"https://github.com/yinkakun/wakatime-github-commit","last_synced_at":"2025-04-12T09:32:16.579Z","repository":{"id":53979966,"uuid":"521920786","full_name":"yinkakun/wakatime-github-commit","owner":"yinkakun","description":"A serverless function that auto commits your daily total time tracked on Wakatime to Github. Using Netlify Scheduled Functions, Github GraphQL API, and Wakatime API.","archived":false,"fork":false,"pushed_at":"2022-08-09T01:14:01.000Z","size":32,"stargazers_count":23,"open_issues_count":2,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-31T11:51:43.688Z","etag":null,"topics":["github-api","netlify-functions","serverless","wakatime"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/yinkakun.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-06T10:54:39.000Z","updated_at":"2024-01-04T17:10:56.000Z","dependencies_parsed_at":"2022-08-13T05:40:39.530Z","dependency_job_id":null,"html_url":"https://github.com/yinkakun/wakatime-github-commit","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yinkakun%2Fwakatime-github-commit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yinkakun%2Fwakatime-github-commit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yinkakun%2Fwakatime-github-commit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yinkakun%2Fwakatime-github-commit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yinkakun","download_url":"https://codeload.github.com/yinkakun/wakatime-github-commit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223510342,"owners_count":17157306,"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":["github-api","netlify-functions","serverless","wakatime"],"created_at":"2024-08-01T14:01:01.721Z","updated_at":"2024-11-07T12:04:08.880Z","avatar_url":"https://github.com/yinkakun.png","language":"TypeScript","readme":"# Wakatime Stats Github Commit\n\nAuto commit your daily total time tracked on Wakatime to Github. Using Netlify Scheduled Functions, Github GraphQL API, and Wakatime API.\n\n## Setup\n\n1. Fork this repository.\n\n2. You'll need a [WakaTime API Key](https://wakatime.com/settings/api-key), which you can get from your WakaTime Account Settings. Store the token somewhere secure, we'll need it shortly.\n\n3. You'll need a GitHub Personal Access Token with `repo` and `admin:repo_hook` scope which can be generated [here](https://github.com/settings/tokens). Store the token somewhere secure, we'll need it shortly.\n\n4. Import Repo to Netlify - Go to the [Netlify Dashboard page](https://app.netlify.com), Click the `Add New Site` \u003e `Import An Existing Project` \u003e `GitHub` button. Authorize the app to access your GitHub account then choose the cloned repo. Add required environment variables, Click the `Show Advanced` \u003e `New Variable` button. Add these variables:\n\n```env\nWAKATIME_API_KEY=\u003cyour-wakatime-api-key\u003e\nGITHUB_ACCESS_TOKEN=\u003cyour-github-access-token\u003e\nREPO_NAME=\u003cthe-cloned-repo-name\u003e\nGITHUB_USERNAME=\u003cyour-github-username\u003e\n```\n\nThen click the `Deploy Site` button. Go to the `Functions` tab of the dashboard and click the `Enable Scheduled Functions` button. After a few seconds, your function should be successfully deployed.\n\n## Local Development\n\n```bash\n# Install the Netlify CLI\nnpm install -g netlify-cli.\n\n# Login to netlify\nnetlify login\n\n# Clone the repository and navigate to project directory\ngit clone\n\n# Start the functions server\nnetlify functions:serve\n\n# Function will be available at\nhttp://localhost:9999/.netlify/functions/log-tracked-time\n\n\n# For typescript project, before committing the files, run:\ntsc --noEmit\n```\n\nTODO\n\n- Filter duplicate dates\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyinkakun%2Fwakatime-github-commit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyinkakun%2Fwakatime-github-commit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyinkakun%2Fwakatime-github-commit/lists"}