Skip to content

Commit cc9682b

Browse files
committed
Remove facilitator section, update dates/registration, add CSV workflow
1 parent 96d70d2 commit cc9682b

File tree

5 files changed

+303
-58
lines changed

5 files changed

+303
-58
lines changed

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
blank_issues_enabled: false
22
contact_links:
3+
- name: "Register for GIT Going with GitHub (March 6–7, 2026)"
4+
url: https://github.com/BITS-ACB/git-going-with-github/issues/new?template=workshop-registration.yml&title=%5BREGISTER%5D+
5+
about: Sign up for the two-day accessible open source workshop by BITS. Free, online, 75 seats.
36
- name: GitHub Skills — Introduction to GitHub
47
url: https://github.com/skills/introduction-to-github
58
about: Interactive module — branches, commits, pull requests, and merge. Mona guides you step by step.
@@ -10,5 +13,5 @@ contact_links:
1013
url: https://github.com/skills/review-pull-requests
1114
about: Interactive module — Mona creates a real PR in your account for you to review.
1215
- name: Workshop Documentation
13-
url: https://github.com/accesswatch/learning-room/blob/main/README.md
16+
url: https://bits-acb.github.io/git-going-with-github/
1417
about: Full workshop guide — start here if you are new to this repository.
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
name: "Workshop Registration — GIT Going with GitHub"
2+
description: "Register for the GIT Going with GitHub workshop (March 6–7, 2026)"
3+
title: "[REGISTER] "
4+
labels: ["registration"]
5+
assignees: []
6+
body:
7+
- type: markdown
8+
attributes:
9+
value: |
10+
## Welcome! You are registering for GIT Going with GitHub.
11+
12+
**Dates:** Friday, March 6 and Saturday, March 7, 2026
13+
**Time:** 12:00 PM — 8:00 PM Eastern (both days)
14+
**Cost:** Free
15+
**Capacity:** 75 participants
16+
17+
Filling out this form is your first GitHub interaction — and it counts. You are already learning. All fields below are accessible with NVDA, JAWS, and VoiceOver.
18+
19+
- type: input
20+
id: first-name
21+
attributes:
22+
label: First Name
23+
description: Your first name as you would like to be addressed during the workshop.
24+
placeholder: Jane
25+
validations:
26+
required: true
27+
28+
- type: input
29+
id: last-name
30+
attributes:
31+
label: Last Name
32+
description: Your last name.
33+
placeholder: Doe
34+
validations:
35+
required: true
36+
37+
- type: input
38+
id: email
39+
attributes:
40+
label: Email Address
41+
description: We will use this to send you Zoom links and workshop materials before the event.
42+
placeholder: jane.doe@example.com
43+
validations:
44+
required: true
45+
46+
- type: input
47+
id: github-username
48+
attributes:
49+
label: GitHub Username
50+
description: "Your GitHub username (the one that appears in your profile URL: github.com/your-username). If you have not created a GitHub account yet, visit github.com/signup first."
51+
placeholder: janedoe
52+
validations:
53+
required: true
54+
55+
- type: dropdown
56+
id: proficiency
57+
attributes:
58+
label: GitHub Proficiency Level
59+
description: How would you describe your current experience with GitHub? There is no wrong answer — this helps us prepare the right level of support for you.
60+
options:
61+
- "Brand new — I have never used GitHub before"
62+
- "Beginner — I have a GitHub account but have not done much with it"
63+
- "Intermediate — I have created repositories, filed issues, or opened pull requests"
64+
- "Experienced — I use GitHub regularly for projects or work"
65+
validations:
66+
required: true
67+
68+
- type: dropdown
69+
id: screen-reader
70+
attributes:
71+
label: Primary Screen Reader
72+
description: Which screen reader do you primarily use? This helps us prepare targeted guidance.
73+
options:
74+
- "NVDA (Windows)"
75+
- "JAWS (Windows)"
76+
- "VoiceOver (macOS)"
77+
- "VoiceOver (iOS)"
78+
- "Other or none"
79+
validations:
80+
required: false
81+
82+
- type: textarea
83+
id: questions
84+
attributes:
85+
label: Questions or Accommodations
86+
description: Any questions about the workshop, or accommodations we should arrange? Leave blank if none.
87+
placeholder: |
88+
I need a sign language interpreter.
89+
Can I attend only Day 1?
90+
I use a refreshable braille display — will that work?
91+
validations:
92+
required: false
93+
94+
- type: markdown
95+
attributes:
96+
value: |
97+
---
98+
**What happens next:** After you submit, you will see a confirmation comment on your issue. We will email your Zoom link before the workshop. If you have questions, email [support@bits-acb.org](mailto:support@bits-acb.org).
99+
100+
Welcome aboard. You belong here.

