diff --git a/frontend/app/team/_components/group.tsx b/frontend/app/team/_components/group.tsx new file mode 100644 index 0000000..022f089 --- /dev/null +++ b/frontend/app/team/_components/group.tsx @@ -0,0 +1,36 @@ +import React from "react"; +import ProfileCard from "./profilecard"; + +interface Profile { + name: string; + institution: string; + imageUrl: string; +} + +interface ProfileGroupProps { + title: string; + sizing: boolean; + members: Profile[]; +} + +const ProfileGroup: React.FC = ({ title, sizing, members }) => ( +
+

+ {title} +

+ +
+ {members.map((member, index) => ( + + ))} +
+
+); + +export default ProfileGroup; diff --git a/frontend/app/team/_components/intro.tsx b/frontend/app/team/_components/intro.tsx new file mode 100644 index 0000000..14bd3f3 --- /dev/null +++ b/frontend/app/team/_components/intro.tsx @@ -0,0 +1,23 @@ +import Image from "next/image"; + +const Intro: React.FC = () => ( +
+

+ Meet the Team +

+ + Team + +

+ LunaSCOPE team members hail from 20 different institutions in the U.S. and around the world, including three minority serving institutions and an HBCU. From undergraduates getting their first research experience to world‑renowned members of the planetary science field, LunaSCOPE is a diverse, dynamic and multidisciplinary collaboration. +

+
+); + +export default Intro; diff --git a/frontend/app/team/_components/profilecard.tsx b/frontend/app/team/_components/profilecard.tsx new file mode 100644 index 0000000..7228153 --- /dev/null +++ b/frontend/app/team/_components/profilecard.tsx @@ -0,0 +1,38 @@ +import React from "react"; +import Image from "next/image"; + +interface ProfileCardProps { + name: string; + institution: string; + imageUrl: string; + sizing: boolean; +} + +const ProfileCard: React.FC = ({ name, institution, imageUrl }) => ( +
+ {name} + +

{name}

+

{institution}

+
+); + +export default ProfileCard; diff --git a/frontend/app/team/_components/teamdata.tsx b/frontend/app/team/_components/teamdata.tsx new file mode 100644 index 0000000..b063062 --- /dev/null +++ b/frontend/app/team/_components/teamdata.tsx @@ -0,0 +1,257 @@ +export const teamData = [ + { + role: 'Leadership', + large: true, + members: [ + { + name: 'Alex Evans, PI', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Steve Parman, Deputy PI', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Jack Mustard, Deputy PI', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Ingrid Daubar', + institution: 'Public Engagement Liaison', + imageUrl: '/bronimage.png', + }, + { + name: 'Daniel Ibarra', + institution: 'SSERVI Liaison', + imageUrl: '/bronimage.png', + }, + ], + }, + { + role: 'Co-Investigators', + large: false, + members: [ + { + name: 'Santanu Banerjee', + institution: 'Tougaloo College', + imageUrl: '/bronimage.png', + }, + { + name: 'Karianne Bergen', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Sam Birch', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Charles Boukaré', + institution: 'York University', + imageUrl: '/bronimage.png', + }, + { + name: 'Reid Cooper', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Emily Cooperdock', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Ingrid Daubar', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Kerri Donaldson-Hanna', + institution: 'University of Central Florida', + imageUrl: '/bronimage.png', + }, + { + name: 'James Dottin', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Caleb Fassett', + institution: 'Johns Hopkins / APL', + imageUrl: '/bronimage.png', + }, + { + name: 'Jim Head', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Takahiro Hiroi', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Greg Hirth', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Daniel Ibarra', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Chris Huber', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Alexandria Johnson', + institution: 'Purdue University', + imageUrl: '/bronimage.png', + }, + { + name: 'Brandon Johnson', + institution: 'Purdue University', + imageUrl: '/bronimage.png', + }, + { + name: 'James Tuttle Keane', + institution: 'NASA JPL', + imageUrl: '/bronimage.png', + }, + { + name: 'Harriet Lau', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Yan Liang', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Ralph Milliken', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'David Minton', + institution: 'Purdue University', + imageUrl: '/bronimage.png', + }, + { + name: 'Daniel Moriarty', + institution: 'University of Maryland / NASA Goddard', + imageUrl: '/bronimage.png', + }, + { + name: 'E. Marc Parmentier', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Alberto Saal', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Jason Soderblom', + institution: 'MIT', + imageUrl: '/bronimage.png', + }, + { + name: 'Carrie Spearin', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Sonia Tikoo', + institution: 'Stanford University', + imageUrl: '/bronimage.png', + }, + { + name: 'James Tompkin', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Victor Tsai', + institution: 'Brown University', + imageUrl: '/bronimage.png', + }, + { + name: 'Shijie Zhong', + institution: 'University of Colorado', + imageUrl: '/bronimage.png', + }, + ], + }, + { + role: 'Postdoctoral Fellows', + large: false, + members: [ + { + name: 'Hairuo Fu', + institution: '', + imageUrl: '/bronimage.png', + }, + { + name: 'Nandita Kumari', + institution: '', + imageUrl: '/bronimage.png', + }, + { + name: 'Andrea Rajšić', + institution: '', + imageUrl: '/bronimage.png', + }, + { + name: 'Nick Wagner', + institution: '', + imageUrl: '/bronimage.png', + }, + ], + }, + { + role: 'Graduate Students', + large: false, + members: [ + { + name: 'Uthkarsh Das', + institution: '', + imageUrl: '/bronimage.png', + }, + { + name: 'Noah Hooper', + institution: '', + imageUrl: '/bronimage.png', + }, + { + name: 'Carol Hundal', + institution: '', + imageUrl: '/bronimage.png', + }, + { + name: 'Wenhao Zhao', + institution: '', + imageUrl: '/bronimage.png', + }, + ], + }, + { + role: 'Support', + large: false, + members: [ + { + name: 'Julia Lazarus', + institution: 'Public Engagement and Workforce Development Associate', + imageUrl: '/bronimage.png', + }, + ], + }, + ]; \ No newline at end of file diff --git a/frontend/app/team/page.tsx b/frontend/app/team/page.tsx new file mode 100644 index 0000000..1541f74 --- /dev/null +++ b/frontend/app/team/page.tsx @@ -0,0 +1,37 @@ +import Intro from "./_components/intro"; +import ProfileGroup from "./_components/group"; +import { teamData } from "./_components/teamdata"; + +export default function TeamPage() { + return ( +
+
+ + +
+ {teamData.map((group) => ( + + ))} +
+
+ + +
+ ); +} diff --git a/frontend/public/LNSCP_Team_LF.jpg b/frontend/public/LNSCP_Team_LF.jpg new file mode 100644 index 0000000..96cb2e3 Binary files /dev/null and b/frontend/public/LNSCP_Team_LF.jpg differ diff --git a/frontend/public/bronimage.png b/frontend/public/bronimage.png new file mode 100644 index 0000000..8f568ea Binary files /dev/null and b/frontend/public/bronimage.png differ