{"id":16746710,"url":"https://github.com/mkon/rippling-cli","last_synced_at":"2025-04-10T13:43:27.280Z","repository":{"id":65446566,"uuid":"589021277","full_name":"mkon/rippling-cli","owner":"mkon","description":"Command line interface to Rippling HR","archived":false,"fork":false,"pushed_at":"2025-03-17T22:30:52.000Z","size":186,"stargazers_count":6,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-24T12:21:50.326Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","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/mkon.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}},"created_at":"2023-01-14T20:00:49.000Z","updated_at":"2024-11-14T10:06:04.000Z","dependencies_parsed_at":"2024-10-26T22:38:42.953Z","dependency_job_id":"cdccafdb-d5e4-49fb-bc33-5648b64aaf50","html_url":"https://github.com/mkon/rippling-cli","commit_stats":{"total_commits":69,"total_committers":3,"mean_commits":23.0,"dds":0.07246376811594202,"last_synced_commit":"7443d10a4ad7bec44e240bb3c8b03df51206f406"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkon%2Frippling-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkon%2Frippling-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkon%2Frippling-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mkon%2Frippling-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mkon","download_url":"https://codeload.github.com/mkon/rippling-cli/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248226335,"owners_count":21068185,"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":[],"created_at":"2024-10-13T02:08:11.378Z","updated_at":"2025-04-10T13:43:27.257Z","avatar_url":"https://github.com/mkon.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rippling-cli\nCommand line interface to Rippling HR.\n\n## Installation\n\nYou can either compile it yourself, but it requires rust ecosystem with `cargo`.\n\n```bash\ncargo install --git https://github.com/mkon/rippling-cli.git\n```\n\nAlternatively you can download a binary [release](https://github.com/mkon/rippling-cli/releases). At least on MacOS you probably will have to clear the quarantine flag after downloading to make it executable:\n\n```\nxattr -d com.apple.quarantine rippling-cli\n```\n\n## Usage\n\n\u003e **Disclaimer:** This tool persists access token readable on your disk, so it can run commands without authenticating every time. Use it only on a machine that is always under your control.\n\nRippling uses a weird client-side password hashing which I do not want to replicate. Thus the only way to make this tool work is to extract your access token from the Rippling web application. This is fairly simple with web inspector. Simply log in into Rippling Web UI, and check in local storage for the access token. It should be valid for a fairly long time. Once you have the token, simply run:\n```bash\nrippling-cli configure access-token \u003cyour-access-token\u003e\n```\n\nAfterwards you should be able to use this CLI for around a month from my experience.\n\nSee all available commands with `rippling-cli help`:\n\n### Available Commands\n\n```\nUsage: rippling-cli \u003cCOMMAND\u003e\n\nCommands:\n  configure    Configure this client\n  status       Clock-in Status\n  clock-in     Clock In\n  clock-out    Clock Out\n  start-break  Start a break\n  end-break    Continue after a break\n  manual       Manually add entry for a day\n  help         Print this message or the help of the given subcommand(s)\n\nOptions:\n  -h, --help     Print help\n  -V, --version  Print version\n```\n\n#### Command manual\n\n```\nManually add entry for a day\n\nUsage: rippling-cli manual [OPTIONS] [RANGES]...\n\nArguments:\n  [RANGES]...  \n\nOptions:\n  -d, --days-ago \u003cDAYS_AGO\u003e  Defaults to 0 (today)\n  -c, --check                Before submitting check for overlap with holidays, weekends or PTO\n  -y, --yes                  Bypass prompt with a yes answer\n  -h, --help                 Print help\n```\n\nExample: `rippling-cli manual 8:30-17`\n\nWill add an entry from **8:30** to **17:00** with the German statutory breaks in the middle, in this case a 30min break from **12:30** to **13:00**. The statutory break is 30min when working over 6hrs, and 45min when working over 9hrs. The minimum valid break is 15min, so when adding an entry like `8-14:05` it will use a 15min break and not 5min.`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmkon%2Frippling-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmkon%2Frippling-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmkon%2Frippling-cli/lists"}