Skip to content

Commit 69670a9

Browse files
alexwolsonclaude
andauthored
Add anonymous post-meetup feedback survey at /feedback/ (#78)
* Add feedback survey design doc * Add feedback survey implementation plan * Configure feedback form token injection for build Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Fix missing trailing newline in .gitignore and quote token in CI injection * Add feedback page with form structure and all questions * Fix rating fieldset semantics, option whitespace, and alert roles Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Add inline rating row style for feedback form * Add conditional question visibility and submit-enable JS * Add GitHub API submission to feedback form * Fix timestamp consistency and add parseInt radix in feedback form JS Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Add aria-labelledby to conditional sections and update CSS header date * Redesign feedback form with civic editorial aesthetic Replaces default Pico styling with a custom "The Public Square" design: - DM Serif Display + DM Sans typography via Google Fonts - Warm cream/white card layout with Toronto red (#C8102E) accent - Radio groups converted to pill toggle buttons - Rating scales converted to square numbered buttons with serif numerals - Conditional sections use CSS max-height transitions (replaces hidden attr) - Custom details/summary expanders with +/− toggle - Intro text moved to front matter excerpt for clean layout rendering Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Replace meetup dropdown with Tuesday-only date picker Removes the dependency on the archives submodule for the feedback form. Instead of a dropdown limited to meetups in the archives, uses a date input defaulting to the most recent Tuesday. step=7 with a Tuesday min restricts the browser calendar to Tuesdays; JS validates on change as a fallback. Stores hacknight_date (ISO date string) instead of meetup_number in the submitted JSON. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Use Pico CSS variables for feedback form colours and remove custom fonts Removes Google Fonts (DM Serif Display, DM Sans) and all custom --fb-* colour variables. Replaces them with --pico-primary, --pico-card-background-color, --pico-muted-*, etc. so the form matches the site's pumpkin theme and respects dark/light mode automatically. Success/error states keep hardcoded semantic colours (green/red) as Pico has no equivalent variables for these. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Add follow-up questions for maybe/no responses on would_return When a first-timer selects Maybe, asks "What's giving you pause?". When they select No, asks "What put you off?". Both slide in inline below the pill buttons. Response stored as would_return_reason in the new_attendee JSON object. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Tone down would_return follow-up question labels Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Unify form label typography for consistency All question labels/legends now share the same style: 0.875rem, 600 weight, --pico-color. Removes all-caps and muted-color treatment from the date picker label and expander body labels, normalises the followup label size, drops primary colour from the conditional section heading, and fixes two broken --fb-muted variable references. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Make public storage of responses explicit and prominent Adds a left-bordered notice banner at the top of the form and updates the page excerpt subtitle to both state that responses are anonymous but stored in a public GitHub repository. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Replace 5-point ratings with labelled 3-point scale, remove optional labels, centre form - Swap all seven 1–5 numeric rating scales for 3-option pill buttons with descriptive text labels (e.g. Not great / Good / Great), removing the need for hint text and making stored responses self-explanatory - Fix button hover behaviour so rating buttons match pill buttons - Fix grammatically awkward "Poor" option for AV quality question - Remove "(optional)" labels from expander headings and privacy note — every field on the form is optional - Centre the form wrapper on wider screens with margin: 0 auto Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Fix YAML syntax error in feedback token injection step Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * Rename hacknight to meetup in feedback survey page and docs --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 48170a9 commit 69670a9

8 files changed

Lines changed: 1689 additions & 7 deletions

File tree

.github/workflows/pages.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,12 @@ jobs:
7272
# chmod +x _scripts/thumbnail_sizes.sh
7373
# ./_scripts/thumbnail_sizes.sh
7474

75+
- name: Inject feedback token
76+
run: |
77+
echo "feedback_token: \"$FEEDBACK_TOKEN\"" >> _config.yml
78+
env:
79+
FEEDBACK_TOKEN: ${{ secrets.FEEDBACK_TOKEN }}
80+
7581
# Outputs to the './_site' directory by default
7682
- name: Build Jekyll site
7783
run: |

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,7 @@ _site
1414

1515
# Ruby vendor directory
1616
vendor/bundle
17-
.bundle
17+
.bundle
18+
19+
# Local config override (contains secrets)
20+
_config.local.yml

Makefile

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,21 @@ all: serve
1111
install:
1212
bundle install
1313

14-
# Start Jekyll server
14+
# Start Jekyll server (uses _config.local.yml if present)
1515
serve:
16-
$(JEKYLL) serve
16+
@if [ -f _config.local.yml ]; then \
17+
$(JEKYLL) serve --config _config.yml,_config.local.yml; \
18+
else \
19+
$(JEKYLL) serve; \
20+
fi
1721

1822
# Start Jekyll server with incremental regeneration
1923
serve-incremental:
20-
$(JEKYLL) serve --incremental
24+
@if [ -f _config.local.yml ]; then \
25+
$(JEKYLL) serve --incremental --config _config.yml,_config.local.yml; \
26+
else \
27+
$(JEKYLL) serve --incremental; \
28+
fi
2129

2230
# Generate category and tag data
2331
generate-data:

_config.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,12 @@ author:
44
email: hi@civictech.ca
55

66
description: >-
7-
Civic Tech Toronto is a vibrant and diverse community of Torontonians engaged
8-
in understanding and creating solutions for civic challenges through technology,
7+
Civic Tech Toronto is a vibrant and diverse community of Torontonians engaged
8+
in understanding and creating solutions for civic challenges through technology,
99
design, and other innovative means.
1010
11+
feedback_token: ""
12+
1113
baseurl: ""
1214
github_username: civictechto
1315

0 commit comments

Comments
 (0)