|
| 1 | +import React from 'react'; |
| 2 | +import Layout from '@theme/Layout'; |
| 3 | +import styles from './team.module.css'; |
| 4 | + |
| 5 | +const coreTeam = [ |
| 6 | + { |
| 7 | + name: 'Huamin Chen', |
| 8 | + role: 'Distinguished Engineer', |
| 9 | + company: 'Red Hat', |
| 10 | + avatar: '/img/team/huamin.png', |
| 11 | + github: 'https://github.com/rootfs', |
| 12 | + linkedin: 'https://www.linkedin.com/in/huaminchen', |
| 13 | + bio: 'Distinguished Engineer at Red Hat, driving innovation in cloud-native and AI/LLM Inference technologies.', |
| 14 | + expertise: ['Cloud Native', 'Kubernetes', 'Container Technologies', 'System Architecture'] |
| 15 | + }, |
| 16 | + { |
| 17 | + name: 'Chen Wang', |
| 18 | + role: 'Senior Staff Research Scientist', |
| 19 | + company: 'IBM', |
| 20 | + avatar: '/img/team/chen.png', |
| 21 | + github: 'https://github.com/wangchen615', |
| 22 | + linkedin: 'https://www.linkedin.com/in/chenw615/', |
| 23 | + bio: 'Senior Staff Research Scientist at IBM, focusing on advanced AI systems and research.', |
| 24 | + expertise: ['AI Systems', 'Research Leadership', 'Machine Learning', 'Innovation'] |
| 25 | + }, |
| 26 | + { |
| 27 | + name: 'Yue Zhu', |
| 28 | + role: 'Staff Research Scientist', |
| 29 | + company: 'IBM', |
| 30 | + avatar: '/img/team/yue.png', |
| 31 | + github: 'https://github.com/yuezhu1', |
| 32 | + linkedin: 'https://www.linkedin.com/in/yue-zhu-b26526a3/', |
| 33 | + bio: 'Staff Research Scientist at IBM, specializing in AI research and LLM Inference.', |
| 34 | + expertise: ['Machine Learning', 'AI Research', 'Data Science', 'Research & Development'] |
| 35 | + }, |
| 36 | + { |
| 37 | + name: 'Xunzhuo Liu', |
| 38 | + role: 'Software Engineer', |
| 39 | + company: 'Tencent', |
| 40 | + avatar: '/img/team/xunzhuo.png', |
| 41 | + github: 'https://github.com/Xunzhuo', |
| 42 | + linkedin: 'https://www.linkedin.com/in/bitliu/', |
| 43 | + bio: 'Software Engineer at Tencent, leading the development of vLLM Semantic Router and driving the project vision.', |
| 44 | + expertise: ['System Architecture', 'ML Infrastructure', 'Open Source', 'Software Engineering'] |
| 45 | + }, |
| 46 | +]; |
| 47 | + |
| 48 | + |
| 49 | + |
| 50 | +const contributors = [ |
| 51 | + { |
| 52 | + name: 'You?', |
| 53 | + role: 'Future Contributor', |
| 54 | + avatar: 'https://github.com/github.png', |
| 55 | + github: '/community/contributing', |
| 56 | + bio: 'Join our community and help make vLLM Semantic Router even better!', |
| 57 | + expertise: ['Your Skills Here'] |
| 58 | + }, |
| 59 | +]; |
| 60 | + |
| 61 | +function TeamMember({ member, isContributor = false }) { |
| 62 | + return ( |
| 63 | + <div className={`${styles.memberCard} ${isContributor ? styles.contributorCard : ''}`}> |
| 64 | + <div className={styles.memberHeader}> |
| 65 | + <img |
| 66 | + src={member.avatar} |
| 67 | + alt={`${member.name} avatar`} |
| 68 | + className={styles.avatar} |
| 69 | + /> |
| 70 | + <div className={styles.memberInfo}> |
| 71 | + <h3 className={styles.memberName}>{member.name}</h3> |
| 72 | + <p className={styles.memberRole}> |
| 73 | + {member.role} |
| 74 | + {member.company && <span className={styles.company}> @ {member.company}</span>} |
| 75 | + </p> |
| 76 | + </div> |
| 77 | + </div> |
| 78 | + |
| 79 | + <p className={styles.memberBio}>{member.bio}</p> |
| 80 | + |
| 81 | + <div className={styles.expertise}> |
| 82 | + {member.expertise.map((skill, index) => ( |
| 83 | + <span key={index} className={styles.skillTag}>{skill}</span> |
| 84 | + ))} |
| 85 | + </div> |
| 86 | + |
| 87 | + <div className={styles.memberActions}> |
| 88 | + {!isContributor && member.github && member.github !== '#' && ( |
| 89 | + <a |
| 90 | + href={member.github} |
| 91 | + target="_blank" |
| 92 | + rel="noopener noreferrer" |
| 93 | + className={styles.actionLink} |
| 94 | + > |
| 95 | + 📧 GitHub |
| 96 | + </a> |
| 97 | + )} |
| 98 | + |
| 99 | + {!isContributor && member.linkedin && ( |
| 100 | + <a |
| 101 | + href={member.linkedin} |
| 102 | + target="_blank" |
| 103 | + rel="noopener noreferrer" |
| 104 | + className={styles.actionLink} |
| 105 | + > |
| 106 | + 💼 LinkedIn |
| 107 | + </a> |
| 108 | + )} |
| 109 | + |
| 110 | + {isContributor && ( |
| 111 | + <a |
| 112 | + href={member.github} |
| 113 | + target="_self" |
| 114 | + className={styles.joinButton} |
| 115 | + > |
| 116 | + 🚀 Join Us |
| 117 | + </a> |
| 118 | + )} |
| 119 | + </div> |
| 120 | + </div> |
| 121 | + ); |
| 122 | +} |
| 123 | + |
| 124 | +export default function Team() { |
| 125 | + return ( |
| 126 | + <Layout |
| 127 | + title="Team" |
| 128 | + description="Meet the team behind vLLM Semantic Router"> |
| 129 | + <div className={styles.container}> |
| 130 | + <header className={styles.header}> |
| 131 | + <h1>Meet Our Team 👥</h1> |
| 132 | + <p className={styles.subtitle}> |
| 133 | + The passionate individuals building the future of intelligent LLM routing |
| 134 | + </p> |
| 135 | + </header> |
| 136 | + |
| 137 | + <main className={styles.main}> |
| 138 | + <section className={styles.section}> |
| 139 | + <h2>🌟 Core Team</h2> |
| 140 | + <p className={styles.sectionDescription}> |
| 141 | + The core maintainers who drive the project forward and make key decisions. |
| 142 | + </p> |
| 143 | + <div className={styles.teamGrid}> |
| 144 | + {coreTeam.map((member, index) => ( |
| 145 | + <TeamMember key={index} member={member} /> |
| 146 | + ))} |
| 147 | + </div> |
| 148 | + </section> |
| 149 | + |
| 150 | + |
| 151 | + |
| 152 | + <section className={styles.section}> |
| 153 | + <h2>🤝 Join Our Team</h2> |
| 154 | + <p className={styles.sectionDescription}> |
| 155 | + We're always looking for passionate contributors to join our community! |
| 156 | + </p> |
| 157 | + <div className={styles.joinTeamGrid}> |
| 158 | + {contributors.map((member, index) => ( |
| 159 | + <TeamMember key={index} member={member} isContributor={true} /> |
| 160 | + ))} |
| 161 | + </div> |
| 162 | + </section> |
| 163 | + |
| 164 | + <section className={styles.section}> |
| 165 | + <h2>🏆 Recognition</h2> |
| 166 | + <div className={styles.recognitionCard}> |
| 167 | + <h3>Contributor Recognition</h3> |
| 168 | + <p> |
| 169 | + We believe in recognizing the valuable contributions of our community members. |
| 170 | + Contributors who show consistent dedication and quality work in specific areas |
| 171 | + may be invited to become maintainers with write access to the repository. |
| 172 | + </p> |
| 173 | + |
| 174 | + <div className={styles.pathToMaintainer}> |
| 175 | + <h4>Path to Maintainership:</h4> |
| 176 | + <div className={styles.steps}> |
| 177 | + <div className={styles.step}> |
| 178 | + <span className={styles.stepNumber}>1</span> |
| 179 | + <div> |
| 180 | + <h5>Contribute Regularly</h5> |
| 181 | + <p>Make consistent, quality contributions to your area of interest</p> |
| 182 | + </div> |
| 183 | + </div> |
| 184 | + |
| 185 | + <div className={styles.step}> |
| 186 | + <span className={styles.stepNumber}>2</span> |
| 187 | + <div> |
| 188 | + <h5>Join a Working Group</h5> |
| 189 | + <p>Participate actively in one of our <a href="/community/work-groups">Working Groups</a></p> |
| 190 | + </div> |
| 191 | + </div> |
| 192 | + |
| 193 | + <div className={styles.step}> |
| 194 | + <span className={styles.stepNumber}>3</span> |
| 195 | + <div> |
| 196 | + <h5>Community Vote</h5> |
| 197 | + <p>Receive nomination and approval from the maintainer team</p> |
| 198 | + </div> |
| 199 | + </div> |
| 200 | + |
| 201 | + <div className={styles.step}> |
| 202 | + <span className={styles.stepNumber}>4</span> |
| 203 | + <div> |
| 204 | + <h5>Maintainer Access</h5> |
| 205 | + <p>Get invited to the maintainer group with write access</p> |
| 206 | + </div> |
| 207 | + </div> |
| 208 | + </div> |
| 209 | + </div> |
| 210 | + </div> |
| 211 | + </section> |
| 212 | + |
| 213 | + <section className={styles.section}> |
| 214 | + <h2>📞 Get Involved</h2> |
| 215 | + <div className={styles.involvementGrid}> |
| 216 | + <div className={styles.involvementCard}> |
| 217 | + <h3>🚀 Start Contributing</h3> |
| 218 | + <p>Ready to make your first contribution?</p> |
| 219 | + <a href="/community/contributing" className={styles.actionButton}> |
| 220 | + Contributing Guide |
| 221 | + </a> |
| 222 | + </div> |
| 223 | + |
| 224 | + <div className={styles.involvementCard}> |
| 225 | + <h3>👥 Join Working Groups</h3> |
| 226 | + <p>Find your area of expertise and connect with like-minded contributors.</p> |
| 227 | + <a href="/community/work-groups" className={styles.actionButton}> |
| 228 | + View Work Groups |
| 229 | + </a> |
| 230 | + </div> |
| 231 | + |
| 232 | + <div className={styles.involvementCard}> |
| 233 | + <h3>💬 Join Discussions</h3> |
| 234 | + <p>Participate in community discussions and share your ideas.</p> |
| 235 | + <a href="https://github.com/vllm-project/semantic-router/discussions" target="_blank" rel="noopener noreferrer" className={styles.actionButton}> |
| 236 | + GitHub Discussions |
| 237 | + </a> |
| 238 | + </div> |
| 239 | + </div> |
| 240 | + </section> |
| 241 | + </main> |
| 242 | + </div> |
| 243 | + </Layout> |
| 244 | + ); |
| 245 | +} |
0 commit comments