Skip to content

Commit 7ac328e

Browse files
committed
Developed a GitHub Actions workflow to automate event intake and PR creation. Switch to MarkDown files for event details for easier editing.
1 parent 3abef72 commit 7ac328e

26 files changed

Lines changed: 1018 additions & 10 deletions

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: General PCD discussion
4+
url: https://discourse.processing.org/t/pcd-worldwide-2026/48081
5+
about: Use the forum thread for general questions or discussion about PCD
Lines changed: 214 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,214 @@
1+
name: New Event
2+
description: Submit a new Processing Community Day event for the map.
3+
title: "[New Event]: "
4+
labels:
5+
- New Event
6+
- Needs Review
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
<!-- new-event-template -->
12+
Fill out every required field as completely as possible. Dates must use `YYYY-MM-DD`, times must use 24-hour `HH:MM`, links must include `https://`, and the plus code must be a full global code from `https://plus.codes`.
13+
- type: input
14+
id: event_name
15+
attributes:
16+
label: Event name
17+
description: Public-facing event title as it should appear on the site.
18+
placeholder: PCD @ Example City
19+
validations:
20+
required: true
21+
- type: input
22+
id: city
23+
attributes:
24+
label: City
25+
placeholder: Berlin
26+
validations:
27+
required: true
28+
- type: input
29+
id: country
30+
attributes:
31+
label: Country
32+
placeholder: Germany
33+
validations:
34+
required: true
35+
- type: dropdown
36+
id: region
37+
attributes:
38+
label: Region
39+
options:
40+
- Africa
41+
- Asia
42+
- Europe
43+
- North America
44+
- Oceania
45+
- South America
46+
- Global
47+
validations:
48+
required: true
49+
- type: dropdown
50+
id: event_format
51+
attributes:
52+
label: Event format
53+
description: Hybrid events should choose the primary format and describe the hybrid setup in the full event description.
54+
options:
55+
- In person
56+
- Online
57+
validations:
58+
required: true
59+
- type: input
60+
id: venue
61+
attributes:
62+
label: Venue or platform name
63+
description: Physical venue for in-person events, or platform / host name for online events.
64+
placeholder: Example Venue, Zoom, etc.
65+
validations:
66+
required: true
67+
- type: input
68+
id: address
69+
attributes:
70+
label: Street address
71+
description: Leave blank only for online events or if the venue is still to be determined. This is used for geocoding the map location, so it should be as specific as possible (including street number when available).
72+
placeholder: Jonasstraße 22, 12053 Berlin
73+
- type: input
74+
id: plus_code
75+
attributes:
76+
label: Full global plus code in the format XXXXXXXX+XX
77+
description: Required for map placement. Do not use a shortened local code. Find or verify the plus code for your event location at https://plus.codes.
78+
placeholder: 9F4MFCCM+JF
79+
validations:
80+
required: true
81+
- type: input
82+
id: start_date
83+
attributes:
84+
label: Start date
85+
placeholder: 2026-10-17
86+
validations:
87+
required: true
88+
- type: input
89+
id: end_date
90+
attributes:
91+
label: End date
92+
placeholder: 2026-10-17
93+
validations:
94+
required: true
95+
- type: input
96+
id: start_time
97+
attributes:
98+
label: Start time
99+
description: 24-hour time.
100+
placeholder: 19:00
101+
validations:
102+
required: true
103+
- type: input
104+
id: end_time
105+
attributes:
106+
label: End time
107+
description: 24-hour time.
108+
placeholder: 21:30
109+
validations:
110+
required: true
111+
- type: input
112+
id: timezone
113+
attributes:
114+
label: Timezone abbreviation
115+
placeholder: CET
116+
validations:
117+
required: true
118+
- type: input
119+
id: website
120+
attributes:
121+
label: Event website
122+
placeholder: https://example.org/pcd
123+
validations:
124+
required: true
125+
- type: input
126+
id: contact_email
127+
attributes:
128+
label: Primary contact email
129+
description: Public contact email shown on the event page.
130+
placeholder: hello@example.org
131+
validations:
132+
required: true
133+
- type: input
134+
id: organizing_entity
135+
attributes:
136+
label: Organizing entity
137+
placeholder: Creative Code Berlin
138+
validations:
139+
required: true
140+
- type: textarea
141+
id: organizers
142+
attributes:
143+
label: Organizers
144+
description: One organizer per line. Use `Name <email@example.org>` when possible.
145+
placeholder: |-
146+
Jane Doe <jane@example.org>
147+
Alex Smith <alex@example.org>
148+
validations:
149+
required: true
150+
- type: textarea
151+
id: short_description
152+
attributes:
153+
label: Short description
154+
description: One short summary sentence for the map popup and preview UI.
155+
placeholder: A local celebration of Processing, creative coding, and community practice in Berlin.
156+
validations:
157+
required: true
158+
- type: textarea
159+
id: full_description
160+
attributes:
161+
label: Full event description
162+
description: This becomes the markdown body for the event details page. Use paragraphs, lists, and links as needed.
163+
placeholder: |-
164+
Tell visitors what the event is about, who it is for, and what to expect.
165+
validations:
166+
required: true
167+
- type: input
168+
id: online_url
169+
attributes:
170+
label: Online event URL
171+
description: Required for online events. Leave blank for in-person events.
172+
placeholder: https://zoom.us/j/example
173+
- type: input
174+
id: forum_url
175+
attributes:
176+
label: Forum discussion URL
177+
description: Optional Processing forum thread with updates.
178+
placeholder: https://discourse.processing.org/t/pcd-worldwide-2026/48081
179+
- type: input
180+
id: tags
181+
attributes:
182+
label: Tags
183+
description: Optional comma-separated tags such as workshops, talks, beginners, performance.
184+
placeholder: workshops, talks, beginners
185+
- type: dropdown
186+
id: confirmed
187+
attributes:
188+
label: Is this event already confirmed?
189+
options:
190+
- "Yes"
191+
- "No"
192+
validations:
193+
required: true
194+
- type: input
195+
id: maintainer_name
196+
attributes:
197+
label: Maintainer name
198+
description: Person responsible for keeping this event entry current after publication.
199+
placeholder: Jane Doe
200+
validations:
201+
required: true
202+
- type: input
203+
id: maintainer_email
204+
attributes:
205+
label: Maintainer email
206+
description: Best contact for follow-up about updates to this event entry.
207+
placeholder: jane@example.org
208+
validations:
209+
required: true
210+
- type: textarea
211+
id: maintainer_notes
212+
attributes:
213+
label: Additional notes for maintainers
214+
description: Optional context that should not appear publicly on the map.

0 commit comments

Comments
 (0)