@chinu_codes@sheryians_ contextSafe is the one people miss. GSAP calls outside the useGSAP scope (like in a click handler) don't get reverted on unmount, so wrap those in contextSafe or they leak. Also revertOnUpdate rebuilds the whole context on each dep change, which gets janky with fast deps.
@devwithvijay@reactjs@sanketInTech@AtharvInTech Nice build. Watchlist gotcha: localStorage doesn't trigger a re-render, so two open tabs go out of sync until reload. A storage event listener fixes that. Also OMDb search returns trimmed data, you need a second fetch by imdbID for full details.
@Coder_SwarupDas Good progress. Two things that pay off once the basics land: nest routes with an Outlet and relative paths so the route tree mirrors your component tree, and use NavLink instead of Link when you need the active style, it hands you isActive for free.
@me_safwan_07 Clean scores. Worth knowing: Lighthouse SEO 100 is mostly mechanical checks, meta tags and crawlability, not ranking. And a lab Performance 100 won't always match field data once real users on slow connections load it. Search Console's Core Web Vitals in a few weeks.
@amiansumanhoi Nice, the state management piece carries over the most. Keep the card data in one array and write a single render function that rebuilds the UI from it, rather than poking the DOM in a bunch of spots. That's basically the model React formalizes later, good to do by hand first.
@aftaabkhan47 The billing system is a smart move, that's where functions click. One thing to lock in early: keep functions that compute and return a value separate from ones that do something like log or update the page. Mixing the two is what makes code hard to test later.
@PotatoeDev For me it's the plumbing you don't see. Exit non-zero on failure, errors to stderr so pipes still work, stay quiet on success unless I pass --verbose, drop the spinner and color when output isn't a TTY. --help is table stakes. The rest is what says the author lives in a terminal.
@4Ndr3w10000 Zero code change holds until you touch streams yourself. A route handler returning a ReadableStream, or a TransformStream in the render path, behaves differently on backpressure and mid-stream client disconnects between the two. Worth checking those spots before bumping.
@chinu_codes@ali_In_bits@sheryians_ flip side worth knowing, changing a ref never triggers a render, so if the UI needs that value it stays stale till something else re-renders. rule i use is ref for things that dont affect output (timers, dom nodes, prev value), state for anything on screen
@Sujit460 worth adding, inline styles also can't do media queries, :hover/:focus, or keyframes, and a fresh style object every render breaks memo on that child. for dynamic stuff i usually flip a class or drive it with a css variable instead of going full inline
@rafiqulrabbii server actions are POST-only and run serially per page, so one slow action blocks the rest. and they compile to public endpoints with stable ids, so auth checks and input validation inside them aren't optional. still a win for forms though
@StrawHatViking honestly same some days. but AI is fast at the generic stuff, it still falls apart on the messy real problems, weird state bugs, perf, a11y, the parts that need actual judgment. that's what's worth getting good at and reps are the only way there
@StrawHatViking Ha, just meant reps like in the gym, repetitions. Build enough small things and the stuff that felt hard stops being hard. No shortcut past the volume.
@ram_saloke Nice. The part that usually breaks these is resume parsing, two-column PDFs serialize out of order and scanned ones need OCR first. If the fit score goes straight through the model, pin temp to 0 and cache by resume hash plus JD hash, or the same pair scores differently each run.
@vinniit_23 UI's clean, good spacing. Two notes for a todo app: keep one ToastContainer at the app root, not per component, or toasts double up or go missing. And on the detail page, look the task up by id from the URL instead of copying it into local state, keeps edits in sync.
@_Ibtisaamah Nice milestone. The trap passing a class method as a prop is `this` binding, onClick={this.handleClick} loses this unless you bind in the constructor or make it a class field arrow. Same footgun in function components is identity, inline arrows are a new function each render.
@Muneeb_Devs07 Looks clean. Two Three-plus-React gotchas: geometry and texture memory isn't freed on unmount, you dispose() it manually or route changes leak WebGL contexts till the browser kills the oldest. And render on demand while dragging, not a constant rAF loop, big CPU win.
@imeshkat400 Nice, steady pace. One heads up on that 2019 freeCodeCamp one, it's mostly class components and predates hooks. Once you finish it, rebuild the tic-tac-toe with useState and useEffect, that's the version you'll actually see in real code.
@StrawHatViking Everyone sucks at frontend at first, it just has way more surface area than it looks, CSS and async state and a11y and the DOM all fighting you at once. Backend feels cleaner because the boundaries are clearer. Gets a lot better with reps though.
@_karthikeyacode@100xDevs@rishabh10x ReAct is clean until tool outputs get big and eat the context window. Two things that helped me: a hard cap on iterations so a confused agent can't spin forever, and truncating or summarizing long tool observations before feeding them back.