Skip to main content
1

Clone the repository

git clone https://github.com/nodejs/create-node-meeting-artifacts.git
cd create-node-meeting-artifacts
2

Install dependencies

npm install
The tool requires Node.js 22 or later. Check your version with node --version. If needed, use a version manager like nvm and run nvm use to pick up the .nvmrc version.
3

Set up environment variables

Copy the example environment file and add your credentials:
cp .env.example .env
Open .env and fill in your tokens:
.env
GITHUB_TOKEN=your_github_personal_access_token
HACKMD_API_TOKEN=your_hackmd_api_token
Never commit your .env file. It is already listed in .gitignore.
4

Run for a meeting group

Pass the meeting group shortname as the first argument. For example, to create artifacts for the TSC:
node --env-file=.env create-node-meeting-artifacts.mjs tsc
The tool will:
  1. Read templates for the tsc group from the templates/ directory
  2. Fetch the TSC calendar to find the next meeting date
  3. Search GitHub for open issues labeled tsc-agenda
  4. Create a HackMD document with the meeting minutes template
  5. Create or update a GitHub issue with the meeting details and HackMD link
5

Preview output without side effects

Use --dry-run to see what the GitHub issue would look like without creating anything:
node --env-file=.env create-node-meeting-artifacts.mjs tsc --dry-run
Dry-run still fetches agenda issues from GitHub (requires a valid GITHUB_TOKEN), but skips all write operations — no GitHub issues or HackMD documents are created.

Expected output

When the tool runs successfully, you’ll see:
Created GitHub issue: https://github.com/nodejs/node/issues/12345
Created HackMD document: https://hackmd.io/AbCdEfGhIj
Both documents are cross-linked: the GitHub issue contains the HackMD link, and the HackMD document contains the GitHub issue URL.

When no meeting is found

If no meeting is scheduled in the next 7 days, the tool exits cleanly:
No meeting found for Node.js TSC in the next week (2025-01-13 to 2025-01-20).
This is expected for bi-weekly meetings or meetings that don't occur every week.
This is normal for groups that meet every other week.

Next steps

Configuration

Configure environment variables and meeting templates.

Adding a Meeting Group

Set up templates for a new Node.js working group.

Dry Run Guide

Learn how to preview meeting artifacts before publishing.

CLI Reference

See all commands, flags, and usage examples.

Build docs developers (and LLMs) love