diff --git a/index.html b/index.html index 47d343b..19a4a0d 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ - Transfiniite'23 + Transfinitte'23
diff --git a/package.json b/package.json index 6779c3a..8705234 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,9 @@ "@mantine/carousel": "5.10.5", "@mantine/core": "5.10.5", "@mantine/hooks": "5.10.5", + "@mantine/notifications": "5.10.5", "@mui/material": "^5.14.7", + "@tabler/icons-react": "^2.36.0", "embla-carousel-autoplay": "7.0.0", "embla-carousel-react": "7.0.0", "framer-motion": "^10.16.4", diff --git a/src/App.jsx b/src/App.jsx index 585566c..b2f9cef 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,5 +1,6 @@ import Router from './Router' import { MantineProvider } from '@mantine/core'; +import { NotificationsProvider } from '@mantine/notifications'; function App() { @@ -7,7 +8,10 @@ function App() { return ( <> - + + + + ) diff --git a/src/Components/AboutUs/index.jsx b/src/Components/AboutUs/index.jsx index 6a734e2..82135ab 100644 --- a/src/Components/AboutUs/index.jsx +++ b/src/Components/AboutUs/index.jsx @@ -1,12 +1,16 @@ import "./styles.css"; import { Carousel } from '@mantine/carousel'; import { Image, createStyles } from "@mantine/core"; -import hack from "../../assets/hack.png"; +import Carousel1 from "../../assets/Carousel1_11zon.jpg"; +import Carousel2 from "../../assets/Carousel2_11zon.jpg"; +import Carousel3 from "../../assets/Carousel3_11zon.jpg"; +import Carousel4 from "../../assets/Carousel4_11zon.jpg"; + import Autoplay from "embla-carousel-autoplay"; import { useRef } from 'react'; import {motion} from "framer-motion"; -const images = [hack,hack,hack]; +const images = [Carousel1,Carousel2,Carousel3,Carousel4]; const useStyles = createStyles((_theme, _params, getRef) => ({ controls: { @@ -39,7 +43,7 @@ const AboutUs = () => {
About Us - Welcome to TransfiNITTe, the pinnacle of innovation and technology hosted by the Technical Council of the National Institute of Technology, Tiruchirappalli, in collaboration with SCIENT, the Student Centre for Innovation in Engineering and Technology-NITT. Our journey began with a vision to foster creativity, push boundaries, and redefine possibilities. As we gear up for our fifth edition, TransfiNITTe'23 promises to be an electrifying experience like never before. TransfiNITTe'22 was a testament to the unyielding spirit of innovation. With over 50 teams and 300+ brilliant minds from NIT Trichy, it was a 42-hour marathon of coding, ideation, and relentless problem-solving. Together, we tackled challenges spanning a diverse array of software and hardware domains. TransfiNITTe'23 aspires to raise the bar even higher. With a goal of hosting 100+ teams and 500+ participants, we are set to create history once again. For us, this event is not just about innovation; it's about forging meaningful partnerships, driving change, and celebrating the magic that happens when brilliant minds unite. + Welcome to TransfiNITTe, the flagship hackathon of NITT hosted by the Technical Council of the National Institute of Technology, Tiruchirappalli, in collaboration with SCIENT, the Student Centre for Innovation in Engineering and Technology-NITT. Our journey began with a vision to foster creativity, push boundaries, and redefine possibilities. As we gear up for our fifth edition, TransfiNITTe'23 promises to be an electrifying experience like never before.

TransfiNITTe'22 was a testament to the unyielding spirit of innovation. With over 50 teams and 300+ brilliant minds from NIT Trichy, it was a 42-hour marathon of coding, ideation, and relentless problem-solving. Together, we tackled challenges spanning a diverse array of software and hardware domains.

TransfiNITTe'23 aspires to raise the bar even higher. With a goal of hosting 100+ teams and 500+ participants, we are set to create history once again. For us, this event is not just about innovation; it's about forging meaningful partnerships, driving change, and celebrating the magic that happens when brilliant minds unite.
{ return ( @@ -10,21 +12,47 @@ const Contact = () => {

Contact

-

Phone No : 123456789

-

Email : 123@gmail.com

+ +
+

{window.open("mailto:technicalcouncil@pragyan.org")}}/>technicalcouncil@pragyan.org

+
+ +
+ +

96706 64115 Akash

+
+
+ +

93808 72847 Jairam

+
+
+ +

77609 42275 Bandavya

+
+ + +

Problem Statements

- 2022 archive
- 2021 archive
- 2020 archive + {window.open( + 'https://drive.google.com/file/d/1PcIjK3qWJYjgxCiBnXAnTdjH5rwDA2KU/view?usp=sharing', + '_blank' // <- This is what makes it open in a new window. +);}}>2022 archive
+ +

Address

Orion, Lecture Hall

NIT Trichy

Social

- Twitter
- Instagram
- LinkedIn
+ {window.open( + 'https://www.instagram.com/tc_nitt/?hl=en', + '_blank' // <- This is what makes it open in a new window. +);}}> + {window.open( + 'https://www.linkedin.com/company/technical-council-nit-trichy/mycompany/', + '_blank' // <- This is what makes it open in a new window. +);}}>
@@ -32,7 +60,7 @@ const Contact = () => { TRANSFINITTE
- +
) diff --git a/src/Components/FaQs/index.jsx b/src/Components/FaQs/index.jsx index c3e6024..5025675 100644 --- a/src/Components/FaQs/index.jsx +++ b/src/Components/FaQs/index.jsx @@ -53,36 +53,73 @@ const FaQs = () => { defaultValue="customization" classNames={classes} className={classes.root}> - - Customization - Colors, fonts, shadows and many other parts are customizable to fit your design needs + + What is TransfiNITTe? + TransfiNITTe is a 42-hour weekend event where students collaborate on innovative software and hardware projects. - - - Flexibility - Configure components appearance and behavior with vast amount of settings or overwrite any part of component styles + + How does the application process work? + To apply, you need to find your team and fill out the registration form. Following your submission, you will receive information on payment and will be added to a group where further details will be shared. - - - No annoying focus ring - With new :focus-visible pseudo-class focus ring appears only when user navigates with keyboard + + What should I bring with me to TransfiNITTe? + The main items to bring are your computer, charger, and if necessary, an adapter. + + + What are the different domains of this hackathon? + TransfiNITTe covers various domains, including web development, app development, cybersecurity, blockchain, machine learning, and more, encompassing both software and hardware projects. + + + What skills are required to take part in this hackathon? I don't have any experience; what can I do? + While having domain-specific skills like web development or blockchain can be helpful, you can still participate and learn even if you don't have prior experience. + + + I don't have much experience in technical stuff. Can I still take part in it? + Yes, TransfiNITTe welcomes participants with basic knowledge, and you can use this hackathon as a learning experience. + + + Will we need to work round the clock? + Yes, TransfiNITTe is a 42-hour long hackathon, and participants are expected to work continuously. However, there will be breaks for lunch, snacks, and dinner. - - No annoying focus ring - With new :focus-visible pseudo-class focus ring appears only when user navigates with keyboard + + Will there be any participation fees? + Yes, there will be participation fees, and you will receive details about the fees during the application process. - - No annoying focus ring - With new :focus-visible pseudo-class focus ring appears only when user navigates with keyboard + + Do we need to have the entire idea fully working? + No, you don't need to have the entire idea fully working, but points will be awarded based on the functionality level of your project. It is advised to complete the task to the best of your ability. - - No annoying focus ring - With new :focus-visible pseudo-class focus ring appears only when user navigates with keyboard + + Does only the team leader have to register, or do each team member need to apply separately? + Only the team leader needs to register for the team. Team members do not need to apply separately. - - No annoying focus ring - With new :focus-visible pseudo-class focus ring appears only when user navigates with keyboard + + Can I take part in the hackathon in online mode? + No, TransfiNITTe is conducted in offline mode, meaning physical presence is required. + + How many teams or people take part in TransfiNITTe? + TransfiNITTe typically hosts around 50 teams, with each team consisting of 4-6 members. + + + What will be the judging criteria? + The specific judging criteria have not been decided yet, but they will be communicated to participants during the hackathon. + + + Will there be any support available during the hackathon? + Yes, there will be some support available, but it's advisable not to rely entirely on it. Participants are encouraged to be self-reliant and resourceful. + + + Will there be wireless internet access? + TransfiNITTe will be held in Orion, so participants are expected to use their own internet connections. + + + Are we allowed to use third-party components like open-source libraries, etc., to implement a solution? Are there any limitations on components? + In general, there are no limitations on using third-party components like open-source libraries. However, some problem statements may have their own restrictions, so participants should check the specific guidelines provided for each task. + + + +
diff --git a/src/Components/Judges/index.jsx b/src/Components/Judges/index.jsx index 455cc66..3ed87f1 100644 --- a/src/Components/Judges/index.jsx +++ b/src/Components/Judges/index.jsx @@ -1,5 +1,14 @@ import "./styles.css"; import logo from "../../assets/logo.svg"; +import anand from "../../assets/anand.jpg"; +import kumar from "../../assets/kumar.jpg"; +import anirudh from "../../assets/anirudh.jpg"; +import ayush from "../../assets/ayush.jpeg"; +import rakesh from "../../assets/rakesh.jpg"; +import abishake from "../../assets/abishake.jpg"; +import subash from "../../assets/subash.jpg"; +import ram from "../../assets/Ram.jpg"; + import {motion} from "framer-motion"; @@ -7,65 +16,89 @@ const Judges = () => { return (
-
Judges & Speakers
+
Judges
-
SOFTWARE
-
TECHNICAL COUNCIL
-
NIT TRICHY TECH COUNCIL
+
HARDWARE
+
Anand Kumar
+
SOC design Engineering manager at Intel
- logo + logo
- +
SOFTWARE
-
TECHNICAL COUNCIL
-
NIT TRICHY TECH COUNCIL
+
Anirudh R
+
Software Engineer at Oracle
- logo + logo
-
- +
+
+
SOFTWARE
-
TECHNICAL COUNCIL
-
NIT TRICHY TECH COUNCIL
+
Ayush Singh
+
Software Engineer at Microsoft
- logo + logo
-
- +
+
+
SOFTWARE
-
TECHNICAL COUNCIL
-
NIT TRICHY TECH COUNCIL
+
Ram Sreevaths
+
Software Developer at Oracle
- logo + logo +
+
+
+ +
+
HARDWARE
+
Kumar Nandan
+
SOC Technical Design Lead at Intel
+
+ logo
SOFTWARE
-
TECHNICAL COUNCIL
-
NIT TRICHY TECH COUNCIL
+
Rayapalli Rakesh
+
Software Engineer at Oracle
- logo + logo
SOFTWARE
-
TECHNICAL COUNCIL
-
NIT TRICHY TECH COUNCIL
+
Abishake A
+
SMT at D.E. Shaw, India
+
+ logo +
+
+
+ +
+
SOFTWARE
+
Subash
+
Analyst at Goldman Sachs
- logo + logo
+
+
); diff --git a/src/Components/Judges/styles.css b/src/Components/Judges/styles.css index 944ae84..617e9a1 100644 --- a/src/Components/Judges/styles.css +++ b/src/Components/Judges/styles.css @@ -76,11 +76,17 @@ -webkit-background-clip: text; -webkit-text-fill-color: transparent; } + + .info{ + display: flex; + flex-direction: column; + justify-content: space-around; + } .title { flex-shrink: 0; font-family: Syne; - font-size: 1.5rem; + font-size: 1.3rem; font-style: normal; font-weight: 700; line-height: normal; diff --git a/src/Components/Landing/index.jsx b/src/Components/Landing/index.jsx index 65f8108..e88f746 100644 --- a/src/Components/Landing/index.jsx +++ b/src/Components/Landing/index.jsx @@ -44,7 +44,10 @@ const Landing = () => {

Innovation Knows No Bounds

- +
diff --git a/src/Components/Sponsors/index.jsx b/src/Components/Sponsors/index.jsx index deb3e5e..4e71f61 100644 --- a/src/Components/Sponsors/index.jsx +++ b/src/Components/Sponsors/index.jsx @@ -1,6 +1,16 @@ -import logo from "../../assets/logo.svg"; +import boeing from "../../assets/boeing.png"; +import charged from "../../assets/charged.png"; +import crewsphere from '../../assets/crewsphere.png'; +import gfg from "../../assets/gfg.png"; +import tezos from "../../assets/tezos.png"; +import netcon from "../../assets/netcon.png"; +import abhibus from "../../assets/abhibus.png"; +import pathway from "../../assets/pathway.png"; + + + import {motion} from "framer-motion"; import "./sponsors.css"; @@ -14,19 +24,33 @@ const Sponsors = () => {
Sponsors
- - - - - - - - - - - +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+
diff --git a/src/Components/Sponsors/sponsors.css b/src/Components/Sponsors/sponsors.css index 0e4ce7e..fc758c9 100644 --- a/src/Components/Sponsors/sponsors.css +++ b/src/Components/Sponsors/sponsors.css @@ -5,14 +5,17 @@ text-align: center; } + + .imageHolder img{ /* border: 1px solid white; */ padding: 1rem; - width: 5rem; - margin-left: 2rem; - margin-right: 2rem; - margin-bottom: 2rem; - border: 1px solid #f5bffb; + width: 7rem; + /* height: 5rem; */ + margin-left: 3rem; + margin-right: 3rem; + margin-bottom: 0.5rem; + /* border: 1px solid #f5bffb; */ border-radius: 0.5rem; } @@ -22,11 +25,11 @@ .imageHolder img{ /* border: 1px solid white; */ padding: 1rem; - width: 2rem; - margin-left: 0.5rem; - margin-right: 0.5rem; + width: 6rem; + margin-left: 1rem; + margin-right: 1rem; margin-bottom: 1rem; - border: 1px solid #f5bffb; + /* border: 1px solid #f5bffb; */ border-radius: 0.5rem; } } \ No newline at end of file diff --git a/src/Components/Timeline/index.jsx b/src/Components/Timeline/index.jsx index 49b324f..1cc3ecc 100644 --- a/src/Components/Timeline/index.jsx +++ b/src/Components/Timeline/index.jsx @@ -2,21 +2,32 @@ import { VerticalTimeline, VerticalTimelineElement } from 'react-vertical-timeline-component'; import 'react-vertical-timeline-component/style.min.css'; import "./timeline.css"; +import { Text,Title } from '@mantine/core'; +import {IconCircleCheck,IconBrowserCheck, IconConfetti, IconDeviceLaptop, IconChefHat,IconCoffee,IconMicrophone2, IconGrill, IconAnalyze, IconPresentation, IconAward} from "@tabler/icons-react"; const TimeLine = () => { return ( -
+

TimeLine

+

The provided timeline is tentative and subject to change as necessary.

+
+
+ 27th October +
+ -

sdfdsfdsf

+ + 5:00 PM - Check In + +
{ contentArrowStyle={{ borderRight: '7px solid rgba(255,255,255,0.05)' }} iconStyle={{ background: '#0E153A', color: '#fff', 'fontsize':'200px',boxShadow: "0 0 0 4px #f5bffb, inset 0 2px 0 rgba(0,0,0,.08), 0 3px 0 4px rgba(0,0,0,.05)"}} > -

sdfdsfdsf

+ + 5:30 PM - Opening Ceremony and Inauguration
-

sdfdsfdsf

+ + 6:30 PM - Hack Starts
-

sdfdsfdsf

+ + 8:00PM - Dinner +
+ +
+ +
28th October
+ + + + + + 8:00 AM - Breakfast + + + + + + + 11:00 AM - Speaker Session 1 -

sdfdsfdsf

+ + 12:30 PM - Lunch + +
+ + + 2:00 PM - Speaker Session 2 + + + + 5:30PM - Review -

sdfdsfdsf

+ + 8:00PM - Dinner
+
29th October
+ + + + + + 8:00 AM - Breakfast + + + + + + + 10:30 AM - Hackathon Ends + + + + + + + 11:00 AM - Judging Starts + + + + + 7:00 PM - Closing Ceremony + + diff --git a/src/Components/Timeline/timeline.css b/src/Components/Timeline/timeline.css index de6b06a..3d9e8cd 100644 --- a/src/Components/Timeline/timeline.css +++ b/src/Components/Timeline/timeline.css @@ -7,4 +7,26 @@ .vertical-timeline::before{ background: #f5bffb; -} \ No newline at end of file +} + +.daytimeline{ + text-align: center; +} + +.vertical-timeline-element-content{ + font-size: 1.5rem; +} + +@media only screen and (max-width: 600px) { + .daytimeline h1{ + text-align: left; + margin-left: 1rem; + font-size: 1.6rem; + } + .vertical-timeline-element-content{ + font-size: 1rem; + margin-left: 3rem; + margin-right: 1rem; + } + } + diff --git a/src/Pages/Register/index.jsx b/src/Pages/Register/index.jsx index 402839f..4eb28b6 100644 --- a/src/Pages/Register/index.jsx +++ b/src/Pages/Register/index.jsx @@ -1,37 +1,135 @@ import React, { useState } from "react"; -import { Select, TextInput } from "@mantine/core"; - +import { Select, TextInput,BackgroundImage, Text } from "@mantine/core"; +import logo from "../../assets/logo.svg"; +import qr from "../../assets/Akash_UPI.jpeg"; +import bg from "../../assets/bg.png"; +import { showNotification,updateNotification } from '@mantine/notifications'; +import { IconCheck, IconBook2 } from "@tabler/icons-react"; +import {motion} from "framer-motion"; import "./register.css"; +import { Checkbox } from '@mantine/core'; + const Register = () => { - const [name, setName] = useState(""); - const [rollNo, setRollNo] = useState(""); + const [teamLeaderName, setTeamLeaderName] = useState(""); + const [teamLeaderRollNo, setTeamLeaderRollNo] = useState(""); + const [contactNumber, setContactNumber] = useState(""); + const [email, setEmail] = useState(""); const [teamName, setTeamName] = useState(""); - const [teamLeader, setTeamLeader] = useState(""); const [members, setMembers] = useState([]); const [domain, setDomain] = useState(""); const [tempName, setTempName] = useState(""); const [tempRollno, setTempRollno] = useState(""); + const [paymentProofLink, setPaymentProofLink] = useState(""); + const comingSoon = false; + const validateForm = () => { + + if(!accept){ + showNotification({ + title: "Accept the terms and conditions", + }) + return false; + } + const teamLeaderRollNoPattern = /^\d{9}$/; + if (!teamLeaderRollNoPattern.test(teamLeaderRollNo)) { + + showNotification({ + title: 'Please enter a valid Roll Number', + }) + return false; + } + const phoneNumberPattern = /^\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$/; + if (!phoneNumberPattern.test(contactNumber)) { + showNotification({ + title: "Please enter a valid phone number", + }) + return false; + } + const emailPattern = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/; + if (!emailPattern.test(email)) { + showNotification({ + title: "Please enter a valid email address", + }) + return false; + } + const memberRollNoPattern = /^\d{9}$/; + for (const member of members) { + if (!memberRollNoPattern.test(member.rollNo)) { + showNotification({ + title: "Please enter a valid Roll Number", + }) + return false; + } + } + + if (members.length < 3 || members.length > 5) { + showNotification({ + title: "Team size should be 4-6", + }) + return false; + } + const driveLinkPattern = /^https:\/\/drive\.google\.com\/.*$/; + if (!driveLinkPattern.test(paymentProofLink)) { + showNotification({ + title: "Please enter a valid Google Drive link for payment proof", + }) + return false; + } + return true; + }; const handleSubmit = (e) => { e.preventDefault(); - const formData = new FormData(); - formData.append("Name", name); - formData.append("RollNo", rollNo); - formData.append("TeamName", teamName); - formData.append("TeamLeaderName", teamLeader); - formData.append("Members", JSON.stringify(members)); - formData.append("Domain", domain); - console.log(formData); - const action = - "https://script.google.com/macros/s/AKfycbzckIJzHbGiQuUVH1hgDzr28VNuyA7COGSGTFM0YV6xg3ActenbUesTzNOaI45GxYUF/exec"; - - fetch(action, { - method: "POST", - body: formData, - }).then(() => { - alert("Success!"); - }); + + if (validateForm()) { + try{ + const formData = new FormData(); + formData.append("TeamLeaderName", teamLeaderName); + formData.append("TeamLeaderRollNo", teamLeaderRollNo); + formData.append("ContactNumber", contactNumber); + formData.append("Email", email); + formData.append("TeamName", teamName); + formData.append("Members", JSON.stringify(members)); + formData.append("Domain", domain); + formData.append("PaymentProof", paymentProofLink); + + + const action = + "https://script.google.com/macros/s/AKfycbzckIJzHbGiQuUVH1hgDzr28VNuyA7COGSGTFM0YV6xg3ActenbUesTzNOaI45GxYUF/exec"; + showNotification({ + id: 'load-data', + loading: true, + title: 'Registering your team', + message: 'This may take few seconds', + autoClose: false, + disallowClose: true, + }); + fetch(action, { + method: "POST", + body: formData, + }).then(() => { + updateNotification({ + id: 'load-data', + color: 'teal', + title: 'Successfully Registered!', + message : "Redirecting to main page in 2s", + icon: , + autoClose: 2000, + }); + setTimeout(() => { + window.location.href = "/"; + }, 2000); + }); + } + catch{ + showNotification({ + title: 'Error', + message: 'Failed to register your team', + autoClose: false, + disallowClose: true, + }); + } + } }; const addMember = () => { @@ -42,63 +140,136 @@ const Register = () => { } }; + const [accept, setAccept] = useState(false); + const removeMember = (indexToRemove) => { setMembers((prevMembers) => prevMembers.filter((_, index) => index !== indexToRemove) ); }; + if(comingSoon){ + return( + +
+
+

Registrations opening Soon..

+ Back to home page +
+ +
+
+ ) + } return ( + +

Registration Page

-
+ {window.open( + 'https://drive.google.com/file/d/1ik4B97YNQb4YX0d4pKfb59Was8znyMRT/view?usp=sharing', + '_blank' // <- This is what makes it open in a new window. +);}}> Rule Book +
- - setName(e.target.value)} + id="teamLeaderName" + value={teamLeaderName} + onChange={(e) => setTeamLeaderName(e.target.value)} required + styles={(theme) => ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} />
- - setRollNo(e.target.value)} + id="teamLeaderRollNo" + value={teamLeaderRollNo} + onChange={(e) => setTeamLeaderRollNo(e.target.value)} + style={{width : "95%"}} required + styles={(theme) => ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} />
- - setTeamName(e.target.value)} + id="contactNumber" + value={contactNumber} + onChange={(e) => setContactNumber(e.target.value)} + style={{width : "95%"}} required + styles={(theme) => ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} />
- - setEmail(e.target.value)} + style={{width : "95%"}} + required + styles={(theme) => ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} + /> +
+
+ setTeamLeader(e.target.value)} + label="Team Name" + id="teamName" + value={teamName} + onChange={(e) => setTeamName(e.target.value)} + style={{width : "95%"}} required + styles={(theme) => ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} />
- + Members
    {members.map((member, index) => (
  • @@ -108,7 +279,11 @@ const Register = () => {
    Roll Number: {member.rollNo}
    -
  • @@ -117,18 +292,36 @@ const Register = () => {
- setTempName(e.target.value)} - placeholder="Name" - /> - ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} + /> + + setTempRollno(e.target.value)} placeholder="Roll Number" - /> + // style={{width : "100%"}} + styles={(theme) => ({ + label: { + color : "white", + fontSize : "1rem", + }, + + })} + />
+ setAccept(e.target.checked)} + styles={{ + label : { + color : "white" + }, + root : { + marginTop : "1rem", + } + }} + /> + + Back to home page + For technical issues contact +91 8807247608
+
+ + ); }; -export default Register; \ No newline at end of file +export default Register; + +// import React, { useState } from "react"; +// import { Select, TextInput } from "@mantine/core"; +// import "./register.css"; + +// const Register = () => { +// const [teamLeaderName, setTeamLeaderName] = useState(""); +// const [teamLeaderRollNo, setTeamLeaderRollNo] = useState(""); +// const [contactNumber, setContactNumber] = useState(""); +// const [email, setEmail] = useState(""); +// const [teamName, setTeamName] = useState(""); +// const [members, setMembers] = useState([]); +// const [domain, setDomain] = useState(""); +// const [tempName, setTempName] = useState(""); +// const [tempRollno, setTempRollno] = useState(""); + +// const validateForm = () => { +// // Implement validation logic here, e.g., check if rollNo is a valid integer, and other constraints. +// // Return true if the form is valid, otherwise false. +// // You can display validation errors as needed. +// return true; // Return true for now; add your validation logic. +// }; + +// const handleSubmit = (e) => { +// e.preventDefault(); + +// if (validateForm()) { +// const formData = new FormData(); +// formData.append("TeamLeaderName", teamLeaderName); +// formData.append("TeamLeaderRollNo", teamLeaderRollNo); +// formData.append("ContactNumber", contactNumber); +// formData.append("Email", email); +// formData.append("TeamName", teamName); +// formData.append("Members", JSON.stringify(members)); +// formData.append("Domain", domain); +// console.log(formData); + +// const action = "https://script.google.com/macros/s/AKfycbzckIJzHbGiQuUVH1hgDzr28VNuyA7COGSGTFM0YV6xg3ActenbUesTzNOaI45GxYUF/exec"; + +// fetch(action, { +// method: "POST", +// body: formData, +// }).then(() => { +// alert("Success!"); +// }); +// } +// }; + +// const addMember = () => { +// if (tempName.trim() !== "" && tempRollno.trim() !== "") { +// setMembers([...members, { name: tempName, rollNo: tempRollno }]); +// setTempName(""); +// setTempRollno(""); +// } +// }; + +// const removeMember = (indexToRemove) => { +// setMembers((prevMembers) => +// prevMembers.filter((_, index) => index !== indexToRemove) +// ); +// }; + +// return ( +//
+//

Registration Page

+//
+//
+// +// setTeamLeaderName(e.target.value)} +// required +// /> +//
+//
+// +// setTeamLeaderRollNo(e.target.value)} +// required +// /> +//
+//
+// +// setContactNumber(e.target.value)} +// required +// /> +//
+//
+// +// setEmail(e.target.value)} +// required +// /> +//
+// {/* Rest of your form remains the same */} +// {/* ... */} +//
+//
+// ); +// }; + +// export default Register; diff --git a/src/Pages/Register/register.css b/src/Pages/Register/register.css index 1983b0f..071d434 100644 --- a/src/Pages/Register/register.css +++ b/src/Pages/Register/register.css @@ -1,7 +1,6 @@ @import url("https://fonts.googleapis.com/css2?family=Inter:wght@200&family=JetBrains+Mono:wght@300&family=Montserrat:wght@300&family=PT+Sans:wght@700&family=Roboto+Mono:wght@300&family=Syne:wght@700&display=swap"); - -html{ +html { padding: 0; margin: 0; } @@ -12,8 +11,16 @@ body { padding: 0; } -.containerreg{ - background: linear-gradient(180deg, #0b0221 0%, #0b0121 100%); +.containerreg { + /* background: linear-gradient(180deg, #0b0221 0%, #0b0121 100%); */ + min-height: 100vh; + width: 100vw; + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + padding: 2rem 0; + color: white; } h1 { @@ -27,17 +34,15 @@ h1 { form { padding: 20px; + padding-left: 2rem; border-radius: 5px; max-width: 400px; - margin: 0 auto; + margin: 0; border-radius: 20px; - background: linear-gradient( - 180deg, - rgba(255, 255, 255, 0.05) 0%, - rgba(255, 255, 255, 0) 100% - ); - box-shadow: 0px 0px 2px rgba(255,255,255,0.5); + + background: linear-gradient(180deg, rgba(11, 2, 33,0.5) 0%, rgba(11, 1, 33,0.5) 100%); + box-shadow: 0px 0px 2px rgba(255, 255, 255, 0.5); } label { @@ -46,22 +51,22 @@ label { font-weight: bold; } -input[type="text"] { - width: 90%; - padding: 10px; - margin-bottom: 20px; - +/* input[type="text"], +input[type="email"] { + width: 91%; + padding: 7px; + margin-bottom: 10px; border-radius: 5px; border: 1px solid #f5bffb; background: rgba(255, 255, 255, 0.16); backdrop-filter: blur(14.199999809265137px); - /* color: #fff; */ font-size: 16px; color: white; -} +} */ + select { - width: 90%; + width: 100%; padding: 10px; margin-bottom: 20px; @@ -81,8 +86,8 @@ select { .members-list li { width: 90%; - background-color: #333; - color: #f5bffb; + background-color: rgba(255,255,255,0.1); + color: white; padding: 10px; margin-bottom: 10px; border-radius: 5px; @@ -92,8 +97,9 @@ select { } .members-list button { - background-color: #70157a; - color: #fff; + background-color: #ececec; + margin-top: 1rem; + color: #0b081c; border: none; padding: 5px 10px; cursor: pointer; @@ -108,28 +114,89 @@ select { display: flex; justify-content: space-between; align-items: center; + gap: 1rem; + margin-bottom: 1rem; } -.memberInput input { - width: 42%; -} li { margin-bottom: 10px; } .btnreg { - background-color: #7d4e83; - color: #fff; - padding: 10px 20px; + background: #ececec; + color: #0b081c; + padding: 8px 17px; + border: none; + border-radius: 3px; + cursor: pointer; + font-size: 13px; + transition: 0.3s; + margin-bottom: 1rem; + display: flex; + align-items: center; + justify-content: center; + gap: 0.5rem; +} + + +.btnreg2 { + margin-top: 1rem; + font-size: 1rem; + background: #ececec; + color: #0b081c; + font-family: JetBrains Mono; + padding: 8px 17px; + width: 95%; border: none; border-radius: 3px; cursor: pointer; - font-size: 16px; transition: 0.3s; - margin-bottom: 2rem; + margin-bottom: 1rem; + } .btnreg:hover { - background-color: #b274ba; + background-color: #a3a3a3; +} +.btnreg2:hover { + background-color: #a3a3a3; +} + + +.landingbg{ + animation: fadeIn 1s; } + + + +@keyframes fadeIn { + 0%{ + opacity: 0; + } + 100%{ + opacity : 1; + } +} + +.qr{ + width: 20rem; + display: flex; +} + +@media only screen and (max-width: 600px) { + .qr{ + width: 18rem; + } + .containerreg h1{ + font-size: 2rem; + } +} + +#my-form a{ + color: white; + text-decoration: none; +} +#my-form a:hover{ + color: #f5bffb; +} \ No newline at end of file diff --git a/src/assets/Akash_UPI.jpeg b/src/assets/Akash_UPI.jpeg new file mode 100644 index 0000000..9280db1 Binary files /dev/null and b/src/assets/Akash_UPI.jpeg differ diff --git a/src/assets/Carousel1_11zon.jpg b/src/assets/Carousel1_11zon.jpg new file mode 100644 index 0000000..08a9a38 Binary files /dev/null and b/src/assets/Carousel1_11zon.jpg differ diff --git a/src/assets/Carousel2_11zon.jpg b/src/assets/Carousel2_11zon.jpg new file mode 100644 index 0000000..30061c9 Binary files /dev/null and b/src/assets/Carousel2_11zon.jpg differ diff --git a/src/assets/Carousel3_11zon.jpg b/src/assets/Carousel3_11zon.jpg new file mode 100644 index 0000000..5212456 Binary files /dev/null and b/src/assets/Carousel3_11zon.jpg differ diff --git a/src/assets/Carousel4_11zon.jpg b/src/assets/Carousel4_11zon.jpg new file mode 100644 index 0000000..6cfd3db Binary files /dev/null and b/src/assets/Carousel4_11zon.jpg differ diff --git a/src/assets/Ram.jpg b/src/assets/Ram.jpg new file mode 100644 index 0000000..a3b4849 Binary files /dev/null and b/src/assets/Ram.jpg differ diff --git a/src/assets/SSK.JPG b/src/assets/SSK.JPG new file mode 100644 index 0000000..c24f27f Binary files /dev/null and b/src/assets/SSK.JPG differ diff --git a/src/assets/UPI.jpeg b/src/assets/UPI.jpeg new file mode 100644 index 0000000..c4fe003 Binary files /dev/null and b/src/assets/UPI.jpeg differ diff --git a/src/assets/abhibus.png b/src/assets/abhibus.png new file mode 100644 index 0000000..7a885e3 Binary files /dev/null and b/src/assets/abhibus.png differ diff --git a/src/assets/abishake.jpg b/src/assets/abishake.jpg new file mode 100644 index 0000000..695e7e7 Binary files /dev/null and b/src/assets/abishake.jpg differ diff --git a/src/assets/anand.jpg b/src/assets/anand.jpg new file mode 100644 index 0000000..5530d2e Binary files /dev/null and b/src/assets/anand.jpg differ diff --git a/src/assets/anirudh.jpg b/src/assets/anirudh.jpg new file mode 100644 index 0000000..b0417a3 Binary files /dev/null and b/src/assets/anirudh.jpg differ diff --git a/src/assets/ankur.jpg b/src/assets/ankur.jpg new file mode 100644 index 0000000..bbd5b7e Binary files /dev/null and b/src/assets/ankur.jpg differ diff --git a/src/assets/ayush.jpeg b/src/assets/ayush.jpeg new file mode 100644 index 0000000..7e2d73c Binary files /dev/null and b/src/assets/ayush.jpeg differ diff --git a/src/assets/bg.png b/src/assets/bg.png new file mode 100644 index 0000000..b345d9d Binary files /dev/null and b/src/assets/bg.png differ diff --git a/src/assets/bharathx.jpg b/src/assets/bharathx.jpg new file mode 100644 index 0000000..4a1100c Binary files /dev/null and b/src/assets/bharathx.jpg differ diff --git a/src/assets/bluelearn.avif b/src/assets/bluelearn.avif new file mode 100644 index 0000000..dae279d Binary files /dev/null and b/src/assets/bluelearn.avif differ diff --git a/src/assets/boeing.png b/src/assets/boeing.png new file mode 100644 index 0000000..e93c7ff Binary files /dev/null and b/src/assets/boeing.png differ diff --git a/src/assets/charged.png b/src/assets/charged.png new file mode 100644 index 0000000..bce0574 Binary files /dev/null and b/src/assets/charged.png differ diff --git a/src/assets/crewsphere.png b/src/assets/crewsphere.png new file mode 100644 index 0000000..20af693 Binary files /dev/null and b/src/assets/crewsphere.png differ diff --git a/src/assets/default.png b/src/assets/default.png new file mode 100644 index 0000000..6793ec7 Binary files /dev/null and b/src/assets/default.png differ diff --git a/src/assets/gfg.png b/src/assets/gfg.png new file mode 100644 index 0000000..963cd80 Binary files /dev/null and b/src/assets/gfg.png differ diff --git a/src/assets/gmetrix.png b/src/assets/gmetrix.png new file mode 100644 index 0000000..a587d37 Binary files /dev/null and b/src/assets/gmetrix.png differ diff --git a/src/assets/gradient.png b/src/assets/gradient.png new file mode 100644 index 0000000..64f427f Binary files /dev/null and b/src/assets/gradient.png differ diff --git a/src/assets/kishore.jpg b/src/assets/kishore.jpg new file mode 100644 index 0000000..fe7b957 Binary files /dev/null and b/src/assets/kishore.jpg differ diff --git a/src/assets/kumar.jpg b/src/assets/kumar.jpg new file mode 100644 index 0000000..a6b645a Binary files /dev/null and b/src/assets/kumar.jpg differ diff --git a/src/assets/netcon.png b/src/assets/netcon.png new file mode 100644 index 0000000..8823c69 Binary files /dev/null and b/src/assets/netcon.png differ diff --git a/src/assets/pathway.png b/src/assets/pathway.png new file mode 100644 index 0000000..f36d032 Binary files /dev/null and b/src/assets/pathway.png differ diff --git a/src/assets/praveen.jpg b/src/assets/praveen.jpg new file mode 100644 index 0000000..245e45f Binary files /dev/null and b/src/assets/praveen.jpg differ diff --git a/src/assets/praveen.webp b/src/assets/praveen.webp new file mode 100644 index 0000000..6c1b9a4 Binary files /dev/null and b/src/assets/praveen.webp differ diff --git a/src/assets/qr.jpg b/src/assets/qr.jpg new file mode 100644 index 0000000..7af9d14 Binary files /dev/null and b/src/assets/qr.jpg differ diff --git a/src/assets/rakesh.jpg b/src/assets/rakesh.jpg new file mode 100644 index 0000000..834c16d Binary files /dev/null and b/src/assets/rakesh.jpg differ diff --git a/src/assets/sandhya.jpg b/src/assets/sandhya.jpg new file mode 100644 index 0000000..1d287de Binary files /dev/null and b/src/assets/sandhya.jpg differ diff --git a/src/assets/subash.jpg b/src/assets/subash.jpg new file mode 100644 index 0000000..7de3c75 Binary files /dev/null and b/src/assets/subash.jpg differ diff --git a/src/assets/tanvi.jpg b/src/assets/tanvi.jpg new file mode 100644 index 0000000..725f891 Binary files /dev/null and b/src/assets/tanvi.jpg differ diff --git a/src/assets/tezos.png b/src/assets/tezos.png new file mode 100644 index 0000000..36eb50c Binary files /dev/null and b/src/assets/tezos.png differ diff --git a/src/assets/tezos.webp b/src/assets/tezos.webp new file mode 100644 index 0000000..56b31a9 Binary files /dev/null and b/src/assets/tezos.webp differ diff --git a/src/assets/vivek.jpg b/src/assets/vivek.jpg new file mode 100644 index 0000000..c9fd8ff Binary files /dev/null and b/src/assets/vivek.jpg differ diff --git a/vite/index.html b/vite/index.html index 795e4fb..2eb1788 100644 --- a/vite/index.html +++ b/vite/index.html @@ -2,7 +2,8 @@ - + \ + Transfinitte'23 Vite + Vue diff --git a/yarn.lock b/yarn.lock index 56d9158..ae4aaf3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -686,6 +686,14 @@ resolved "https://registry.yarnpkg.com/@mantine/hooks/-/hooks-5.10.5.tgz#568586a0fa649be46f057ddc920bf98761017ffb" integrity sha512-hFQp71QZDfivPzfIUOQZfMKLiOL/Cn2EnzacRlbUr55myteTfzYN8YMt+nzniE/6c4IRopFHEAdbKEtfyQc6kg== +"@mantine/notifications@5.10.5": + version "5.10.5" + resolved "https://registry.yarnpkg.com/@mantine/notifications/-/notifications-5.10.5.tgz#2f3f2d013ce4637e64e935aa5dd8c1df1a7acec0" + integrity sha512-IzTAXA7Zb9DcI94Mv5O2OinhLmI7fvs/VutDw9uCpp6OHtLuF/XN1d262jrsGhMZT0c4nuUsotSLFZF3GWZwXg== + dependencies: + "@mantine/utils" "5.10.5" + react-transition-group "4.4.2" + "@mantine/styles@5.10.5": version "5.10.5" resolved "https://registry.yarnpkg.com/@mantine/styles/-/styles-5.10.5.tgz#ace82a71b4fe3d14ee14638f1735d5680d93d36d" @@ -935,6 +943,19 @@ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.25.24.tgz#8c7688559979f7079aacaf31aa881c3aa410b718" integrity sha512-XJfwUVUKDHF5ugKwIcxEgc9k8b7HbznCp6eUfWgu710hMPNIO4aw4/zB5RogDQz8nd6gyCDpU9O/m6qYEWY6yQ== +"@tabler/icons-react@^2.36.0": + version "2.36.0" + resolved "https://registry.yarnpkg.com/@tabler/icons-react/-/icons-react-2.36.0.tgz#0845a72ff044e13b8a40878b07166c40fb979e44" + integrity sha512-IyJISQOuageoi+TbnkzUyC2tVjW/ABnMy4GFL+WpUVxawxQF1Hx2Lusbp53eHMwVhHnTI5lHPdOlB7OwANX8Tg== + dependencies: + "@tabler/icons" "2.36.0" + prop-types "^15.7.2" + +"@tabler/icons@2.36.0": + version "2.36.0" + resolved "https://registry.yarnpkg.com/@tabler/icons/-/icons-2.36.0.tgz#06fa545d49cb1351a002cc9b1a36b370db1bdd01" + integrity sha512-pgUAALzzr3sDQ1m0s240LrwVxeUgkFuP6oZnwd1zTB5V7sgvgVUt0Uf0/qYwUQkoqt0oDgGQngXriCCp7AOvrg== + "@tootallnate/once@2.0.0": version "2.0.0" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" @@ -3667,6 +3688,16 @@ react-textarea-autosize@8.3.4: use-composed-ref "^1.3.0" use-latest "^1.2.1" +react-transition-group@4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.2.tgz#8b59a56f09ced7b55cbd53c36768b922890d5470" + integrity sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg== + dependencies: + "@babel/runtime" "^7.5.5" + dom-helpers "^5.0.1" + loose-envify "^1.4.0" + prop-types "^15.6.2" + react-transition-group@^4.4.5: version "4.4.5" resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-4.4.5.tgz#e53d4e3f3344da8521489fbef8f2581d42becdd1"