From 92a9eb7a3a3ffb14779bfde14393890b0bf2c61d Mon Sep 17 00:00:00 2001 From: Piotr Monwid-Olechnowicz Date: Fri, 14 Nov 2025 13:29:14 +0100 Subject: [PATCH 1/5] Change job name to test --- .github/workflows/check.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 62d01a817c..a0a32f8324 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -26,7 +26,7 @@ jobs: - name: Validate code snippets run: pnpm validate:snippets - playwright: + test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -40,13 +40,16 @@ jobs: - name: Install Dependencies run: pnpm i + - name: Run unit tests + run: pnpm test:unit + # per the docs: "caching browser binaries is not recommended, # since the amount of time it takes to restore the cache is # comparable to the time it takes to download the binaries" - name: Install Playwright Browsers run: ./node_modules/.bin/playwright install --with-deps - - name: Run Playwright tests + - name: Run end-to-end tests run: ./node_modules/.bin/playwright test - uses: actions/upload-artifact@v4 @@ -55,6 +58,3 @@ jobs: name: playwright-report path: playwright-report/ retention-days: 30 - - - name: Run unit tests - run: pnpm test:unit From 904f2e54d9e5b208a692550641c9188d97f8a1af Mon Sep 17 00:00:00 2001 From: Piotr Monwid-Olechnowicz Date: Fri, 14 Nov 2025 13:49:35 +0100 Subject: [PATCH 2/5] Add a button to add events to the UI --- src/app/(main)/community/events/page.tsx | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/src/app/(main)/community/events/page.tsx b/src/app/(main)/community/events/page.tsx index e966fdbbc2..af42675ab4 100644 --- a/src/app/(main)/community/events/page.tsx +++ b/src/app/(main)/community/events/page.tsx @@ -1,5 +1,6 @@ import { Breadcrumbs } from "@/_design-system/breadcrumbs" import { meetups } from "@/components/meetups" +import { Button } from "@/app/conf/_design-system/button" import { MeetupsMap } from "./meetups-map" import { EventsList } from "./events-list" @@ -9,6 +10,10 @@ import { GetYourMeetupNoticedSection } from "./get-your-meetup-noticed-section" import { BringGraphQLToYourCommunity } from "./bring-graphql-to-your-community" import dynamic from "next/dynamic" +// TODO: The issue template should probably live in https://github.com/graphql/community-wg +const ISSUE_TEMPLATE_LINK = + "https://github.com/graphql/graphql.github.io/issues/new?assignees=&labels=event&template=event-submission.yml" + const GalleryStrip = dynamic( () => import("@/app/conf/2025/components/gallery-strip").then( @@ -75,10 +80,20 @@ export default function EventsPage() { {upcomingEvents.length > 0 && (
-

Upcoming events

-

- See what’s coming up across the GraphQL ecosystem. -

+
+
+

Upcoming events

+

+ See what’s coming up across the GraphQL ecosystem. +

