From 89e64e3d9c13ee4fa9f8be80b8743a9a87dc3be4 Mon Sep 17 00:00:00 2001 From: Sathish Dath Date: Fri, 3 Jul 2026 12:44:03 +0530 Subject: [PATCH 01/14] init --- components/ConferenceThemes.tsx | 27 +- components/Gallery.tsx | 469 +++++++++++----------- components/NavBar.tsx | 375 +++++++----------- components/TimeLine.tsx | 438 ++++++++++++++------- components/table.tsx | 176 ++++----- pages/index.tsx | 662 ++++++++++++++------------------ styles/globals.css | 16 + tailwind.config.js | 4 + 8 files changed, 1114 insertions(+), 1053 deletions(-) diff --git a/components/ConferenceThemes.tsx b/components/ConferenceThemes.tsx index 9b68cd2..542136b 100644 --- a/components/ConferenceThemes.tsx +++ b/components/ConferenceThemes.tsx @@ -64,31 +64,16 @@ const ConferenceThemes = () => {
{/* Section Header */}
-
- - +
+ + - - CSITSS 2026 - + CSITSS 2026
-

+

Conference Themes

-

- Explore the diverse range of topics and research areas covered at - CSITSS 2026 -

{/* Table — Desktop (2-column paired layout) */} diff --git a/components/Gallery.tsx b/components/Gallery.tsx index fb20aee..2bb03ca 100644 --- a/components/Gallery.tsx +++ b/components/Gallery.tsx @@ -1,245 +1,286 @@ -import React, { useState, useEffect } from 'react'; +'use client' +import React, { useState, useEffect, useCallback } from 'react' -const Gallery = () => { - const [selectedImage, setSelectedImage] = useState(null); - const [currentIndex, setCurrentIndex] = useState(0); - const [autoplay, setAutoplay] = useState(true); - - // Image links array - using only a subset of the original images - const imgLinks = [ - '/gallery/image_1.webp', - '/gallery/image_3.webp', - '/gallery/image_5.webp', - '/gallery/image_8.webp', - '/gallery/image_10.webp', - '/gallery/image_15.webp', - '/gallery/image_18.webp', - '/gallery/image_21.webp', - '/gallery/image_24.webp', - ]; - - // Handle thumbnail click - const handleThumbnailClick = (index: number) => { - setCurrentIndex(index); - setAutoplay(false); - }; - - // Handle modal open - const handleModalOpen = (e: React.MouseEvent) => { - e.stopPropagation(); - setSelectedImage(imgLinks[currentIndex]); - }; - - // Handle navigation - const nextSlide = () => { - setCurrentIndex((prevIndex) => - prevIndex === imgLinks.length - 1 ? 0 : prevIndex + 1 - ); - }; - - const prevSlide = () => { - setCurrentIndex((prevIndex) => - prevIndex === 0 ? imgLinks.length - 1 : prevIndex - 1 - ); - }; - - // Extract image number from link - const getImageNumber = (link: string) => { - const match = link.match(/image_(\d+)\.webp/); - return match ? match[1] : ''; - }; - - // Autoplay functionality +const imgLinks = [ + '/gallery/image_1.webp', + '/gallery/image_3.webp', + '/gallery/image_5.webp', + '/gallery/image_8.webp', + '/gallery/image_10.webp', + '/gallery/image_15.webp', + '/gallery/image_18.webp', + '/gallery/image_21.webp', + '/gallery/image_24.webp', +] + +// ── Lightbox ────────────────────────────────────────────────────────────────── +const Lightbox = ({ + index, + onClose, + onPrev, + onNext, +}: { + index: number + onClose: () => void + onPrev: () => void + onNext: () => void +}) => { useEffect(() => { - let interval: NodeJS.Timeout; - - if (autoplay) { - interval = setInterval(() => { - nextSlide(); - }, 4000); + const handler = (e: KeyboardEvent) => { + if (e.key === 'Escape') onClose() + if (e.key === 'ArrowLeft') onPrev() + if (e.key === 'ArrowRight') onNext() } - - return () => { - if (interval) clearInterval(interval); - }; - }, [autoplay, currentIndex]); + window.addEventListener('keydown', handler) + return () => window.removeEventListener('keydown', handler) + }, [onClose, onPrev, onNext]) return ( -
) } + export default Table \ No newline at end of file diff --git a/pages/index.tsx b/pages/index.tsx index a6e95c0..e13b474 100644 --- a/pages/index.tsx +++ b/pages/index.tsx @@ -1,14 +1,12 @@ /* eslint-disable @next/next/no-img-element */ /* eslint-disable @next/next/no-html-link-for-pages */ /* eslint-disable react/no-unescaped-entities */ -// import { Element, ScrollLink } from 'react-scroll' -import HeaderImages from '../components/HeaderImages' import Timeline from '../components/TimeLine' import Gallery from '../components/Gallery' import ConferenceThemes from '../components/ConferenceThemes' import Table from '../components/table' -import { FileText, Award } from 'lucide-react' -// import Marquee from 'react-fast-marquee' +import { FileText, Award, Calendar, Clock, MapPin, Download, Send, ChevronRight, Earth } from 'lucide-react' +import Link from 'next/link' // const image = { // src: 'logo_IEEE_Banaglaore_Section.png', @@ -21,403 +19,327 @@ import { FileText, Award } from 'lucide-react' export default function Index() { return ( <> -
- {/*
- - All of the students register for pre-tutorial conference. Amount to be paid : 590 (Includes GST) - Quick Payment Link - -
*/} -
-
- {' '} - - {/* Connected Date and Welcome Cards */} -
-
- {/* Conference Date Section */} -
-
-
- - - -
-

