You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+24-25Lines changed: 24 additions & 25 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,13 +1,14 @@
1
1
# Node.js Meeting Artifacts Creator
2
2
3
-
A modern Node.js application that creates GitHub issues and Google Docs for Node.js team meetings. This tool automates the process of reading meeting configuration, fetching calendar events, creating meeting minutes documents, and posting GitHub issues.
3
+
A modern Node.js application that creates GitHub issues and HackMD documents for Node.js team meetings. This tool automates the process of reading meeting configuration, fetching calendar events, creating meeting minutes documents, and posting GitHub issues.
4
4
5
5
## 📋 Requirements
6
6
7
7
- Node.js 22+ (LTS)
8
8
- GitHub Personal Access Token
9
-
- Google Cloud Project with Calendar and Drive APIs enabled
10
-
- OAuth credentials or Service Account credentials
9
+
- Google Cloud Project with Calendar API enabled (for meeting scheduling)
10
+
- Google API Key for Calendar access
11
+
- HackMD API Token (for meeting minutes)
11
12
12
13
## 🔑 Authentication Setup
13
14
@@ -18,23 +19,25 @@ A modern Node.js application that creates GitHub issues and Google Docs for Node
18
19
-`repo` (Full control of private repositories)
19
20
-`user` (Read user information)
20
21
21
-
### Google Authentication
22
+
### HackMD Authentication
22
23
23
-
#### Option 1: OAuth (for local development)
24
+
1. Go to [HackMD](https://hackmd.io/) and sign in to your account
25
+
2. Navigate to Account Settings > API Tokens
26
+
3. Create a new API token for the meeting artifacts tool
27
+
4. Optionally, create or join a team workspace for better organization
24
28
25
-
1. Go to [Google Cloud Console](https://console.cloud.google.com/)
26
-
2. Create a new project or select an existing one
27
-
3. Enable the Google Calendar API and Google Drive API
#### Option 2: Service Account (for GitHub Actions)
31
+
#### API Key Authentication (Recommended)
32
32
33
33
1. Go to [Google Cloud Console](https://console.cloud.google.com/)
34
34
2. Create a new project or select an existing one
35
-
3. Enable the Google Calendar API and Google Drive API
36
-
4. Create a Service Account and generate JSON key file
37
-
5. Add credentials to environment variables
35
+
3. Enable the Google Calendar API
36
+
4. Go to **Credentials** → **Create Credentials** → **API Key**
37
+
5. Restrict the API key to the Google Calendar API for security
38
+
6. Add the API key to your environment variables as `GOOGLE_API_KEY`
39
+
40
+
**Note:** API Keys provide simplified authentication and are sufficient for read-only calendar access. They don't require complex OAuth flows or service account setup.
Copy file name to clipboardExpand all lines: TEMPLATES_DOCUMENTATION.md
+19-1Lines changed: 19 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,8 @@
1
1
This document contains empty versions of each template needed to successfully create meeting artifacts for a Committee, Working Group, Initiative, or Team. These documents need to go in the [/templates](./templates) directory in this repository.
2
2
3
-
There are only four variables in the documents that _need_ to be changed:
3
+
## Template Variables
4
+
5
+
There are several variables in the documents that need to be configured:
4
6
5
7
-**`<name>`:** The name of the Committee, Working Group, Initiative, or Team that meeting artifacts are being created for.
6
8
-**`<shortname>`:** The abbreviated or shortened name for a group, used in each filename to connect associated files together.
@@ -11,6 +13,22 @@ There are only four variables in the documents that _need_ to be changed:
11
13
-**`<issue-label>`:** an optional label for the created issue itself.
12
14
-**`<observer>`:** Name of an observer in a group's meetings.
13
15
16
+
## Meeting Properties Reference
17
+
18
+
The following properties are available in meeting base templates and can be used in meeting issue generation:
19
+
20
+
-**`CALENDAR_FILTER`:** The name of calendar events that mark the group's meeting date/time
21
+
-**`CALENDAR_ID`:** The Google Calendar ID for the Node.js calendar (typically `nodejs.org_nr77ama8p7d7f9ajrpnu506c98@group.calendar.google.com`)
22
+
-**`USER`:** The GitHub username/organization (typically `nodejs`)
23
+
-**`REPO`:** The repository name where meeting issues are created
24
+
-**`GROUP_NAME`:** The full name of the Committee, Working Group, Initiative, or Team
25
+
-**`AGENDA_TAG`:** The label used to search for agenda items in GitHub issues and PRs
26
+
-**`HOST`:** Meeting host information
27
+
-**`JOINING_INSTRUCTIONS`:** Instructions for joining the meeting (Zoom links, YouTube streams, etc.)
28
+
-**`ISSUE_LABEL`:** Optional label to apply to the created meeting issue
29
+
30
+
These properties are defined in the `meeting_base_<shortname>` template files and are substituted when generating meeting issues.
31
+
14
32
# Invited
15
33
16
34
The [GitHub Team](https://help.github.com/articles/about-teams/) to invite. The @mention should be a GitHub Team whose members are all invidiuals who are always invited.
0 commit comments