Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/r4ai/class_2_googlecalendar
CLASSの学生時間割表の内容をGoogleCalendarに登録する。
https://github.com/r4ai/class_2_googlecalendar
Last synced: 20 days ago
JSON representation
CLASSの学生時間割表の内容をGoogleCalendarに登録する。
- Host: GitHub
- URL: https://github.com/r4ai/class_2_googlecalendar
- Owner: r4ai
- Created: 2022-09-10T08:38:48.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-21T11:00:00.000Z (9 months ago)
- Last Synced: 2024-04-22T11:58:16.353Z (9 months ago)
- Language: TypeScript
- Homepage:
- Size: 56.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CLASS2GoogleCalendar
CLASS の学生時間割表の内容を GoogleCalendar に登録する。
## Prerequisites
- [Deno](https://deno.land/)
## QuickStart
### カレンダーデータ (iCalender) の作成
次のコマンドを実行する
```sh
deno run --allow-env --allow-read --allow-write https://raw.githubusercontent.com/r4ai/CLASS_2_GoogleCalendar/main/src/main.ts
```以下のように質問が表示されるので、それぞれ入力し、カレンダーデータを生成する。
```
$ deno run --allow-env --allow-read --allow-write https://raw.githubusercontent.com/r4ai/CLASS_2_GoogleCalendar/main/src/main.ts
? 学生時間割表のHTMLファイルのパスを入力してください
Edge ならば適当なところを右クリックし、"名前を付けて保存" から保存できる input.html
? 授業開始日を入力してください 2024-04-11
? 授業終了日を入力してください 2024-08-05
? カレンダーの名前を入力してください 時間割
? 出力形式を選択してください iCalender
? 出力ファイルのパスを指定してください output.icsSuccess! output.ics に時間割のカレンダーデータを出力しました。
```### iCalender の GoogleCalendar へのインポート
"設定" → "インポート/エキスポート" → "インポート" → "パソコンからファイルを選択"
から生成した `output.ics` を選択し、インポートする。CSV で出力した場合も同様にインポートできる。
## Architecture
```mermaid
flowchart TD
html[HTML]
timetable(timetable(時間割を表す木構造))
events(events(イベントの配列))
csv[CSV]
ics[iCalendar]html -->|getTimeTable| timetable
timetable -->|timetable2events| events
events -->|events2csv| csv
timetable -->|timetable2iCal| ics
```