🚀 Day 5 of my 30 Days of Learning Challenge
Next day was all about learning Next.js, and it felt like unlocking a supercharged version of React. After getting comfortable with React in isolation, seeing what Next.js brings to the table gave me a clearer understanding of full-stack development possibilities — especially when building modern web applications.
🔑 Key Lessons:
File-Based Routing: Creating a new page is as simple as adding a file inside the /pages directory. No need to set up complex routers manually.
API Routes: I learned that you can define backend API endpoints directly inside a Next.js project. That means no separate backend server is needed for basic logic — everything can live inside one codebase.
Server-Side Rendering (SSR): I explored the difference between SSR and Client-Side Rendering (CSR), and when each is more appropriate.
React Hooks in Next.js: I practiced using useState and useEffect in the context of a page to handle form state and simulate fetching data.
TailwindCSS Integration: I styled my pages using Tailwind, appreciating how fast it is to build responsive interfaces with utility-first CSS.
✅ Takeaways:
Next.js helped me understand how modern apps can be full-stack by default.
It felt empowering to build both frontend UI and backend routes in the same workspace.
Styling with TailwindCSS complemented Next.js perfectly for clean and fast UI prototyping.
❓Question:
If you've used both plain React and Next.js — when do you prefer one over the other, and why?