Skip to content

Commit 5653e04

Browse files
Merge pull request #1 from SathyaGnanakumar/codex/add-shellmate-project
[codex] Add Shellmate project and update portfolio
2 parents d65ba8e + 995406e commit 5653e04

4 files changed

Lines changed: 41 additions & 4 deletions

File tree

public/images/shellmate-detail.jpg

38.1 KB
Loading

public/images/shellmate.png

481 KB
Loading

src/components/ProjectModal.jsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,20 @@ const ProjectModal = ({ projectId, project, onClose }) => {
1919

2020
if (!project) return null;
2121

22-
const isFurrow = projectId === 'furrow';
22+
const isWideProject = projectId === 'furrow' || projectId === 'shellmate';
2323

2424
return (
2525
<div className="modal" role="dialog" aria-modal="true">
2626
<div className="modal-overlay" onClick={onClose} />
27-
<div className={`modal-content glass${isFurrow ? ' modal-content-wide' : ''}`}>
27+
<div className={`modal-content glass${isWideProject ? ' modal-content-wide' : ''}`}>
2828
<div className="modal-header">
2929
<h2>{project.title}</h2>
3030
<button className="close-button" onClick={onClose} aria-label="Close">
3131
×
3232
</button>
3333
</div>
3434
<div className="modal-body">
35-
<div className={`modal-image${isFurrow ? ' modal-image-wide' : ''}`}>
35+
<div className={`modal-image${isWideProject ? ' modal-image-wide' : ''}`}>
3636
<img src={project.image} alt={project.title} />
3737
</div>
3838
{project.description ? (

src/data/portfolio.js

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,25 @@ export const portfolioData = {
3131
'TensorFlow',
3232
'Machine Learning',
3333
'NLP',
34+
'Databases',
3435
'AWS',
3536
'LLMs',
37+
'Multi-Agent Systems',
3638
'Multimodal Models',
3739
'SQL'
3840
]
3941
},
4042
projects: {
4143
title: 'Projects',
4244
cards: [
45+
{
46+
id: 'shellmate',
47+
title: 'Shellmate',
48+
summary: 'Built a messaging-first campus assistant that helps UMD students find the right campus support through one simple text.',
49+
image: '/images/shellmate.png',
50+
imageAlt: 'Shellmate',
51+
tags: ['FastAPI', 'Python', 'OpenAI Agents SDK', 'SQLite', 'Exa', 'Claude Hackathon']
52+
},
4353
{
4454
id: 'furrow',
4555
title: 'Furrow',
@@ -54,7 +64,7 @@ export const portfolioData = {
5464
summary: "An assistive memory companion app for Alzheimer's patients using facial recognition and speaker-aware transcription to help recognize familiar faces and recall conversations.",
5565
image: '/images/remember-me.png',
5666
imageAlt: 'Remember Me',
57-
tags: ['React Native', 'FastAPI', 'Python', 'Supabase', 'InsightFace', 'ElevenLabs', 'Hackathon']
67+
tags: ['React Native', 'FastAPI', 'Python', 'Supabase', 'InsightFace', 'ElevenLabs', 'HenHacks 2026']
5868
},
5969
{
6070
id: 'route-vlm',
@@ -353,6 +363,33 @@ export const portfolioData = {
353363
],
354364
link: 'https://devpost.com/software/remember-me-bt47ud',
355365
linkText: 'View on Devpost'
366+
},
367+
shellmate: {
368+
title: 'Shellmate',
369+
image: '/images/shellmate-detail.jpg',
370+
description: '',
371+
tags: [
372+
'Python',
373+
'FastAPI',
374+
'OpenAI Agents SDK',
375+
'SQLite',
376+
'Sendblue',
377+
'Exa',
378+
'Firecrawl',
379+
'Campus Resource Discovery',
380+
'iMessage/SMS',
381+
'Anthropic x Maryland Hackathon'
382+
],
383+
highlights: [
384+
'Placed 2nd at the Anthropic x Maryland Hackathon out of roughly 400 participating students.',
385+
'Built a messaging-first campus assistant for UMD students that delivers clear next steps, relevant resources, and practical guidance directly over iMessage or SMS.',
386+
'Implemented a FastAPI backend with Sendblue webhook handling, user context and memory management, and a debug chat endpoint for local testing.',
387+
'Used the OpenAI Agents SDK to route student requests between a primary chat agent and a scraper agent for deeper research when campus questions required live information lookup.',
388+
'Created a source-backed campus knowledge layer with local UMD resource files, SQLite-backed conversation history, and live scraping tools powered by Exa and Firecrawl.',
389+
'Shipped the project for the Anthropic x Maryland Hackathon with a focus on reducing the hidden-curriculum gap for students who need help finding tutoring, scholarships, advising, and career resources.'
390+
],
391+
link: 'https://devpost.com/software/shellmate-pb5of9',
392+
linkText: 'View on Devpost'
356393
}
357394
}
358395
},

0 commit comments

Comments
 (0)