Developer Portfolio
Tanish Gamare
A B.Sc. IT student from Mumbai building things with Python. Currently learning Docker & exploring the edge between data + systems.
Turning curiosity into code
I believe in learning by doing. Every project teaches me something new—whether it's debugging exit codes in Docker, understanding React's state management, or designing systems that scale. I'm driven by the intersection of practical problems and elegant solutions.
Skills & Progression
Core Skills (Deep Expertise)
Primary language • Data processing • Automation
Semantic markup • Responsive design • Tailwind CSS
Version control • Collaboration • Pull requests
DOM manipulation • Async/await • Event handling
Actively Learning (Current Focus)
Specialized & Tools
Learning Arc (Last 6 Months)
A running log of what I shipped, debugged, and learned recently. Hover over milestones for magnified reading cues.
Projects
Featured Projects
BRUTASK
Active"A Pomodoro task manager that got me weirdly obsessed with React state"
Existing todo apps felt clunky for study sessions. I wanted something that combined task management + Pomodoro timer + ambient focus sounds in one place.
- • Kanban board with smooth drag-and-drop
- • Pomodoro timer + lofi study room with day/night cycle
- • 8 ambient sounds (rain, forest, coffee shop, etc.)
- • Multi-theme support (minimal geometric room, brutalist, etc.)
- • Progress bars for subtasks
const handleDragStart = (e, taskId) => {
setDragging(taskId);
// Key insight: mouse events give better
// control than HTML5 drag API
};
UI Layer (React Components)
↓
State Layer (useState + context)
↓
Persistence (LocalStorage)
↓
Audio (Web Audio API singleton)
Other Projects
Project Template
"Your next project description"
Quick description (1-2 sentences) of what this project does.
Project Template
"Your next project description"
Quick description (1-2 sentences) of what this project does.
Learnings & Insights
How I Debugged MongoDB Exit Code 139
When my MongoDB container kept crashing with exit code 139, I learned about signal handling, memory management, and Docker networking. This post walks through the debugging journey and the key insights that fixed it.
→ Read MoreOther Posts
Why HTML5 Drag API Sucks
A brief rant on why I rewrote BRUTASK's drag-and-drop with mouse events instead.
Read →React State Management: The Hard Way
Lessons learned building BRUTASK v2 and fixing theme switching across component trees.
Read →Building BRUTASK: Lessons Learned
A deep dive into the architecture, design decisions, and challenges of building a production Pomodoro app.
Read →Let's Build Something Together
Open to internships, freelance projects, or interesting collaborations. Whether you have an opportunity in mind or just want to chat—let's talk.