From 042cfd3a271aba4ed4a2c8ff2f384891dd01a47f Mon Sep 17 00:00:00 2001 From: Thalyson Date: Thu, 11 Jun 2026 21:54:54 -0300 Subject: [PATCH 1/2] feat(editions): reorder section and implement dynamic JSON gallery This commit reorders the editions section to be rendered right below the About section, and implements the JSON structure for 2023, 2024, and 2025 editions with corresponding event titles, locations, and image carousels matching the Figma design. --- app/page.tsx | 2 +- components/editions.tsx | 223 ++++++++++++++++++++++++++++++---------- 2 files changed, 172 insertions(+), 53 deletions(-) diff --git a/app/page.tsx b/app/page.tsx index aa5658d..41517a7 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -28,10 +28,10 @@ export default function Home() { }} /> + - diff --git a/components/editions.tsx b/components/editions.tsx index 692afa2..a5de3e9 100644 --- a/components/editions.tsx +++ b/components/editions.tsx @@ -2,79 +2,198 @@ import { useState } from "react"; import Image from "next/image"; +import { MapPin } from "lucide-react"; +import { + Carousel, + CarouselContent, + CarouselItem, + CarouselNext, + CarouselPrevious, +} from "@/components/ui/carousel"; -const editions = { - "2024": [ - { - src: "/assets/gallery/2024/54032804453_cfef802556_b.jpg", - alt: "Python Norte 2024 - 1", - }, - { - src: "/assets/gallery/2024/54032877279_5eaa5ea969_b.jpg", - alt: "Python Norte 2024 - 2", - }, - { - src: "/assets/gallery/2024/54033003810_5a4fa2cd61_b.jpg", - alt: "Python Norte 2024 - 3", - }, - ], - "2025": [ - { src: "/54635610770_b2cbf396d6_b.jpg", alt: "Python Norte 2025 - 1" }, - { src: "/54635537743_e3488aeb89_b.jpg", alt: "Python Norte 2025 - 2" }, - { src: "/53231441451_36d2be88e1_b.jpg", alt: "Python Norte 2025 - 3" }, - ], -}; +interface ImageItem { + src: string; + alt: string; +} + +interface Edition { + year: string; + title: string; + location: string; + images: ImageItem[]; +} + +const editionsData: Edition[] = [ + { + year: "2023", + title: "Python Norte 2023", + location: "UniNorte - Manaus, AM", + images: [ + { + src: "/assets/gallery/2023/53230450217_d5389c2da7_b.jpg", + alt: "Python Norte 2023 - Abertura do evento com palestrantes e participantes", + }, + { + src: "/assets/gallery/2023/53230498102_b4c637890a_b.jpg", + alt: "Python Norte 2023 - Momento de palestra técnica na UniNorte", + }, + { + src: "/assets/gallery/2023/53231330506_247ebe2e89_b.jpg", + alt: "Python Norte 2023 - Networking no credenciamento do evento", + }, + { + src: "/assets/gallery/2023/53231346631_1fe093b598_b.jpg", + alt: "Python Norte 2023 - Auditório lotado com a comunidade engajada", + }, + { + src: "/assets/gallery/2023/53231412486_a64dbe8281_b.jpg", + alt: "Python Norte 2023 - Palestrante compartilhando conhecimentos", + }, + { + src: "/assets/gallery/2023/53231652518_160a6c8306_b.jpg", + alt: "Python Norte 2023 - Oficina prática de programação Python", + }, + { + src: "/assets/gallery/2023/53231714689_894bb89745_b.jpg", + alt: "Python Norte 2023 - Foto oficial da equipe organizadora e voluntários", + }, + { + src: "/assets/gallery/2023/53231857045_0123ab17ed_b.jpg", + alt: "Python Norte 2023 - Encontro das comunidades de tecnologia locais", + }, + { + src: "/assets/gallery/2023/53231941755_7c37d6e477_b.jpg", + alt: "Python Norte 2023 - Encerramento festivo e agradecimentos", + }, + ], + }, + { + year: "2024", + title: "Python Norte 2024", + location: "ICET/UFAM - Itacoatiara, AM", + images: [ + { + src: "/assets/gallery/2024/54032804453_cfef802556_b.jpg", + alt: "Python Norte 2024 - Painel interativo com líderes de tecnologia", + }, + { + src: "/assets/gallery/2024/54032877279_5eaa5ea969_b.jpg", + alt: "Python Norte 2024 - Comunidade participando de discussões e debates", + }, + { + src: "/assets/gallery/2024/54033003810_5a4fa2cd61_b.jpg", + alt: "Python Norte 2024 - Keynote de encerramento no auditório da UFAM", + }, + ], + }, + { + year: "2025", + title: "Python Norte 2025", + location: "Belém, PA", + images: [ + { + src: "/54635610770_b2cbf396d6_b.jpg", + alt: "Python Norte 2025 - Registro geral da comunidade e participantes em Belém", + }, + { + src: "/54635537743_e3488aeb89_b.jpg", + alt: "Python Norte 2025 - Palestrante convidado compartilhando insights", + }, + { + src: "/53231441451_36d2be88e1_b.jpg", + alt: "Python Norte 2025 - Workshop e engajamento da comunidade", + }, + ], + }, +]; export function Editions() { - const [activeYear, setActiveYear] = useState<"2024" | "2025">("2025"); + const [activeYear, setActiveYear] = useState("2025"); + + const activeEdition = + editionsData.find((ed) => ed.year === activeYear) || editionsData[2]; return ( -
-
-
+
+
+
{/* Header */} -
+

Edições que marcaram a comunidade

+
+

+ Cada ano, a Python Norte cresce mais. Veja como nossas últimas edições reuniram a comunidade. +

- {/* Year tabs */} + {/* Year Tabs */}
- {(["2024", "2025"] as const).map((year) => ( + {editionsData.map((edition) => ( ))}
- {/* Gallery grid */} -
- {editions[activeYear].map((img, i) => ( -
- {img.alt} -
-
- ))} + {/* Title and Location */} +
+

+ {activeEdition.title} +

+

+ + {activeEdition.location} +

+
+ + {/* Gallery Carousel */} +
+ + + {activeEdition.images.map((img, i) => ( + +
+ {img.alt} +
+
+ + ))} + + + +
From 220c7edf882f2676d059ae1ff3bbb292ddf67a3a Mon Sep 17 00:00:00 2001 From: Thalyson Date: Thu, 11 Jun 2026 22:06:23 -0300 Subject: [PATCH 2/2] fix(notify): resolve UnboundLocalError on run_id for issue/PR events --- discord/notify.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/discord/notify.py b/discord/notify.py index aeeb961..67309a4 100644 --- a/discord/notify.py +++ b/discord/notify.py @@ -28,6 +28,7 @@ def main(): event_name = os.environ.get("GITHUB_EVENT_NAME", "push") event_path = os.environ.get("GITHUB_EVENT_PATH") github_token = os.environ.get("GITHUB_TOKEN") + run_id = os.environ.get("GITHUB_RUN_ID", "") # Carregar o payload do evento do GitHub event_data = {} @@ -167,7 +168,6 @@ def main(): else: branch = os.environ.get("GITHUB_REF_NAME", "main") sha = os.environ.get("GITHUB_SHA", "") - run_id = os.environ.get("GITHUB_RUN_ID", "") try: commit_message = subprocess.check_output(["git", "log", "-1", "--pretty=%B"]).decode("utf-8").strip()