{"id":23501300,"url":"https://github.com/hitblast/trimsec","last_synced_at":"2025-10-06T22:33:45.942Z","repository":{"id":269283917,"uuid":"906956947","full_name":"hitblast/trimsec","owner":"hitblast","description":"Track saved time when you watch your videos with multipliers on.","archived":false,"fork":false,"pushed_at":"2025-09-25T06:58:07.000Z","size":468,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-25T08:42:38.410Z","etag":null,"topics":["cargo","cli-app","cli-tool","command-line-tool","rust","rust-lang","time-management","time-tracker"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/trimsec","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/hitblast.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-12-22T12:18:31.000Z","updated_at":"2025-09-25T06:58:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"e509972c-0162-4c27-9b3f-dfaaaad610b4","html_url":"https://github.com/hitblast/trimsec","commit_stats":null,"previous_names":["hitblast/trimsec"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/hitblast/trimsec","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitblast%2Ftrimsec","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitblast%2Ftrimsec/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitblast%2Ftrimsec/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitblast%2Ftrimsec/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hitblast","download_url":"https://codeload.github.com/hitblast/trimsec/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hitblast%2Ftrimsec/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278691706,"owners_count":26029319,"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","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["cargo","cli-app","cli-tool","command-line-tool","rust","rust-lang","time-management","time-tracker"],"created_at":"2024-12-25T07:14:58.918Z","updated_at":"2025-10-06T22:33:45.937Z","avatar_url":"https://github.com/hitblast.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"assets/sprite.png\" width=\"200px\" align=\"right\"\u003e\n\n# \u003cimg src=\"https://raw.githubusercontent.com/github/explore/80688e429a7d4ef2fca1e82350fe8e3517d3494d/topics/rust/rust.png\" width=\"40px\"\u003e trimsec\n\n[![Unit Tests](https://github.com/hitblast/trimsec/actions/workflows/tests.yml/badge.svg)](https://github.com/hitblast/trimsec/actions/workflows/tests.yml)\n[![Release Builds](https://github.com/hitblast/trimsec/actions/workflows/release.yml/badge.svg)](https://github.com/hitblast/trimsec/actions/workflows/release.yml)\n\nCalculate time saved on using speed multipliers.\n\n## Table of Contents\n\n- [Overview](#overview)\n- [Usage](#usage)\n- [Installation](#installation)\n  - [cargo](#cargo)\n  - [mise](#mise)\n- [Manual Installation](#manual-installation)\n- [License](#license)\n\n## Overview\n\nI wanted a simple solution to calculate how much time I could save by using speed multipliers during lectures.\nBut, I did not want to hop onto the browser or even open up the calculator, or even do mind-maths for this.\nThus, I tried making a simple solution which lives in the terminal.\n\n## Usage\n\nTo calculate saved time, you run the trim command as follows:\n\n```bash\n$ trimsec trim \u003cduration\u003e \u003cspeed\u003e\n```\n\nHere, `\u003cduration\u003e` represents the length of the video you are watching (using\nany combination of `\u003cdays\u003ed`, `\u003chours\u003eh`, `\u003cminutes\u003em`, and `\u003cseconds\u003es`), and\n`\u003cspeed\u003e` is the speed multiplier; a float that can optionally be\nsuffixed with an `x` (for example, both `1.5x` and `1.5` are valid). For\ninstance, if you are watching a 1-hour video at 2x speed, execute:\n\n```bash\n$ trimsec trim 1h 2x\n```\n\nThis command outputs the time you saved by watching the video at 2x speed. You\ncan also combine multiple duration indicators and apply floating-point\nmultipliers, such as:\n\n```bash\n$ trimsec trim 1h30m 1.5x\n```\n\nFor convenience, in some cases you might use floating-point numbers for the\nduration itself. For example:\n\n```bash\n# Equivalent to `2h 1.5x`.\n$ trimsec trim 1.5h30m 1.5x\n```\n\nIf you wish to calculate saved time for multiple durations at once using the\nsame speed multiplier, separate the durations with a '+' sign:\n\n```bash\n$ trimsec trim 1h30m+2h50m 1.25x\n```\n\nEach of these commands follows a consistent pattern for specifying durations and multipliers.\n\nIn addition to calculating saved time, every trim command interacts with a “time\nbank” that logs the total amount of saved time per day in a JSON file. To manage\nthis time bank, you have several options:\n\n- To display the current saved time for each day, use:\n\n```bash\n$ trimsec bank show\n```\n\n- To reset the time bank, run:\n\n```bash\n$ trimsec bank reset\n```\n\n- And if you want to know the absolute path to the time bank file, simply execute:\n\n```bash\n$ trimsec bank path\n```\n\n---\n\n## Installation\n\n### cargo\n\n```bash\n$ cargo install trimsec\n```\n\n### mise\n\n```bash\n$ mise use -g cargo:trimsec\n```\n\n## Manual Installation\n\nStandalone binaries for this project are all available at the [GitHub\nReleases](https://github.com/hitblast/trimsec/releases) page. The binaries are\nproduced by automated GitHub Actions workflows on three distinct runners and\nshould run on all their respective platforms.\n\nFor manual building, proceed with the following:\n\n```bash\n# Clone the repository.\n$ git clone https://github.com/hitblast/trimsec.git\n$ cd trimsec\n\n# Output: target/release/trimsec\n$ cargo build --release\n```\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhitblast%2Ftrimsec","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhitblast%2Ftrimsec","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhitblast%2Ftrimsec/lists"}