- Conference Dates -

-

- October 30-31, 2026 -

-
-
+
+ {/* Main Hero Container */} +
+ {/* Left Column (Left Card) */} +
+
+ {/* Tag / Badge Row */} +
+ {/* Badge 1: 10th Edition */} +
+ 10th Edition +
+ {/* Badge 2: IEEE International Conference */} +
+ IEEE International Conference +
+
+ + {/* Styled Conference Label */} +
+ + CSITSS 2026 + +
+ + {/* Serif Title */} +

+ Computational Systems &
+ Information Technology for
+ Sustainable Solutions. +

+ + {/* Highlighted Description */} +
+

+ The 10th IEEE International Conference organised by RV College of Engineering. +

+
+ + {/* Grid of Key Info Box (4 boxes) */} +
+ {/* Box 1: Conference */} +
+
+ +
+
+ CONFERENCE + Oct 30-31, 2026
- {/* Main Welcome Card - Connected */} -
-
-

- WELCOME TO CSITSS-2026 -

-

- 10th International - Conference on Computational -
- Systems and Information Technology for Sustainable - Solutions -

-
- {/*

- CONFERENCE RECORD # 67709 -

*/} -
-
-

- Organized by -

-

- RV College of Engineering - ® -

-
- + {/* Box 2: Paper Deadline */} +
+
+ +
+
+ Past Editions + 9 Successful
+ + {/* Box 3: Venue */} + +
+ +
+
+ VENUE + RVCE, Bengaluru +
+
+ + {/* Box 4: Indexing */} +
+
+ +
+
+ PUBLICATION + IEEE Xplore +
+
+
+ + {/* Action Buttons Row */} +
-
-
-
-

- Organized by{' '} - RV College of Engineering -

-
-
-
- - - -

October 30-31, 2026

-

Date

-
-
- - - -

RV College of Engineering

-

Venue

-
-
- - - -

- 9 successful editions of CSITSS -

+ {/* Bottom Descriptive Action Cards */} +
+ {/* Card 1: Paper Submission Guidelines */} + + +
+ +
+
+ Submission Guidelines + Paper formats & instructions +
+ +
+ + + {/* Card 2: Ph.D Thesis Award */} + + +
+ +
+
+ Ph.D Thesis Award + Apply for Best Ph.D Thesis +
+ +
+ + + {/* Card 3: Download Brochure */} + +
+ +
+
+ Download Brochure + Get detailed conference PDF +
+ +
+ + {/* Card 4: Reach & Contact Us */} + + +
+ +
+
+ Contact & Venue + Connect with organizers & maps +
+ +
+ +
-
- - - -

Global Participation

-

Researchers from Around the World

+ + {/* Right Column (Right Card: Institutions & Partners) */} +
+ {/* Subtitle Row */} +
+ ORGANISED & SUPPORTED BY + + 8 partners + +
+ + {/* Logo Grid */} +
+ {/* Partner 1: RV College of Engineering */} + + RVCE Logo + + + {/* Partner 2: IEEE Bangalore Section */} + + IEEE Bangalore Section Logo + + + {/* Partner 3: IEEE ComSoc */} + + IEEE ComSoc Logo + + + {/* Partner 4: IEEE Sensors Council */} + + IEEE Sensors Council Logo + + + {/* Partner 5: SDU */} + + SDU Logo + + + {/* Partner 6: THWS */} + + THWS Logo + + + {/* Partner 7: TH Rosenheim */} + + TH Rosenheim Logo + + + {/* Partner 8: Fachhochschule Dortmund */} + + FH Dortmund Logo + +
- {/* IEEE Publication Information Section */} -
-
-
-
- - - -
-
-

- Publication in IEEE Xplore -

-

- Accepted papers will be submitted for possible inclusion into - IEEE Xplore subject to meeting IEEE Xplore's scope and quality - requirements -

-
+ {/* ── IEEE Publication Banner ─────────────────────────────────────── */} +
+
+ {/* Icon */} +
+ + + +
+ {/* Text */} +
+

Publication

+

Publication in IEEE Xplore

+

+ Accepted and presented papers will be submitted for possible inclusion into + IEEE Xplore, subject to meeting IEEE Xplore's scope and quality requirements. +

+
+ {/* Chip */} +
+ + + IEEE Xplore + +
- {/* */} -
- -
- {/*
*/} + {/* ── Timeline ────────────────────────────────────────────────────── */} + - +
+ +
+ +
+
-
-
-

- Venue -

+ {/* Section header */} +
+
+ + + + + Venue +
+

+ RV College of Engineering, Bengaluru +

+
-
- {/* Left side with the map */} -
+ {/* Map + Image grid */} +
+ {/* Map */} +