{"id":34713115,"url":"https://github.com/zdimension/ose-auto-calc","last_synced_at":"2026-05-22T20:31:19.556Z","repository":{"id":322686380,"uuid":"1090505155","full_name":"zdimension/ose-auto-calc","owner":"zdimension","description":"Automatically calculates total class hours from ADE-exported ICS files","archived":false,"fork":false,"pushed_at":"2025-12-03T15:41:50.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-12-06T20:28:57.521Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","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/zdimension.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-05T18:54:44.000Z","updated_at":"2025-12-03T15:41:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"d8638f49-d843-4d89-9147-5c4fbd33edde","html_url":"https://github.com/zdimension/ose-auto-calc","commit_stats":null,"previous_names":["zdimension/ose-auto-calc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zdimension/ose-auto-calc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zdimension%2Fose-auto-calc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zdimension%2Fose-auto-calc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zdimension%2Fose-auto-calc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zdimension%2Fose-auto-calc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zdimension","download_url":"https://codeload.github.com/zdimension/ose-auto-calc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zdimension%2Fose-auto-calc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33366518,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-21T12:23:38.849Z","status":"online","status_checked_at":"2026-05-22T02:00:06.671Z","response_time":265,"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":[],"created_at":"2025-12-25T00:50:13.383Z","updated_at":"2026-05-22T20:31:19.544Z","avatar_url":"https://github.com/zdimension.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ose-auto-calc\n\nAutomatically calculates total class hours from ADE-exported ICS files\n\n## Usage \n\nClone the repository and run the script with [uv](https://docs.astral.sh/uv/getting-started/installation/). Replace the URL with yours.\n\n```bash\ngit clone https://github.com/zdimension/ose-auto-calc.git\ncd ose-auto-calc\necho \"ICAL=https://example.com/your.ics\" \u003e .env\nuv run main.py\nuv run main.py --done # to only consider events that have already occurred\n```\n\n## Example Output\n\n```\nProcessed 19 events\nSkipped 19 future events\n\n========================================================================================================================\nHOURS SUMMARY BY CODE\n========================================================================================================================\n\nCode \u0026 Name                                              CM       TD       TP    Total hours     Total HETD\n------------------------------------------------------------------------------------------------------------------------\nEIEL721 - ECUE Programmation orientée objet            7        7        3.5           17.5           19.83\nEIESE762 - ECUE Principes des bases de données        11        3        0             14             19.5\n========================================================================================================================\nTOTAL                                                 18       10        3.5           31.5           39.33\n========================================================================================================================\n```\n\n## Disclaimer\n\nThis tool was 99% written by Claude Sonnet 4.5 Agent. I use it often these days to write simple, one-off scripts, whose sole purpose is one simple task. \n\nThe initial prompt was:\n```\nload ICAL value from .env\nfetch it (it's an ics file)\nparse it\neach event's description contains, at the beginning of its fifth line a code made of capital letters and digits followed by \" - \"\nget it\nthen each event also has in its title either the string \"TP\" or \"TD\" or \"CM\". if more than one appears then it's an error, warn the user.\n\nat the end, you show for each code the total number of hours of each category (TP/TD/CM) and the total number of fiscal hours given than one TP = 2/3 of a fiscal hour, one TD = 1, and one CM = 1.5\n```\nThe rest was esthetic changes to the output format.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzdimension%2Fose-auto-calc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzdimension%2Fose-auto-calc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzdimension%2Fose-auto-calc/lists"}