This is an automated email from the ASF dual-hosted git repository. dimuthuupe pushed a commit to branch cybershuttle-staging in repository https://gitbox.apache.org/repos/asf/airavata.git
commit b212d692589ed4273859c47ca755913cebffe52c Author: ganning127 <[email protected]> AuthorDate: Sun Apr 6 23:42:14 2025 -0400 Cybershuttle.org homepage copy --- .../portal/src/assets/AllenLogo.png | Bin 0 -> 11565 bytes .../portal/src/assets/GTLogo.png | Bin 0 -> 53417 bytes .../portal/src/assets/IUFullLogo.png | Bin 0 -> 10163 bytes .../portal/src/assets/IULogo.png | Bin 0 -> 2333 bytes .../portal/src/assets/MolecularDynamics.png | Bin 0 -> 37240 bytes .../portal/src/assets/NSFLogo.png | Bin 0 -> 42375 bytes .../portal/src/assets/NeuroScience.png | Bin 0 -> 37427 bytes .../portal/src/assets/PoweredByApache.png | Bin 0 -> 12850 bytes .../portal/src/assets/UCSDLogo.png | Bin 0 -> 52605 bytes .../portal/src/assets/UIUCLogo.png | Bin 0 -> 3490 bytes .../portal/src/assets/XSEDELogo.png | Bin 0 -> 14094 bytes .../portal/src/assets/extensibleIcon.png | Bin 0 -> 7467 bytes .../portal/src/assets/reproIcon.png | Bin 0 -> 4275 bytes .../portal/src/assets/thirdPartyIcon.png | Bin 0 -> 9044 bytes .../portal/src/assets/userClockIcon.png | Bin 0 -> 6939 bytes .../src/components/home/CybershuttleLanding.tsx | 246 ++++++++++++++++++++- .../portal/src/components/resources/index.tsx | 2 +- 17 files changed, 244 insertions(+), 4 deletions(-) diff --git a/modules/research-framework/portal/src/assets/AllenLogo.png b/modules/research-framework/portal/src/assets/AllenLogo.png new file mode 100644 index 0000000000..a6db788b8b Binary files /dev/null and b/modules/research-framework/portal/src/assets/AllenLogo.png differ diff --git a/modules/research-framework/portal/src/assets/GTLogo.png b/modules/research-framework/portal/src/assets/GTLogo.png new file mode 100644 index 0000000000..5e445f5868 Binary files /dev/null and b/modules/research-framework/portal/src/assets/GTLogo.png differ diff --git a/modules/research-framework/portal/src/assets/IUFullLogo.png b/modules/research-framework/portal/src/assets/IUFullLogo.png new file mode 100644 index 0000000000..7e4482b007 Binary files /dev/null and b/modules/research-framework/portal/src/assets/IUFullLogo.png differ diff --git a/modules/research-framework/portal/src/assets/IULogo.png b/modules/research-framework/portal/src/assets/IULogo.png new file mode 100644 index 0000000000..9719ad5ea3 Binary files /dev/null and b/modules/research-framework/portal/src/assets/IULogo.png differ diff --git a/modules/research-framework/portal/src/assets/MolecularDynamics.png b/modules/research-framework/portal/src/assets/MolecularDynamics.png new file mode 100644 index 0000000000..3eaed8d8c3 Binary files /dev/null and b/modules/research-framework/portal/src/assets/MolecularDynamics.png differ diff --git a/modules/research-framework/portal/src/assets/NSFLogo.png b/modules/research-framework/portal/src/assets/NSFLogo.png new file mode 100644 index 0000000000..6d54707ff0 Binary files /dev/null and b/modules/research-framework/portal/src/assets/NSFLogo.png differ diff --git a/modules/research-framework/portal/src/assets/NeuroScience.png b/modules/research-framework/portal/src/assets/NeuroScience.png new file mode 100644 index 0000000000..9ed69c80a6 Binary files /dev/null and b/modules/research-framework/portal/src/assets/NeuroScience.png differ diff --git a/modules/research-framework/portal/src/assets/PoweredByApache.png b/modules/research-framework/portal/src/assets/PoweredByApache.png new file mode 100644 index 0000000000..f488fcd324 Binary files /dev/null and b/modules/research-framework/portal/src/assets/PoweredByApache.png differ diff --git a/modules/research-framework/portal/src/assets/UCSDLogo.png b/modules/research-framework/portal/src/assets/UCSDLogo.png new file mode 100644 index 0000000000..b9108fcbda Binary files /dev/null and b/modules/research-framework/portal/src/assets/UCSDLogo.png differ diff --git a/modules/research-framework/portal/src/assets/UIUCLogo.png b/modules/research-framework/portal/src/assets/UIUCLogo.png new file mode 100644 index 0000000000..d6b1c78625 Binary files /dev/null and b/modules/research-framework/portal/src/assets/UIUCLogo.png differ diff --git a/modules/research-framework/portal/src/assets/XSEDELogo.png b/modules/research-framework/portal/src/assets/XSEDELogo.png new file mode 100644 index 0000000000..89c5847c40 Binary files /dev/null and b/modules/research-framework/portal/src/assets/XSEDELogo.png differ diff --git a/modules/research-framework/portal/src/assets/extensibleIcon.png b/modules/research-framework/portal/src/assets/extensibleIcon.png new file mode 100644 index 0000000000..4797911c2b Binary files /dev/null and b/modules/research-framework/portal/src/assets/extensibleIcon.png differ diff --git a/modules/research-framework/portal/src/assets/reproIcon.png b/modules/research-framework/portal/src/assets/reproIcon.png new file mode 100644 index 0000000000..27845d5389 Binary files /dev/null and b/modules/research-framework/portal/src/assets/reproIcon.png differ diff --git a/modules/research-framework/portal/src/assets/thirdPartyIcon.png b/modules/research-framework/portal/src/assets/thirdPartyIcon.png new file mode 100644 index 0000000000..e88e192178 Binary files /dev/null and b/modules/research-framework/portal/src/assets/thirdPartyIcon.png differ diff --git a/modules/research-framework/portal/src/assets/userClockIcon.png b/modules/research-framework/portal/src/assets/userClockIcon.png new file mode 100644 index 0000000000..bebe1056b7 Binary files /dev/null and b/modules/research-framework/portal/src/assets/userClockIcon.png differ diff --git a/modules/research-framework/portal/src/components/home/CybershuttleLanding.tsx b/modules/research-framework/portal/src/components/home/CybershuttleLanding.tsx index 0195545767..bd9c750462 100644 --- a/modules/research-framework/portal/src/components/home/CybershuttleLanding.tsx +++ b/modules/research-framework/portal/src/components/home/CybershuttleLanding.tsx @@ -1,6 +1,33 @@ -import { Container, Heading, Image, Text, VStack, Box } from "@chakra-ui/react"; +import { + Container, + Heading, + Image, + Text, + VStack, + Box, + SimpleGrid, + Link, + HStack, + Separator, +} from "@chakra-ui/react"; import HeroOriginal from "../../assets/Hero.original.png"; import { SectionHeading } from "../typography/SectionHeading"; +import ExtensibleIcon from "../../assets/extensibleIcon.png"; +import ReproIcon from "../../assets/reproIcon.png"; +import ThirdPartyIcon from "../../assets/thirdPartyIcon.png"; +import UserClockIcon from "../../assets/userClockIcon.png"; +import MolecularDyanmics from "../../assets/MolecularDynamics.png"; +import NeuroScience from "../../assets/NeuroScience.png"; +import GeorgiaTech from "../../assets/GTLogo.png"; +import IULogo from "../../assets/IULogo.png"; +import UIUCLogo from "../../assets/UIUCLogo.png"; +import UCSDLogo from "../../assets/UCSDLogo.png"; +import AllenLogo from "../../assets/AllenLogo.png"; +import NSFLogo from "../../assets/NSFLogo.png"; +import { FaCheckCircle } from "react-icons/fa"; +import PoweredByApache from "../../assets/PoweredByApache.png"; +import XSEDELogo from "../../assets/XSEDELogo.png"; +import IUFullLogo from "../../assets/IUFullLogo.png"; export const CybershuttleLanding = () => { return ( @@ -38,23 +65,236 @@ export const CybershuttleLanding = () => { <VStack mt={18} alignItems="flex-start" gap={16}> <Box> <SectionHeading>Main Features</SectionHeading> + + <SimpleGrid columns={{ base: 1, md: 2, lg: 4 }} gap={8} mt={2}> + <FeatureCard + image={UserClockIcon} + title="User Productivity" + description="Enable individual researchers to provide an individual view into research computing resources at all scales." + /> + <FeatureCard + image={ExtensibleIcon} + title="Extensibility & Collaborations" + description="Instead of learning from scratch, modify an existing experiment and run it through CyberShuttle." + /> + <FeatureCard + image={ThirdPartyIcon} + title="Third-Party App Integrations" + description="Access to synchronized cloud tools to gain deeper insights from the data." + /> + <FeatureCard + image={ReproIcon} + title="Reproducible Computations" + description="Shared associated data and experiments captured in the system generating quick results." + /> + </SimpleGrid> </Box> <Box> <SectionHeading>Science-Centrist Extensions</SectionHeading> + <Text fontSize="lg" color="gray.500" mt={4}> + We create and integrate tailored science extensions to optimize + workflows and meet domain-specific requirements through + collaboration with experts. + </Text> + + <VStack mt={8} gap={4} alignItems="flex-start"> + <ExtensionCard + image={MolecularDyanmics} + title="Molecular Dynamics" + description="Integrate with molecular dynamics simulations for enhanced analysis." + link="https://md.cybershuttle.org/" + /> + <ExtensionCard + image={NeuroScience} + title="Neuroscience" + description="Integrate with neuroscience data analysis tools for advanced research." + link="https://neuroscience.cybershuttle.org/" + /> + </VStack> </Box> <Box> <SectionHeading>Collaboration</SectionHeading> + <Text fontSize="lg" color="gray.500" mt={4}> + We collaborate with institutions to enhance research computing + capabilities and foster innovation. + </Text> + + <SimpleGrid + columns={{ base: 3, md: 5 }} + gap={8} + mt={8} + alignItems="flex-start" + > + <CollaborationCard image={GeorgiaTech} title="Georgia Tech" /> + <CollaborationCard image={IULogo} title="Indiana University" /> + <CollaborationCard + image={UIUCLogo} + title="University of Illinois" + /> + <CollaborationCard + image={UCSDLogo} + title="University of California San Diego" + /> + <CollaborationCard + image={AllenLogo} + title="Allen Institute for Brain Sciences" + /> + </SimpleGrid> </Box> <Box> <SectionHeading>Thanks to our Sponsors</SectionHeading> + + <SimpleGrid + columns={{ base: 1, md: 2 }} + gap={8} + mt={8} + alignItems="center" + > + <Box> + <Text fontSize="xl" mb={4}> + Cybershuttle is supported by the{" "} + <Text as="span" fontWeight="bold"> + National Science Foundation (NSF) + </Text>{" "} + under the following grants. + </Text> + + <SimpleGrid columns={2} gap={2}> + <GrantBox + title="CSSI-2209874" + href="https://nsf.gov/awardsearch/showAward?AWD_ID=2209872&HistoricalAwards=false" + /> + <GrantBox + title="CSSI-2209872" + href="https://nsf.gov/awardsearch/showAward?AWD_ID=2209874&HistoricalAwards=false" + /> + <GrantBox + title="CSSI-2209875" + href="https://nsf.gov/awardsearch/showAward?AWD_ID=2209873&HistoricalAwards=false" + /> + <GrantBox + title="CSSI-2209873" + href="https://nsf.gov/awardsearch/showAward?AWD_ID=2209875&HistoricalAwards=false" + /> + </SimpleGrid> + </Box> + <Image src={NSFLogo} alt="NSF Logo" maxH="180px" mx="auto" /> + </SimpleGrid> </Box> </VStack> - - <Box my={8} /> </Container> + + <Separator my={16} borderColor="red.700" borderWidth="4px" /> + + <SimpleGrid + columns={{ base: 2, md: 4 }} + gap={8} + maxW="breakpoint-lg" + mx="auto" + alignItems="center" + justifyContent="center" + mb={8} + > + <Image + src={PoweredByApache} + alt="Powered by Apache" + maxH="180px" + mx="auto" + /> + <Image src={XSEDELogo} alt="XSEDE Logo" maxH="180px" mx="auto" /> + <Image src={NSFLogo} alt="XSEDE Logo" maxH="180px" mx="auto" /> + <Image + src={IUFullLogo} + alt="Indiana University Logo" + maxH="180px" + mx="auto" + /> + </SimpleGrid> </> ); }; + +const FeatureCard = ({ + image, + title, + description, +}: { + image: string; + title: string; + description: string; +}) => { + return ( + <VStack + alignItems="flex-start" + gap={0} + borderWidth={1} + borderRadius="md" + padding={4} + > + <Image src={image} alt={title} maxH="90px" /> + <Text fontSize="2xl" fontWeight="bold"> + {title} + </Text> + <Text>{description}</Text> + </VStack> + ); +}; + +const ExtensionCard = ({ + image, + title, + description, + link, +}: { + image: string; + title: string; + description: string; + link: string; +}) => { + return ( + <HStack columns={{ base: 1, md: 2 }} gap={4} mt={2} alignItems="center"> + <Image src={image} alt={title} borderWidth={1} borderRadius="md" /> + + <VStack alignItems="flex-start" gap={0}> + <Text fontSize="2xl" fontWeight="bold"> + {title} + </Text> + <Text>{description}</Text> + <Link href={link} target="_blank"> + <Text color="blue.500" textDecoration="underline" fontWeight="bold"> + View Details + </Text> + </Link> + </VStack> + </HStack> + ); +}; + +const CollaborationCard = ({ + image, + title, +}: { + image: string; + title: string; +}) => { + return ( + <VStack gap={2} borderRadius="md" textAlign="center"> + <Image src={image} alt={title} maxH="90px" mx="auto" /> + <Text fontSize="lg">{title}</Text> + </VStack> + ); +}; + +const GrantBox = ({ title, href }: { title: string; href: string }) => { + return ( + <HStack> + <FaCheckCircle color="green" /> + <Link href={href} target="_blank"> + <Text>{title}</Text> + </Link> + </HStack> + ); +}; diff --git a/modules/research-framework/portal/src/components/resources/index.tsx b/modules/research-framework/portal/src/components/resources/index.tsx index 504ed2899e..9bd58cf05a 100644 --- a/modules/research-framework/portal/src/components/resources/index.tsx +++ b/modules/research-framework/portal/src/components/resources/index.tsx @@ -61,7 +61,7 @@ export const Resources = () => { const [resources, setResources] = useState<Resource[]>([]); const handleDelete = (i: number) => { - setTags(tags.filter((tag, index) => index !== i)); + setTags(tags.filter((_, index) => index !== i)); }; const handleAddition = (tag: Tag) => {
