| layout | page |
|---|---|
| title | Portfolio |
| subtitle | Building bridges between ancient wisdom and modern technology |
| full-width | true |
🤖
OpenHands/OpenHands
Improved frontend error banner with dismiss and expand functionality.
TypeScript
React
UX
View PR #12354 →
<div class="merged-card">
<div class="merged-card-icon">🧪</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
tox-dev/tox
</div>
<h4>Fix misleading ENVDIR reference</h4>
<p>Aligned devenv docs with the actual CLI parameter to avoid confusion.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">Docs</span>
<span class="merged-tag">CLI</span>
</div>
<a href="https://github.com/tox-dev/tox/pull/3670" class="merged-card-link" target="_blank">
View PR #3670 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🔧</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
jd/tenacity
</div>
<h4>Fix wait_chain docstring syntax</h4>
<p>Repaired the example to prevent syntax errors when copied by users.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">Docs</span>
<span class="merged-tag">Resilience</span>
</div>
<a href="https://github.com/jd/tenacity/pull/548" class="merged-card-link" target="_blank">
View PR #548 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">📦</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
pnpm/pnpm
</div>
<h4>Show workspace versions on mismatch</h4>
<p>Improved workspace resolution hints to speed up monorepo troubleshooting.</p>
<div class="merged-card-tags">
<span class="merged-tag">JavaScript</span>
<span class="merged-tag">CLI</span>
<span class="merged-tag">Monorepo</span>
</div>
<a href="https://github.com/pnpm/pnpm/pull/10466" class="merged-card-link" target="_blank">
View PR #10466 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🔥</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
infiniflow/ragflow
</div>
<h4>Chunk Retrieval Fix</h4>
<p>Ensure deleted chunks are not returned in retrieval results.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">RAG</span>
<span class="merged-tag">Backend</span>
</div>
<a href="https://github.com/infiniflow/ragflow/pull/12546" class="merged-card-link" target="_blank">
View PR #12546 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🎯</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
optuna/optuna
</div>
<h4>Replace .format() with f-strings</h4>
<p>Modernized string formatting in codebase using Python f-strings for better readability.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">ML</span>
<span class="merged-tag">Refactor</span>
</div>
<a href="https://github.com/optuna/optuna/pull/6412" class="merged-card-link" target="_blank">
View PR #6412 →
</a>
</div>
<!-- Duplicate set for infinite scroll effect -->
<div class="merged-card">
<div class="merged-card-icon">🤖</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
OpenHands/OpenHands
</div>
<h4>Dismissible Error Banner UX</h4>
<p>Improved frontend error banner with dismiss and expand functionality.</p>
<div class="merged-card-tags">
<span class="merged-tag">TypeScript</span>
<span class="merged-tag">React</span>
<span class="merged-tag">UX</span>
</div>
<a href="https://github.com/OpenHands/OpenHands/pull/12354" class="merged-card-link" target="_blank">
View PR #12354 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🧪</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
tox-dev/tox
</div>
<h4>Fix misleading ENVDIR reference</h4>
<p>Aligned devenv docs with the actual CLI parameter to avoid confusion.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">Docs</span>
<span class="merged-tag">CLI</span>
</div>
<a href="https://github.com/tox-dev/tox/pull/3670" class="merged-card-link" target="_blank">
View PR #3670 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🔧</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
jd/tenacity
</div>
<h4>Fix wait_chain docstring syntax</h4>
<p>Repaired the example to prevent syntax errors when copied by users.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">Docs</span>
<span class="merged-tag">Resilience</span>
</div>
<a href="https://github.com/jd/tenacity/pull/548" class="merged-card-link" target="_blank">
View PR #548 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">📦</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
pnpm/pnpm
</div>
<h4>Show workspace versions on mismatch</h4>
<p>Improved workspace resolution hints to speed up monorepo troubleshooting.</p>
<div class="merged-card-tags">
<span class="merged-tag">JavaScript</span>
<span class="merged-tag">CLI</span>
<span class="merged-tag">Monorepo</span>
</div>
<a href="https://github.com/pnpm/pnpm/pull/10466" class="merged-card-link" target="_blank">
View PR #10466 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🔥</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
infiniflow/ragflow
</div>
<h4>Chunk Retrieval Fix</h4>
<p>Ensure deleted chunks are not returned in retrieval results.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">RAG</span>
<span class="merged-tag">Backend</span>
</div>
<a href="https://github.com/infiniflow/ragflow/pull/12546" class="merged-card-link" target="_blank">
View PR #12546 →
</a>
</div>
<div class="merged-card">
<div class="merged-card-icon">🎯</div>
<div class="repo-name">
<svg viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"/></svg>
optuna/optuna
</div>
<h4>Replace .format() with f-strings</h4>
<p>Modernized string formatting in codebase using Python f-strings for better readability.</p>
<div class="merged-card-tags">
<span class="merged-tag">Python</span>
<span class="merged-tag">ML</span>
<span class="merged-tag">Refactor</span>
</div>
<a href="https://github.com/optuna/optuna/pull/6412" class="merged-card-link" target="_blank">
View PR #6412 →
</a>
</div>
</div>
30
PRs Merged
53
Ongoing PRs
5
Languages
80+
Repos Contributed
🤖
vllm-project/vllm
Refactoring KV cache updates across attention backends.
PythonCUDA
View PR #32509 →
🧠
stanfordnlp/dspy
Add cost tracking with budget constraints for LLM calls.
PythonAI
View PR #9207 →
🔗
langchain-ai/langchain
Handle null choices from model_dump() for vLLM compatibility.
PythonLLM
View PR #34791 →
⚡
vitejs/vite
Handle trailing slash in htmlPath for relative URL pre-transform.
TypeScriptBuild
View PR #21429 →
🤗
huggingface/transformers
Fix MobileNet v1/v2 image processor default interpolation.
PythonML
View PR #43313 →
🦖
facebook/docusaurus
Add support for Markdown file path links in pages plugin.
TypeScriptDocs
View PR #11666 →
🌬️
apache/airflow
Add E2E tests for Pools and Variables page functionality.
PythonDevOps
View PR #60592 →
A comprehensive NLP pipeline for processing and analyzing the Sanskrit epic Mahābhārata. Features text preprocessing, morphological analysis, and semantic search capabilities.
Sanskrit
NLP
Python
View Project →
<div class="project-card">
<h3>पक्षी (Pakshī) - Bird Identification</h3>
<p>An interactive web application for identifying Indian bird species using machine learning. Built with modern web technologies and computer vision models.</p>
<div class="project-tags">
<span class="tag">ML</span>
<span class="tag secondary">Computer Vision</span>
<span class="tag accent">JavaScript</span>
</div>
<a href="https://vedantmadane.github.io/pakshi/" class="project-link">
Play Now →
</a>
</div>
<div class="project-card">
<h3>Real-time Face Detection</h3>
<p>Browser-based multi-face detection system using WebRTC and TensorFlow.js. Detects and tracks multiple faces in real-time with bounding boxes.</p>
<div class="project-tags">
<span class="tag">TensorFlow.js</span>
<span class="tag secondary">WebRTC</span>
<span class="tag accent">Real-time</span>
</div>
<a href="https://vedantmadane.github.io/mkcl/camera/detect/#/" class="project-link">
Try Demo →
</a>
</div>
<div class="project-card">
<h3>Posture Detection System</h3>
<p>AI-powered posture analysis tool that helps users maintain proper sitting posture. Uses pose estimation to provide real-time feedback.</p>
<div class="project-tags">
<span class="tag">Pose Estimation</span>
<span class="tag secondary">AI</span>
<span class="tag accent">Health Tech</span>
</div>
<a href="https://vedantmadane.github.io/mkcl/camera/posture/" class="project-link">
Launch App →
</a>
</div>
<div class="project-card">
<h3>Telecom Analytics Dashboard</h3>
<p>Data visualization dashboard for telecom sector analytics, featuring interactive charts and real-time data processing capabilities.</p>
<div class="project-tags">
<span class="tag">Data Viz</span>
<span class="tag secondary">Analytics</span>
<span class="tag accent">Vue.js</span>
</div>
<a href="https://vedantmadane.github.io/telecom/" class="project-link">
Explore →
</a>
</div>
<div class="project-card">
<h3>दानव (Dānav) - Sanskrit Game</h3>
<p>An educational game that teaches Sanskrit vocabulary through interactive gameplay. Combines language learning with entertainment.</p>
<div class="project-tags">
<span class="tag">EdTech</span>
<span class="tag secondary">Sanskrit</span>
<span class="tag accent">Game Dev</span>
</div>
<a href="https://vedantmadane.github.io/krida/danav/" class="project-link">
Play Game →
</a>
</div>
<div class="skill-category">
<h4>🧠 AI/ML</h4>
<div class="skill-list">
<span class="skill-item">PyTorch</span>
<span class="skill-item">TensorFlow</span>
<span class="skill-item">scikit-learn</span>
<span class="skill-item">spaCy</span>
<span class="skill-item">Hugging Face</span>
<span class="skill-item">LangChain</span>
</div>
</div>
<div class="skill-category">
<h4>🌐 Web</h4>
<div class="skill-list">
<span class="skill-item">React</span>
<span class="skill-item">Vue.js</span>
<span class="skill-item">Node.js</span>
<span class="skill-item">FastAPI</span>
<span class="skill-item">WebRTC</span>
<span class="skill-item">REST APIs</span>
</div>
</div>
<div class="skill-category">
<h4>🔧 Tools & Infra</h4>
<div class="skill-list">
<span class="skill-item">Docker</span>
<span class="skill-item">Git</span>
<span class="skill-item">Linux</span>
<span class="skill-item">CI/CD</span>
<span class="skill-item">PostgreSQL</span>
<span class="skill-item">Redis</span>
</div>
</div>
<div class="skill-category">
<h4>📖 NLP & Languages</h4>
<div class="skill-list">
<span class="skill-item">Sanskrit</span>
<span class="skill-item">Hindi</span>
<span class="skill-item">Marathi</span>
<span class="skill-item">Russian</span>
<span class="skill-item">Morphological Analysis</span>
<span class="skill-item">Text Processing</span>
</div>
</div>
<div class="skill-category">
<h4>📊 Data</h4>
<div class="skill-list">
<span class="skill-item">Pandas</span>
<span class="skill-item">Polars</span>
<span class="skill-item">NumPy</span>
<span class="skill-item">Dask</span>
<span class="skill-item">Data Visualization</span>
<span class="skill-item">ETL Pipelines</span>
</div>
</div>
— What exists here may be found elsewhere; what does not exist here exists nowhere.