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) => ( setActiveYear(year)} - className={`px-6 py-2 rounded-full font-bold text-sm transition-all ${ - activeYear === year - ? "bg-green-deep text-white" - : "border-2 border-white text-white hover:bg-white/20" + key={edition.year} + onClick={() => setActiveYear(edition.year)} + className={`px-6 py-2 rounded-lg font-bold text-sm transition-all duration-300 ${ + activeYear === edition.year + ? "bg-[#1F5506] text-white shadow-[0_4px_12px_rgba(31,85,6,0.3)] border border-[#1F5506]" + : "border border-white/50 text-white hover:bg-white/10" }`} > - {year} + {edition.year} ))} - {/* Gallery grid */} - - {editions[activeYear].map((img, i) => ( - - - - - ))} + {/* Title and Location */} + + + {activeEdition.title} + + + + {activeEdition.location} + + + + {/* Gallery Carousel */} + + + + {activeEdition.images.map((img, i) => ( + + + + + + + ))} + + + + 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()
+ Cada ano, a Python Norte cresce mais. Veja como nossas últimas edições reuniram a comunidade. +
+ + {activeEdition.location} +