.github/workflows/registration.yml

Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
name: Registration — Welcome & CSV Export
2+
3+
on:
4+
issues:
5+
types: [opened, edited, labeled]
6+
workflow_dispatch:
7+
8+
permissions:
9+
contents: write
10+
issues: write
11+
12+
jobs:
13+
welcome:
14+
name: Welcome New Registrant
15+
runs-on: ubuntu-latest
16+
if: >-
17+
github.event_name == 'issues' &&
18+
github.event.action == 'opened' &&
19+
contains(github.event.issue.title, '[REGISTER]')
20+
steps:
21+
- name: Post welcome comment
22+
uses: actions/github-script@v7
23+
with:
24+
script: |
25+
await github.rest.issues.createComment({
26+
owner: context.repo.owner,
27+
repo: context.repo.repo,
28+
issue_number: context.issue.number,
29+
body: `## ✅ You are registered for GIT Going with GitHub!
30+
31+
Welcome, @${context.payload.issue.user.login}! Your registration has been received.
32+
33+
**Workshop details:**
34+
- 📅 **Dates:** Friday, March 6 & Saturday, March 7, 2026
35+
- 🕛 **Time:** 12:00 PM — 8:00 PM Eastern (both days)
36+
- 📍 **Location:** Online via Zoom (link will be emailed before the event)
37+
38+
**What to do next:**
39+
1. Complete the [Pre-Workshop Setup Guide](https://bits-acb.github.io/git-going-with-github/docs/00-pre-workshop-setup.html) before March 6
40+
2. Watch for an email with your Zoom join link
41+
3. Questions? Email [support@bits-acb.org](mailto:support@bits-acb.org)
42+
43+
You just filed a GitHub issue — your first open source contribution. Welcome to the community. 🎉`
44+
});
45+
46+
- name: Add registration label
47+
uses: actions/github-script@v7
48+
with:
49+
script: |
50+
try {
51+
await github.rest.issues.addLabels({
52+
owner: context.repo.owner,
53+
repo: context.repo.repo,
54+
issue_number: context.issue.number,
55+
labels: ['registration']
56+
});
57+
} catch (e) {
58+
console.log('Label may already exist:', e.message);
59+
}
60+
61+
export-csv:
62+
name: Export Registrations to CSV
63+
runs-on: ubuntu-latest
64+
if: >-
65+
(github.event_name == 'workflow_dispatch') ||
66+
(github.event_name == 'issues' && contains(github.event.issue.title, '[REGISTER]'))
67+
steps:
68+
- name: Checkout repository
69+
uses: actions/checkout@v4
70+
with:
71+
ref: main
72+
73+
- name: Generate CSV from registration issues
74+
uses: actions/github-script@v7
75+
with:
76+
script: |
77+
const fs = require('fs');
78+
79+
// Fetch all issues with the registration label
80+
const issues = await github.paginate(github.rest.issues.listForRepo, {
81+
owner: context.repo.owner,
82+
repo: context.repo.repo,
83+
labels: 'registration',
84+
state: 'all',
85+
per_page: 100
86+
});
87+
88+
// Parse issue body fields (GitHub YAML forms use ### heading + content pattern)
89+
function parseField(body, fieldName) {
90+
if (!body) return '';
91+
// Match the pattern: ### Field Name\n\nValue
92+
// Also handle ### Field Name\r\n\r\nValue
93+
const regex = new RegExp(`### ${fieldName}\\s*\\n+([\\s\\S]*?)(?=\\n### |$)`, 'i');
94+
const match = body.match(regex);
95+
if (!match) return '';
96+
let value = match[1].trim();
97+
// Remove _No response_ placeholder
98+
if (value === '_No response_') return '';
99+
// Escape CSV: quote fields containing commas, quotes, or newlines
100+
if (value.includes(',') || value.includes('"') || value.includes('\n')) {
101+
value = '"' + value.replace(/"/g, '""') + '"';
102+
}
103+
return value;
104+
}
105+
106+
// Build CSV
107+
const headers = [
108+
'Registration Date',
109+
'GitHub Username',
110+
'First Name',
111+
'Last Name',
112+
'Email Address',
113+
'GitHub Proficiency Level',
114+
'Primary Screen Reader',
115+
'Questions or Accommodations',
116+
'Issue Number',
117+
'Issue URL'
118+
];
119+
120+
let csv = headers.join(',') + '\n';
121+
122+
for (const issue of issues) {
123+
const row = [
124+
issue.created_at.split('T')[0],
125+
issue.user.login,
126+
parseField(issue.body, 'First Name'),
127+
parseField(issue.body, 'Last Name'),
128+
parseField(issue.body, 'Email Address'),
129+
parseField(issue.body, 'GitHub Proficiency Level'),
130+
parseField(issue.body, 'Primary Screen Reader'),
131+
parseField(issue.body, 'Questions or Accommodations'),
132+
issue.number,
133+
issue.html_url
134+
];
135+
csv += row.join(',') + '\n';
136+
}
137+
138+
// Write CSV file
139+
fs.mkdirSync('.github/data', { recursive: true });
140+
fs.writeFileSync('.github/data/registrations.csv', csv, 'utf-8');
141+
console.log(`Exported ${issues.length} registration(s) to .github/data/registrations.csv`);
142+
143+
- name: Commit and push CSV
144+
run: |
145+
git config user.name "github-actions[bot]"
146+
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
147+
git add .github/data/registrations.csv
148+
git diff --cached --quiet && echo "No changes to commit" && exit 0
149+
git commit -m "chore: update registration CSV [skip ci]"
150+
git push

ANNOUNCEMENT.md

Lines changed: 24 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,21 @@
44

55
### A Two-Day Workshop by [BITS (Blind Information Technology Solutions)](http://www.joinbits.org)
66

7-
**Dates:** [EVENT_DATE_DAY1] and [EVENT_DATE_DAY2]
8-
**Time:** 9:00 AM5:00 PM [EVENT_TIMEZONE] (both days)
7+
**Dates:** Friday, March 6, 2026 and Saturday, March 7, 2026
8+
**Time:** 12:00 PM8:00 PM Eastern (both days)
99
**Location:** Online via Zoom
1010
**Cost:** Free
11-
**Capacity:** [MAX_PARTICIPANTS] participants
11+
**Capacity:** 75 participants (limited seats)
1212
**Presented by:** [BITS — Blind Information Technology Solutions](http://www.joinbits.org)
1313

1414
---
1515

16+
> **Registration is open!** [**Register now**](https://github.com/BITS-ACB/git-going-with-github/issues/new?template=workshop-registration.yml&title=%5BREGISTER%5D+) — sign up by filing a GitHub issue. It only takes a minute.
17+
>
18+
> ![Registration Count](https://img.shields.io/github/issues/BITS-ACB/git-going-with-github/registration?label=Registered&color=brightgreen&style=for-the-badge) out of 75 spots
19+
20+
---
21+
1622
## What Is This?
1723

1824
This is a two-day, hands-on workshop where blind and low vision participants learn to navigate, contribute to, and build real open source projects on GitHub — using a screen reader, a keyboard, and nothing else.
@@ -171,34 +177,28 @@ Our [Pre-Workshop Setup Guide](docs/00-pre-workshop-setup.md) walks through ever
171177

172178
## Register
173179

174-
Registration is a two-step process:
175-
176-
### Step 1 — Sign Up Form
177-
178-
Complete the participant sign-up form so we can prepare your workshop materials, create your assigned issues, and pair you with a peer reviewer:
180+
### How to Sign Up
179181

180-
[SIGN_UP_FORM_URL]
182+
Registration works through GitHub Issues — and that is intentional. Filing a GitHub issue is one of the first skills you will learn in this workshop. By registering this way, you are already practicing.
181183

182-
The form asks for:
183-
- Your name and email address
184-
- Your GitHub username (create your account first — see prerequisites above)
185-
- Which screen reader and operating system you use
186-
- Your experience level with GitHub (none is perfectly fine)
187-
- Any accommodations or access needs
184+
> [**Click here to register**](https://github.com/BITS-ACB/git-going-with-github/issues/new?template=workshop-registration.yml&title=%5BREGISTER%5D+) — it takes about one minute.
188185
189-
### Step 2 — Zoom Registration
186+
You will need a free GitHub account to register (see prerequisites above). The form asks for:
187+
- Your first and last name
188+
- Your email address
189+
- Your GitHub username
190+
- Your experience level with GitHub
191+
- Any questions you have before the workshop
190192

191-
Register for the Zoom sessions. You will receive calendar invites and join links after registering.
193+
![Registration Count](https://img.shields.io/github/issues/BITS-ACB/git-going-with-github/registration?label=Registered&color=brightgreen&style=for-the-badge) out of 75 spots
192194

193-
- **Day 1:** [ZOOM_REGISTRATION_URL_DAY1]
194-
- **Day 2:** [ZOOM_REGISTRATION_URL_DAY2]
195+
### Zoom Link
195196

196-
Both days use the same Zoom meeting. The links above will add the sessions to your calendar with reminders.
197+
Zoom join links will be emailed to all registered participants before the workshop.
197198

198199
**Zoom accessibility notes:**
199200
- The Zoom client works well with NVDA, JAWS, and VoiceOver
200-
- We will have live captions enabled throughout
201-
- If you need a sign language interpreter or any other accommodation, note it on the sign-up form and we will arrange it
201+
- If you need a sign language interpreter or any other accommodation, note it in the registration form and we will arrange it
202202

203203
---
204204

@@ -238,16 +238,10 @@ No. The workshop, all software, and all materials are free.
238238

239239
---
240240

241-
## About the Facilitator
242-
243-
[FACILITATOR_NAME] is the creator of Agent Forge and the architect of this workshop. [FACILITATOR_BIO]
244-
245-
---
246-
247241
## Questions?
248242

249-
- Email: [CONTACT_EMAIL]
250-
- File an issue in the [workshop repository]([REPO_URL]) — yes, even before the workshop starts. That counts as practice.
243+
- Email: [support@bits-acb.org](mailto:support@bits-acb.org)
244+
- File an issue in the [workshop repository](https://github.com/BITS-ACB/git-going-with-github) — yes, even before the workshop starts. That counts as practice.
251245
- Join the [GitHub Accessibility Discussions](https://github.com/orgs/community/discussions/categories/accessibility) community
252246

253247
---

0 commit comments

Comments
 (0)