+
+ +
)} From e15367a651bc50bd199f1852e39f7079c9dd2a4e Mon Sep 17 00:00:00 2001 From: Piotr Monwid-Olechnowicz Date: Fri, 14 Nov 2025 14:02:46 +0100 Subject: [PATCH 3/5] Add an issue template --- .github/ISSUE_TEMPLATE/event-submission.yml | 89 +++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/event-submission.yml diff --git a/.github/ISSUE_TEMPLATE/event-submission.yml b/.github/ISSUE_TEMPLATE/event-submission.yml new file mode 100644 index 0000000000..cb111130ea --- /dev/null +++ b/.github/ISSUE_TEMPLATE/event-submission.yml @@ -0,0 +1,89 @@ +name: Event submission +description: Share a meetup or conference with the GraphQL community +title: "Event submission: " +labels: + - event +body: + - type: markdown + attributes: + value: > + Tell us about the next moment your corner of the GraphQL ecosystem gathers. + These details feed the Events & Meetups page so more folks can find you and show up. + - type: dropdown + id: event_type + attributes: + label: What kind of gathering is it? + options:desc + - Meetup + - Conference + validations: + required: true + - type: input + id: event_name + attributes: + label: Event name + placeholder: GraphQL Amsterdam + validations: + required: true + - type: textarea + id: event_summary + attributes: + label: What should people expect? + placeholder: A full day of GraphQL deep dives and hallway conversations in Amsterdam. + - type: input + id: event_start + attributes: + label: Start date and time + description: Include the timezone or UTC offset, for example 2025-09-08 09:00 CEST. + placeholder: 2025-09-08 09:00 CEST + validations: + required: true + - type: input + id: event_end + attributes: + label: End date or final session time + description: Useful for multi-day conferences or evening meetups with an end time. + placeholder: 2025-09-10 17:00 CEST + - type: input + id: location + attributes: + label: City and country (or Online) + placeholder: Amsterdam, Netherlands + validations: + required: true + - type: input + id: venue + attributes: + label: Venue or neighborhood + description: Optional context that helps locals plan their trip. + placeholder: Beurs van Berlage + - type: input + id: event_link + attributes: + label: Primary event or registration link + placeholder: https:// + validations: + required: true + - type: input + id: host_name + attributes: + label: Host organization or meetup group + placeholder: GraphQL Foundation + validations: + required: true + - type: input + id: host_link + attributes: + label: Host link + description: Website, meetup page, or social profile. + placeholder: https://www.meetup.com/amsterdam-graphql-meetup/ + - type: input + id: contact + attributes: + label: Contact email or Discord username + placeholder: john.doe@example.com + - type: textarea + id: extras + attributes: + label: Anything else we should know? + description: CFP deadlines, sponsors, accessibility notes, or other context. From 1607067da3a4700d4c1978c15c136d1a9ce61d3c Mon Sep 17 00:00:00 2001 From: Piotr Monwid-Olechnowicz Date: Fri, 14 Nov 2025 14:06:17 +0100 Subject: [PATCH 4/5] Improve the event submission issue template --- .github/ISSUE_TEMPLATE/event-submission.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/event-submission.yml b/.github/ISSUE_TEMPLATE/event-submission.yml index cb111130ea..39284298eb 100644 --- a/.github/ISSUE_TEMPLATE/event-submission.yml +++ b/.github/ISSUE_TEMPLATE/event-submission.yml @@ -7,13 +7,13 @@ body: - type: markdown attributes: value: > - Tell us about the next moment your corner of the GraphQL ecosystem gathers. - These details feed the Events & Meetups page so more folks can find you and show up. + Share your upcoming GraphQL gathering. + These details will be displayed on the Events & Meetups page so more people can find you. - type: dropdown id: event_type attributes: label: What kind of gathering is it? - options:desc + options: - Meetup - Conference validations: From 3a40b7d3e9b3ea7cbc32e0c00d70b16c0c64bcf2 Mon Sep 17 00:00:00 2001 From: Piotr Monwid-Olechnowicz Date: Fri, 14 Nov 2025 14:57:06 +0100 Subject: [PATCH 5/5] Move the issue template to community-wg repo --- .github/ISSUE_TEMPLATE/event-submission.yml | 89 --------------------- src/app/(main)/community/events/page.tsx | 3 +- 2 files changed, 1 insertion(+), 91 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/event-submission.yml diff --git a/.github/ISSUE_TEMPLATE/event-submission.yml b/.github/ISSUE_TEMPLATE/event-submission.yml deleted file mode 100644 index 39284298eb..0000000000 --- a/.github/ISSUE_TEMPLATE/event-submission.yml +++ /dev/null @@ -1,89 +0,0 @@ -name: Event submission -description: Share a meetup or conference with the GraphQL community -title: "Event submission: " -labels: - - event -body: - - type: markdown - attributes: - value: > - Share your upcoming GraphQL gathering. - These details will be displayed on the Events & Meetups page so more people can find you. - - type: dropdown - id: event_type - attributes: - label: What kind of gathering is it? - options: - - Meetup - - Conference - validations: - required: true - - type: input - id: event_name - attributes: - label: Event name - placeholder: GraphQL Amsterdam - validations: - required: true - - type: textarea - id: event_summary - attributes: - label: What should people expect? - placeholder: A full day of GraphQL deep dives and hallway conversations in Amsterdam. - - type: input - id: event_start - attributes: - label: Start date and time - description: Include the timezone or UTC offset, for example 2025-09-08 09:00 CEST. - placeholder: 2025-09-08 09:00 CEST - validations: - required: true - - type: input - id: event_end - attributes: - label: End date or final session time - description: Useful for multi-day conferences or evening meetups with an end time. - placeholder: 2025-09-10 17:00 CEST - - type: input - id: location - attributes: - label: City and country (or Online) - placeholder: Amsterdam, Netherlands - validations: - required: true - - type: input - id: venue - attributes: - label: Venue or neighborhood - description: Optional context that helps locals plan their trip. - placeholder: Beurs van Berlage - - type: input - id: event_link - attributes: - label: Primary event or registration link - placeholder: https:// - validations: - required: true - - type: input - id: host_name - attributes: - label: Host organization or meetup group - placeholder: GraphQL Foundation - validations: - required: true - - type: input - id: host_link - attributes: - label: Host link - description: Website, meetup page, or social profile. - placeholder: https://www.meetup.com/amsterdam-graphql-meetup/ - - type: input - id: contact - attributes: - label: Contact email or Discord username - placeholder: john.doe@example.com - - type: textarea - id: extras - attributes: - label: Anything else we should know? - description: CFP deadlines, sponsors, accessibility notes, or other context. diff --git a/src/app/(main)/community/events/page.tsx b/src/app/(main)/community/events/page.tsx index af42675ab4..1d2821a835 100644 --- a/src/app/(main)/community/events/page.tsx +++ b/src/app/(main)/community/events/page.tsx @@ -10,9 +10,8 @@ import { GetYourMeetupNoticedSection } from "./get-your-meetup-noticed-section" import { BringGraphQLToYourCommunity } from "./bring-graphql-to-your-community" import dynamic from "next/dynamic" -// TODO: The issue template should probably live in https://github.com/graphql/community-wg const ISSUE_TEMPLATE_LINK = - "https://github.com/graphql/graphql.github.io/issues/new?assignees=&labels=event&template=event-submission.yml" + "https://github.com/graphql/community-wg/issues/new?assignees=&labels=event&template=event-submission.yml" const GalleryStrip = dynamic( () =>