{"id":18037956,"url":"https://github.com/quantumsheep/myges-cli","last_synced_at":"2025-06-12T11:03:19.495Z","repository":{"id":42284581,"uuid":"246599155","full_name":"quantumsheep/myges-cli","owner":"quantumsheep","description":"CLI for MyGES","archived":false,"fork":false,"pushed_at":"2023-02-11T10:37:59.000Z","size":797,"stargazers_count":30,"open_issues_count":7,"forks_count":6,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-06-01T14:10:37.673Z","etag":null,"topics":["esgi","myges","ppa","reseau-ges"],"latest_commit_sha":null,"homepage":null,"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/quantumsheep.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":"2020-03-11T14:51:20.000Z","updated_at":"2025-02-06T12:45:34.000Z","dependencies_parsed_at":"2023-02-18T03:46:04.633Z","dependency_job_id":null,"html_url":"https://github.com/quantumsheep/myges-cli","commit_stats":{"total_commits":158,"total_committers":7,"mean_commits":"22.571428571428573","dds":0.240506329113924,"last_synced_commit":"fa4fab41fe9fdc0456791959dd06229486e13bf1"},"previous_names":[],"tags_count":26,"template":false,"template_full_name":null,"purl":"pkg:github/quantumsheep/myges-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quantumsheep%2Fmyges-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quantumsheep%2Fmyges-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quantumsheep%2Fmyges-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quantumsheep%2Fmyges-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/quantumsheep","download_url":"https://codeload.github.com/quantumsheep/myges-cli/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/quantumsheep%2Fmyges-cli/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259406088,"owners_count":22852510,"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":["esgi","myges","ppa","reseau-ges"],"created_at":"2024-10-30T13:14:23.463Z","updated_at":"2025-06-12T11:03:19.434Z","avatar_url":"https://github.com/quantumsheep.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MyGES CLI\n\nA Command Line Interface replacement for MyGES ([Réseau GES](http://www.reseau-ges.fr/)' Extranet).\n\n# How to install\nYou need to have [npm](https://www.npmjs.com/get-npm) installed.\n```bash\nnpm i -g myges\n```\n\n# Usage\n**Authenticate with `myges login`** (only needed once).\n```bash\nmyges help\n```\n```\nUsage: myges [options] [command]\n\nOptions:\n  -V, --version                     output the version number\n  -d, --debug                       debug mode\n  -h, --help                        display help for command\n\nCommands:\n  absences [options] [year]         list absences\n  agenda [options] [week]           fetch agenda\n  calendar-sync [days]              sync myges calendar with Google Calendar\n  contribute                        show useful links\n  courses [options] [year]          list courses\n  grades [options] [year]           list grades\n  login [options]                   sign in to an account\n  logout [options]                  remove the saved auth informations\n  projects                          manage projects\n  request [options] \u003cmethod\u003e \u003curl\u003e  make a request to the API\n```\n\n## Agenda\nThe `agenda` command is a little special since it offers diverse options in order to ease its use.\n\n### Listing weeks\nYou can list and select the week to display by using the `-i` option (alias of `--interactive`).\n\n### Manual week selection\nIt's possible to manually specify the wanted week. Here's some possibilities:\n- `myges agenda 19-03-2020` -\u003e Shows the week from last Sunday to next Sunday of the date `19-03-2020`\n- `myges agenda 19-03` -\u003e Shows the week from last Sunday to next Sunday of `March 19` of the current year\n- `myges agenda 19` -\u003e Shows the week from last Sunday to next Sunday of the day `19` of the current month and year\n- `myges agenda today` -\u003e Displays today's agenda\n- `myges agenda tomorrow` -\u003e Displays tomorrow's agenda\n- `myges agenda yesterday` -\u003e Displays yesterday's agenda\n\nA shifting can be added to the specified week:\n- `myges agenda today+2` -\u003e Shows the agenda of 2 days from today\n- `myges agenda today+-2` -\u003e Shows the agenda of 2 days ago from today\n\nThose shifts can be applied to any manual week input using the same format (`+n`).\n\n## Project management\nUsing the CLI, you can list available projects and project groups.\nYou can also join or quit a project group.\n\n- `myges projects` -\u003e List available projects\n- `myges project \u003cid\u003e` -\u003e Give information about the selected project (replace *`\u003cid\u003e`* by the actual group's id given in the projects list)\n- `myges project \u003cid\u003e groups` -\u003e List available groups for the specified project\n- `myges project \u003cid\u003e join [group]` -\u003e Join a group. You can specify the group by replacing the optional *`[group]`* argument, else it will prompt a selector\n- `myges project \u003cid\u003e quit` -\u003e Quit the current group you're in. A confirmation will be required before executing the request\n\n## Calendar Sync\n\nThis command allows you to syncronize your calendar on goocle calendar (and thus no longer use the myges planning!).\n\n- `myges calendar-sync \u003cdays\u003e` -\u003e Sync google calendar from today to given number of days\n- `myges calendar-sync --reset_credentials` -\u003e Reset google credentials and ask it again\n- `myges calendar-sync --reset_calendar` -\u003e Reset google calendar ID and ask it again\n- You need to setup few things before using this script.\n\n### Setup Google API\n\nTo make the script work, you need to create a google calendar API and save its information like this :\n\n* Go to [https://developers.google.com/calendar/quickstart/php](https://developers.google.com/calendar/quickstart/php)\n* Create a Google Calendar API project\n\n|                                           |                                           |\n| ----------------------------------------- | ----------------------------------------- |\n| ![image](https://i.imgur.com/xZkQC03.png) | ![image](https://i.imgur.com/QVQ6vH2.png) |\n| ![image](https://i.imgur.com/AmHIOfb.png) |                                           |\n\n* Save the `credentials.json` file, you will need information inside it at first time.\n\n![image](https://i.imgur.com/XxVO6z5.png)\n\n### Create new Google Calendar\n\n\u003e :warning: Be sure to create a calendar dedicated ONLY to your schedule! Otherwise the script will delete the other events present in your calendar ...\n\nTo retrieve your calendar id:\n\n* Go to https://calendar.google.com\n\n* Go to \"Settings and sharing\" of the calendar dedicated to your planning\n  ![image](https://i.imgur.com/QAZPssf.png)\n\n* You will find the id of your calendar in the section \"Integrate the calendar\"\n  ![image](https://i.imgur.com/1p0Ra2q.png)\n\n### First launch\n\nAt the first launch, you will be asked to enter the various information that you have configured before.\n\nIf this is the first connection, follow the terminal's instructions to retrieve the `google connection token`\n\n\u003e When you click on the Google url, don't forget to copy the given authorization token and paste it into the CLI\n\n\n  ![image-20211121185850513](images/README/image-20211121185850513.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquantumsheep%2Fmyges-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fquantumsheep%2Fmyges-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquantumsheep%2Fmyges-cli/lists"}