Week 4 & 5 – Tailwind CSS, Responsive Design & A Shift in How I Build UI

Hi, I’m Deepika 👋 I’m a 3rd year B.Tech Information Technology student and an aspiring Full-Stack Developer with a strong interest in building clean, user-friendly web applications. I enjoy working with React, Flask, Firebase, and SQLite, and I’m currently focused on strengthening my frontend fundamentals through a 3-month sprint covering HTML, CSS, Tailwind CSS, and responsive UI design. I write about my learning journey, frontend concepts, and small projects here on Hashnode. I also share my source code and daily practice on GitHub as part of my #BuildInPublic approach. I’m open to internships, collaborations, and learning opportunities. Let’s connect and grow together 🚀
In Week 4 and Week 5 of my 3-Month Frontend Engineering Sprint, I focused deeply on Tailwind CSS and layout systems like Grid and responsive design.
Before this, I was mostly writing traditional CSS.
It worked. But I often repeated styles, switched between HTML and CSS files constantly, and sometimes made random design decisions without a structured approach.
That’s when I started learning Tailwind CSS seriously.
Initial Confusion and Real Mistakes
At first, Tailwind felt overwhelming.
Too many classes.
Too many utilities.
My HTML looked crowded.
I also made some practical mistakes while setting it up.
I initially installed Tailwind CSS version 3. Later, I tried version 4 without fully understanding the setup differences. That created confusion in my project configuration.
One day, my CSS output was not updating. I thought something was broken. After debugging for a while, I realized I forgot to run:
npm run build
That small mistake taught me something important:
Frontend tooling requires discipline.
The setup process matters just as much as writing code.
Those moments were frustrating — but they helped me understand the workflow better.
3 Key Things I Learned
1. Utility-First Styling Changed My Thinking
Compared to traditional CSS, Tailwind feels easier for me now.
I can write styling directly inside the class attribute. I don’t have to jump between multiple files. Everything is visible in one place.
At first, I thought this approach was messy. But once I understood grouping, spacing logic, and consistency, it started feeling powerful.
Instead of inventing class names, I use predefined utilities. That improves speed and design consistency.
2. Structured Use of Colors and Typography
Earlier, I would choose colors randomly.
With Tailwind’s color palette and typography utilities, I started thinking about:
• Visual hierarchy
• Consistent spacing
• Font scaling
• Contrast and readability
This made me more intentional with design decisions.
I slowly stopped thinking like someone just styling a page — and started thinking like someone building a system.
3. Responsive Design & Layout Systems
Understanding breakpoints like sm:, md:, and lg: was a major shift.
I now think mobile-first.
But what really interested me was screen orientation.
When I tested my layouts on mobile, I noticed something important:
Portrait and landscape modes completely change how content feels.
A layout that looks clean in portrait mode can feel stretched or unbalanced in landscape mode.
That made me curious.
I kept resizing the browser window. I observed how Grid rearranged content. I experimented with spacing adjustments at different breakpoints.
Instead of just asking:
“Does it work?”
I started asking:
“How does it behave across devices and orientations?”
That mindset shift made responsive design feel less like a requirement and more like a responsibility.
Tailwind vs Traditional CSS – My Honest Experience
CSS is powerful and foundational. Learning it properly is important.
But after understanding Tailwind, I personally feel it is easier for my workflow.
Writing styles directly inside the class attribute reduces context switching. It makes development faster and more focused.
Instead of managing large CSS files, I work more component-focused.
This is just my current experience — and I’m still learning. But right now, Tailwind feels more practical for building modern, responsive UI.
What Changed for Me
Before this, my main goal was:
Make it work.
Now my focus is:
• Clean structure
• Reusability
• Responsiveness
• Consistency
• Predictable layout behavior
That small mindset shift feels powerful.
I’m not just writing styles anymore.
I’m thinking about systems.
What’s Next
In Week 6, I’ll be building a Tailwind project to put everything into practice.
Because understanding concepts is one step.
Applying them is where real growth happens.
Learning step by step.
Improving every week.