[{"type_of":"article","id":4246588,"title":"Feels like a feature until it's infrastructure","description":"A while ago I wrote about pricing logic and why it deserves to be treated as infrastructure instead...","readable_publish_date":"Jul 27","slug":"feels-like-a-feature-until-its-infrastructure-56mo","path":"/dimidan/feels-like-a-feature-until-its-infrastructure-56mo","url":"https://dev.to/dimidan/feels-like-a-feature-until-its-infrastructure-56mo","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-27T16:01:18Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpwlhq9to7e4hb1h8tz95.png","canonical_url":"https://dev.to/dimidan/feels-like-a-feature-until-its-infrastructure-56mo","created_at":"2026-07-27T15:59:46Z","edited_at":"2026-07-27T16:18:59Z","crossposted_at":null,"published_at":"2026-07-27T16:01:18Z","last_comment_at":"2026-07-27T16:01:18Z","reading_time_minutes":4,"tag_list":["architecture","javascript","react","frontend"],"tags":"architecture, javascript, react, frontend","user":{"name":"DimiDan","username":"dimidan","twitter_username":null,"github_username":"ddanyliuk","user_id":579227,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F579227%2F382e9002-f48c-4b04-9340-18a6685a3de3.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F579227%2F382e9002-f48c-4b04-9340-18a6685a3de3.png"}},{"type_of":"article","id":4240246,"title":"React useDeepCompareEffect: Fix useEffect Object Dependencies (2026)","description":"React useDeepCompareEffect: Fix useEffect Object Dependencies (2026)   You wire up a fetch....","readable_publish_date":"Jul 27","slug":"react-usedeepcompareeffect-fix-useeffect-object-dependencies-2026-2f91","path":"/childrentime/react-usedeepcompareeffect-fix-useeffect-object-dependencies-2026-2f91","url":"https://dev.to/childrentime/react-usedeepcompareeffect-fix-useeffect-object-dependencies-2026-2f91","comments_count":0,"public_reactions_count":6,"collection_id":null,"published_timestamp":"2026-07-27T03:05:20Z","language":"en","subforem_id":1,"positive_reactions_count":6,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fi4l94t5pmz844uwnwynh.png","canonical_url":"https://reactuse.com/blog/react-usedeepcompareeffect-hook/","created_at":"2026-07-27T02:53:09Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T03:05:20Z","last_comment_at":"2026-07-27T03:05:20Z","reading_time_minutes":8,"tag_list":["react","javascript","webdev","tutorial"],"tags":"react, javascript, webdev, tutorial","user":{"name":"reactuse.com","username":"childrentime","twitter_username":null,"github_username":"childrentime","user_id":1119566,"website_url":"https://www.reactuse.com/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1119566%2F2b0c07f8-e03d-420f-8876-c660f7ce083c.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1119566%2F2b0c07f8-e03d-420f-8876-c660f7ce083c.png"}},{"type_of":"article","id":4241252,"title":"The state of zero-runtime CSS-in-JS, mid-2026","description":"Two disclosures before the map. I maintain Linaria, and I built dx-styles, one of the libraries...","readable_publish_date":"Jul 27","slug":"the-state-of-zero-runtime-css-in-js-mid-2026-5ci6","path":"/anber/the-state-of-zero-runtime-css-in-js-mid-2026-5ci6","url":"https://dev.to/anber/the-state-of-zero-runtime-css-in-js-mid-2026-5ci6","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-27T05:57:41Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdx-styles.dev%2Fog-image.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdx-styles.dev%2Fog-image.png","canonical_url":"https://dx-styles.dev/blog/state-of-zero-runtime-css-in-js/","created_at":"2026-07-27T05:57:41Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T05:57:41Z","last_comment_at":"2026-07-27T05:57:41Z","reading_time_minutes":6,"tag_list":["react","css","webdev","javascript"],"tags":"react, css, webdev, javascript","user":{"name":"Anton Evzhakov","username":"anber","twitter_username":null,"github_username":"Anber","user_id":4024519,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4024519%2F91d3f9e5-0a4b-4303-a2d3-c451108b94ea.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4024519%2F91d3f9e5-0a4b-4303-a2d3-c451108b94ea.jpg"}},{"type_of":"article","id":4249373,"title":"React useDropZone Hook: Build a File Drop Zone (2026)","description":"React useDropZone Hook: Build a File Drop Zone (2026)   Drag a file over a drop zone that...","readable_publish_date":"Jul 28","slug":"react-usedropzone-hook-build-a-file-drop-zone-2026-5chi","path":"/childrentime/react-usedropzone-hook-build-a-file-drop-zone-2026-5chi","url":"https://dev.to/childrentime/react-usedropzone-hook-build-a-file-drop-zone-2026-5chi","comments_count":0,"public_reactions_count":5,"collection_id":null,"published_timestamp":"2026-07-28T03:07:26Z","language":"en","subforem_id":1,"positive_reactions_count":5,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb8lmglp1dkiah532eg0z.png","canonical_url":"https://reactuse.com/blog/react-usedropzone-hook/","created_at":"2026-07-28T02:56:33Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-28T03:07:26Z","last_comment_at":"2026-07-28T03:07:26Z","reading_time_minutes":5,"tag_list":["react","javascript","webdev","tutorial"],"tags":"react, javascript, webdev, tutorial","user":{"name":"reactuse.com","username":"childrentime","twitter_username":null,"github_username":"childrentime","user_id":1119566,"website_url":"https://www.reactuse.com/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1119566%2F2b0c07f8-e03d-420f-8876-c660f7ce083c.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1119566%2F2b0c07f8-e03d-420f-8876-c660f7ce083c.png"}},{"type_of":"article","id":4246715,"title":"Optimistic React UIs that don't drift from the server","description":"I don’t ship optimistic UI to make things “feel fast”; I ship it because the p95 round-trip to a...","readable_publish_date":"Jul 27","slug":"optimistic-react-uis-that-dont-drift-from-the-server-536l","path":"/yaseenyk04/optimistic-react-uis-that-dont-drift-from-the-server-536l","url":"https://dev.to/yaseenyk04/optimistic-react-uis-that-dont-drift-from-the-server-536l","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-27T16:17:50Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fya4zpdnace3v66t3iuun.png","canonical_url":"https://yaseenkhatib.streamerosai.com/blog/optimistic-react-uis-that-dont-drift-from-the-server/","created_at":"2026-07-27T16:16:35Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T16:17:50Z","last_comment_at":"2026-07-27T16:17:50Z","reading_time_minutes":7,"tag_list":["frontend","react","state","architecture"],"tags":"frontend, react, state, architecture","user":{"name":"Yaseen Khatib","username":"yaseenyk04","twitter_username":null,"github_username":null,"user_id":4049819,"website_url":"https://yaseenkhatib.streamerosai.com/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4049819%2F12dcf895-7397-40aa-8f24-b9d5d64f6736.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4049819%2F12dcf895-7397-40aa-8f24-b9d5d64f6736.jpg"}},{"type_of":"article","id":4238319,"title":"Build-scanner — a zero-config static scanner for SQLi, NoSQLi, CORS, CSP \u0026 CSRF in React/Node apps (pre-release)","description":"Modern React/Node apps ship through build pipelines fast enough that common, high-impact...","readable_publish_date":"Jul 26","slug":"build-scanner-a-zero-config-static-scanner-for-sqli-nosqli-cors-csp-csrf-in-reactnode-apps-2o5e","path":"/s_s_4ac423416882e2b70a41e/build-scanner-a-zero-config-static-scanner-for-sqli-nosqli-cors-csp-csrf-in-reactnode-apps-2o5e","url":"https://dev.to/s_s_4ac423416882e2b70a41e/build-scanner-a-zero-config-static-scanner-for-sqli-nosqli-cors-csp-csrf-in-reactnode-apps-2o5e","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-26T19:10:53Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4ibmuc1f9zlcn7djzoct.png","canonical_url":"https://dev.to/s_s_4ac423416882e2b70a41e/build-scanner-a-zero-config-static-scanner-for-sqli-nosqli-cors-csp-csrf-in-reactnode-apps-2o5e","created_at":"2026-07-26T19:10:53Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T19:10:53Z","last_comment_at":"2026-07-26T19:10:53Z","reading_time_minutes":1,"tag_list":["javascript","node","react","security"],"tags":"javascript, node, react, security","user":{"name":"S S","username":"s_s_4ac423416882e2b70a41e","twitter_username":null,"github_username":null,"user_id":1565044,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1565044%2Fcf2e6371-e5b0-4631-9de4-6bcef75f2b5e.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1565044%2Fcf2e6371-e5b0-4631-9de4-6bcef75f2b5e.jpg"}},{"type_of":"article","id":4247420,"title":"I Replaced ESLint and Prettier with Biome","description":"I used to juggle ESLint and Prettier every day.  Two tools. Multiple config files. Plugin...","readable_publish_date":"Jul 27","slug":"i-replaced-eslint-and-prettier-with-biome-1oi5","path":"/joodi/i-replaced-eslint-and-prettier-with-biome-1oi5","url":"https://dev.to/joodi/i-replaced-eslint-and-prettier-with-biome-1oi5","comments_count":0,"public_reactions_count":5,"collection_id":null,"published_timestamp":"2026-07-27T18:45:57Z","language":"en","subforem_id":1,"positive_reactions_count":5,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9n8p2n7430298oo0b1o7.png","canonical_url":"https://dev.to/joodi/i-replaced-eslint-and-prettier-with-biome-1oi5","created_at":"2026-07-27T18:45:57Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T18:45:57Z","last_comment_at":"2026-07-27T18:45:57Z","reading_time_minutes":2,"tag_list":["frontend","eslint","react","nextjs"],"tags":"frontend, eslint, react, nextjs","user":{"name":"Joodi","username":"joodi","twitter_username":null,"github_username":"MiladJoodi","user_id":1320259,"website_url":"https://joodi.vercel.app/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1320259%2F2954b0e0-8317-4bda-bad6-846087f55a96.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1320259%2F2954b0e0-8317-4bda-bad6-846087f55a96.jpg"}},{"type_of":"article","id":4236989,"title":"How to Build a Custom Debounce Hook in React (Complete Guide)","description":"Modern React applications often make API requests while users type into search boxes. Without...","readable_publish_date":"Jul 26","slug":"how-to-build-a-custom-debounce-hook-in-react-complete-guide-cb4","path":"/shreyanshjha/how-to-build-a-custom-debounce-hook-in-react-complete-guide-cb4","url":"https://dev.to/shreyanshjha/how-to-build-a-custom-debounce-hook-in-react-complete-guide-cb4","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-26T13:55:50Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fidyzjfsrt2pv83iukau1.png","canonical_url":"https://dev.to/shreyanshjha/how-to-build-a-custom-debounce-hook-in-react-complete-guide-cb4","created_at":"2026-07-26T13:46:23Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T13:55:50Z","last_comment_at":"2026-07-26T13:55:50Z","reading_time_minutes":2,"tag_list":["frontend","javascript","react","tutorial"],"tags":"frontend, javascript, react, tutorial","user":{"name":"Shreyansh Jha","username":"shreyanshjha","twitter_username":null,"github_username":null,"user_id":4047972,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047972%2F97ca38cb-d9e1-411f-b654-9036775085b3.jpeg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047972%2F97ca38cb-d9e1-411f-b654-9036775085b3.jpeg"}},{"type_of":"article","id":4245520,"title":"Building a Small, Local-First Web Audio Tool (and the Edge Cases I Didn't Expect)","description":"I set out to build a very small browser tool: press a button, play a short low-frequency sweep, stop...","readable_publish_date":"Jul 27","slug":"building-a-small-local-first-web-audio-tool-and-the-edge-cases-i-didnt-expect-o1f","path":"/zack_e36e64fd6fcd12ebbc13/building-a-small-local-first-web-audio-tool-and-the-edge-cases-i-didnt-expect-o1f","url":"https://dev.to/zack_e36e64fd6fcd12ebbc13/building-a-small-local-first-web-audio-tool-and-the-edge-cases-i-didnt-expect-o1f","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-27T13:21:30Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvpjo6n2v9pt1l47dx648.png","canonical_url":"https://dev.to/zack_e36e64fd6fcd12ebbc13/building-a-small-local-first-web-audio-tool-and-the-edge-cases-i-didnt-expect-o1f","created_at":"2026-07-27T13:21:30Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T13:21:30Z","last_comment_at":"2026-07-27T13:21:30Z","reading_time_minutes":6,"tag_list":["webdev","javascript","react","showdev"],"tags":"webdev, javascript, react, showdev","user":{"name":"zack","username":"zack_e36e64fd6fcd12ebbc13","twitter_username":null,"github_username":null,"user_id":4047935,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047935%2F84015d3c-eb3a-4d69-9c4a-de26ba2311ca.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047935%2F84015d3c-eb3a-4d69-9c4a-de26ba2311ca.png"},"flare_tag":{"name":"showdev","bg_color_hex":"#091b47","text_color_hex":"#b2ffe1"}},{"type_of":"article","id":4246187,"title":"You Think Senior Developers Prompt Better. They Just Stopped Hoping the AI Would Guess Right.","description":"There is a common belief about why experienced developers get better results from AI. The belief is...","readable_publish_date":"Jul 27","slug":"you-think-senior-developers-prompt-better-they-just-stopped-hoping-the-ai-would-guess-right-5dno","path":"/avery_code/you-think-senior-developers-prompt-better-they-just-stopped-hoping-the-ai-would-guess-right-5dno","url":"https://dev.to/avery_code/you-think-senior-developers-prompt-better-they-just-stopped-hoping-the-ai-would-guess-right-5dno","comments_count":1,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-27T15:00:45Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fygtdecwjh4qy8opavibm.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fygtdecwjh4qy8opavibm.png","canonical_url":"https://dev.to/avery_code/you-think-senior-developers-prompt-better-they-just-stopped-hoping-the-ai-would-guess-right-5dno","created_at":"2026-07-27T15:00:45Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T15:00:45Z","last_comment_at":"2026-07-28T05:44:13Z","reading_time_minutes":7,"tag_list":["react","ai","webdev","productivity"],"tags":"react, ai, webdev, productivity","user":{"name":"Avery","username":"avery_code","twitter_username":null,"github_username":null,"user_id":3837121,"website_url":"https://averylabs.gumroad.com/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3837121%2F51bc1289-fc3a-49a8-ace7-d5052dd80cd9.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3837121%2F51bc1289-fc3a-49a8-ace7-d5052dd80cd9.png"}},{"type_of":"article","id":4238085,"title":"🚀 I released Lookman v2.0 this weekend!","description":"🚀 I released Lookman v2.0 this weekend!  If you’ve ever debugged a React app, you know the...","readable_publish_date":"Jul 26","slug":"i-released-lookman-v20-this-weekend-4k84","path":"/gurjotsaini53/i-released-lookman-v20-this-weekend-4k84","url":"https://dev.to/gurjotsaini53/i-released-lookman-v20-this-weekend-4k84","comments_count":0,"public_reactions_count":5,"collection_id":null,"published_timestamp":"2026-07-26T18:07:55Z","language":"en","subforem_id":1,"positive_reactions_count":5,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbk634jbfj4cyh1i43nop.png","canonical_url":"https://dev.to/gurjotsaini53/i-released-lookman-v20-this-weekend-4k84","created_at":"2026-07-26T18:07:55Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T18:07:55Z","last_comment_at":"2026-07-26T18:07:55Z","reading_time_minutes":1,"tag_list":["debugging","javascript","react","showdev"],"tags":"debugging, javascript, react, showdev","user":{"name":"Gurjot Singh","username":"gurjotsaini53","twitter_username":null,"github_username":"gurjotsaini53","user_id":717874,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F717874%2Ff31744ff-9d64-4228-aae1-9748a7757db9.jpeg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F717874%2Ff31744ff-9d64-4228-aae1-9748a7757db9.jpeg"},"flare_tag":{"name":"showdev","bg_color_hex":"#091b47","text_color_hex":"#b2ffe1"}},{"type_of":"article","id":4236222,"title":"Building SecureTrack: An AI-Powered Cybersecurity Management Platform with React, Django \u0026 AI","description":"Cybersecurity is becoming increasingly important as organizations face more security threats every...","readable_publish_date":"Jul 26","slug":"building-securetrack-an-ai-powered-cybersecurity-management-platform-with-react-django-ai-46mb","path":"/anuskabhandari/building-securetrack-an-ai-powered-cybersecurity-management-platform-with-react-django-ai-46mb","url":"https://dev.to/anuskabhandari/building-securetrack-an-ai-powered-cybersecurity-management-platform-with-react-django-ai-46mb","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-26T10:54:21Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0zpyw1ncwimftpy9t3zp.png","canonical_url":"https://dev.to/anuskabhandari/building-securetrack-an-ai-powered-cybersecurity-management-platform-with-react-django-ai-46mb","created_at":"2026-07-26T10:48:53Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T10:54:21Z","last_comment_at":"2026-07-26T10:54:21Z","reading_time_minutes":3,"tag_list":["cybersecurity","django","fullstack","react"],"tags":"cybersecurity, django, fullstack, react","user":{"name":"Anuska Bhandari","username":"anuskabhandari","twitter_username":null,"github_username":"anuskabhandari","user_id":4047779,"website_url":"https://eranuskabhandari.com.np/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047779%2F8172b616-b704-4d15-a100-716b01fe5148.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047779%2F8172b616-b704-4d15-a100-716b01fe5148.jpg"}},{"type_of":"article","id":4245017,"title":"Cómo solucionar el bucle infinito en `useEffect` con objetos y arrays","description":"Cómo solucionar el bucle infinito en useEffect con objetos y arrays            Explicación...","readable_publish_date":"Jul 27","slug":"como-solucionar-el-bucle-infinito-en-useeffect-con-objetos-y-arrays-45e3","path":"/erickeduardoramos03/como-solucionar-el-bucle-infinito-en-useeffect-con-objetos-y-arrays-45e3","url":"https://dev.to/erickeduardoramos03/como-solucionar-el-bucle-infinito-en-useeffect-con-objetos-y-arrays-45e3","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-27T12:15:00Z","language":"es","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F68vdl96qmnkzh0fgdqz5.png","canonical_url":"https://dev.to/erickeduardoramos03/como-solucionar-el-bucle-infinito-en-useeffect-con-objetos-y-arrays-45e3","created_at":"2026-07-27T12:15:01Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T12:15:00Z","last_comment_at":"2026-07-27T12:15:00Z","reading_time_minutes":2,"tag_list":["frontend","javascript","react","tutorial"],"tags":"frontend, javascript, react, tutorial","user":{"name":"Erick Eduardo Ramos","username":"erickeduardoramos03","twitter_username":null,"github_username":"ErickEduardoRamos03","user_id":3943545,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3943545%2Ff8b96fcc-b7e6-4c21-a809-3c6ffedaea58.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3943545%2Ff8b96fcc-b7e6-4c21-a809-3c6ffedaea58.png"}},{"type_of":"article","id":4250958,"title":"Building a Modern CRM Dashboard with React, Tailwind CSS, and Recharts","description":"Building a modern Customer Relationship Management (CRM) platform requires more than just displaying...","readable_publish_date":"Jul 28","slug":"building-a-modern-crm-dashboard-with-react-tailwind-css-and-recharts-8mf","path":"/software_solutions_740799/building-a-modern-crm-dashboard-with-react-tailwind-css-and-recharts-8mf","url":"https://dev.to/software_solutions_740799/building-a-modern-crm-dashboard-with-react-tailwind-css-and-recharts-8mf","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-28T06:36:36Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F91dn0zuxk9kvmjqtpd69.png","canonical_url":"https://dev.to/software_solutions_740799/building-a-modern-crm-dashboard-with-react-tailwind-css-and-recharts-8mf","created_at":"2026-07-28T06:36:36Z","edited_at":"2026-07-28T06:41:25Z","crossposted_at":null,"published_at":"2026-07-28T06:36:36Z","last_comment_at":"2026-07-28T06:36:36Z","reading_time_minutes":4,"tag_list":["react","javascript","tailwindcss","webdev"],"tags":"react, javascript, tailwindcss, webdev","user":{"name":"Software Solutions","username":"software_solutions_740799","twitter_username":null,"github_username":null,"user_id":4048806,"website_url":"https://softwaresolutions.co.in/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048806%2F714eaa67-d0af-42b0-9071-315e3a3005a0.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048806%2F714eaa67-d0af-42b0-9071-315e3a3005a0.png"}},{"type_of":"article","id":4236191,"title":"Cómo solucionar \\\"Text content does not match server-rendered HTML\\\" en Next.js App Router","description":"Cómo solucionar \"Text content does not match server-rendered HTML\" en Next.js App...","readable_publish_date":"Jul 26","slug":"como-solucionar-text-content-does-not-match-server-rendered-html-en-nextjs-app-router-287","path":"/erickeduardoramos03/como-solucionar-text-content-does-not-match-server-rendered-html-en-nextjs-app-router-287","url":"https://dev.to/erickeduardoramos03/como-solucionar-text-content-does-not-match-server-rendered-html-en-nextjs-app-router-287","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-26T10:38:45Z","language":"es","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg","canonical_url":"https://dev.to/erickeduardoramos03/como-solucionar-text-content-does-not-match-server-rendered-html-en-nextjs-app-router-287","created_at":"2026-07-26T10:38:45Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T10:38:45Z","last_comment_at":"2026-07-26T10:38:45Z","reading_time_minutes":3,"tag_list":["debugging","javascript","nextjs","react"],"tags":"debugging, javascript, nextjs, react","user":{"name":"Erick Eduardo Ramos","username":"erickeduardoramos03","twitter_username":null,"github_username":"ErickEduardoRamos03","user_id":3943545,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3943545%2Ff8b96fcc-b7e6-4c21-a809-3c6ffedaea58.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3943545%2Ff8b96fcc-b7e6-4c21-a809-3c6ffedaea58.png"}},{"type_of":"article","id":4240778,"title":"Stop Writing API Routes: Next.js Server Actions","description":"The Client-to-API Friction  In traditional React Single Page Applications (SPAs), submitting a simple...","readable_publish_date":"Jul 27","slug":"stop-writing-api-routes-nextjs-server-actions-17fj","path":"/iprajapatiparesh/stop-writing-api-routes-nextjs-server-actions-17fj","url":"https://dev.to/iprajapatiparesh/stop-writing-api-routes-nextjs-server-actions-17fj","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-27T04:44:25Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffste5hilfjyntk3ub46g.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffste5hilfjyntk3ub46g.png","canonical_url":"https://smarttechdevs.in/blog/nextjs-server-actions-architecture","created_at":"2026-07-27T04:44:25Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T04:44:25Z","last_comment_at":"2026-07-27T04:44:25Z","reading_time_minutes":2,"tag_list":["nextjs","react","javascript","webdev"],"tags":"nextjs, react, javascript, webdev","user":{"name":"Prajapati Paresh","username":"iprajapatiparesh","twitter_username":null,"github_username":null,"user_id":3818348,"website_url":"https://smarttechdevs.in/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3818348%2F98e76f01-e2fd-4f05-bc05-ea804d4fc2a5.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3818348%2F98e76f01-e2fd-4f05-bc05-ea804d4fc2a5.jpg"}},{"type_of":"article","id":4250765,"title":"Building a Browser-Based Voxel Editor with React Three Fiber","description":"I have been building VoxelDraft, a voxel editor that runs entirely in the browser without an account...","readable_publish_date":"Jul 28","slug":"building-a-browser-based-voxel-editor-with-react-three-fiber-20af","path":"/yamada_tanaka_c941e884150/building-a-browser-based-voxel-editor-with-react-three-fiber-20af","url":"https://dev.to/yamada_tanaka_c941e884150/building-a-browser-based-voxel-editor-with-react-three-fiber-20af","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-28T06:37:06Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxwglmni0tvql5vong5kv.png","canonical_url":"https://dev.to/yamada_tanaka_c941e884150/building-a-browser-based-voxel-editor-with-react-three-fiber-20af","created_at":"2026-07-28T06:15:48Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-28T06:37:06Z","last_comment_at":"2026-07-28T06:37:06Z","reading_time_minutes":3,"tag_list":["react","threejs","webdev","gamedev"],"tags":"react, threejs, webdev, gamedev","user":{"name":"VOXEL_DRAFT","username":"yamada_tanaka_c941e884150","twitter_username":null,"github_username":null,"user_id":4048489,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048489%2Ff06d406a-d4df-410e-b202-a66aea73ca1c.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048489%2Ff06d406a-d4df-410e-b202-a66aea73ca1c.png"}},{"type_of":"article","id":4251102,"title":"React Performance Optimization Techniques That Actually Work","description":"Performance optimization in React is often surrounded by myths. Developers routinely wrap every...","readable_publish_date":"Jul 28","slug":"react-performance-optimization-techniques-that-actually-work-2e1k","path":"/software_solutions_740799/react-performance-optimization-techniques-that-actually-work-2e1k","url":"https://dev.to/software_solutions_740799/react-performance-optimization-techniques-that-actually-work-2e1k","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-28T06:54:40Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5gyv4rjt0idegdj582ke.png","canonical_url":"https://dev.to/software_solutions_740799/react-performance-optimization-techniques-that-actually-work-2e1k","created_at":"2026-07-28T06:54:40Z","edited_at":"2026-07-28T06:56:33Z","crossposted_at":null,"published_at":"2026-07-28T06:54:40Z","last_comment_at":"2026-07-28T06:54:40Z","reading_time_minutes":4,"tag_list":["react","javascript","webdev","performance"],"tags":"react, javascript, webdev, performance","user":{"name":"Software Solutions","username":"software_solutions_740799","twitter_username":null,"github_username":null,"user_id":4048806,"website_url":"https://softwaresolutions.co.in/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048806%2F714eaa67-d0af-42b0-9071-315e3a3005a0.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048806%2F714eaa67-d0af-42b0-9071-315e3a3005a0.png"}},{"type_of":"article","id":4237580,"title":"That CORS error? It wasn't my code","description":"I learned something interesting while debugging Apache, Express, and CORS. Seeing a CORS error in the...","readable_publish_date":"Jul 26","slug":"that-cors-error-it-wasnt-my-code-5d7e","path":"/sarvesh_sakpal_b7927153c1/that-cors-error-it-wasnt-my-code-5d7e","url":"https://dev.to/sarvesh_sakpal_b7927153c1/that-cors-error-it-wasnt-my-code-5d7e","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-26T15:52:01Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp7ftxlhr2t5ke79zmsni.png","canonical_url":"https://dev.to/sarvesh_sakpal_b7927153c1/that-cors-error-it-wasnt-my-code-5d7e","created_at":"2026-07-26T15:52:01Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T15:52:01Z","last_comment_at":"2026-07-26T15:52:01Z","reading_time_minutes":2,"tag_list":["webdev","node","react","apache"],"tags":"webdev, node, react, apache","user":{"name":"Sarvesh Sakpal","username":"sarvesh_sakpal_b7927153c1","twitter_username":null,"github_username":null,"user_id":4048109,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048109%2F615d566e-e587-4db4-b521-e84462ec5b76.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048109%2F615d566e-e587-4db4-b521-e84462ec5b76.png"}},{"type_of":"article","id":4243476,"title":"How to Make Your Next.js App Blazing Fast — Performance Checklist","description":"A slow Next.js app is almost always caused by the same 6 things.  Here's how to find and fix all of...","readable_publish_date":"Jul 27","slug":"how-to-make-your-nextjs-app-blazing-fast-performance-checklist-2hma","path":"/anas_sheikh_2/how-to-make-your-nextjs-app-blazing-fast-performance-checklist-2hma","url":"https://dev.to/anas_sheikh_2/how-to-make-your-nextjs-app-blazing-fast-performance-checklist-2hma","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-27T09:53:59Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxwsknl6uvxfwq8m9nkgr.png","canonical_url":"https://dev.to/anas_sheikh_2/how-to-make-your-nextjs-app-blazing-fast-performance-checklist-2hma","created_at":"2026-07-27T09:53:59Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T09:53:59Z","last_comment_at":"2026-07-27T09:53:59Z","reading_time_minutes":3,"tag_list":["nextjs","webdev","programming","react"],"tags":"nextjs, webdev, programming, react","user":{"name":"Anas Sheikh","username":"anas_sheikh_2","twitter_username":null,"github_username":null,"user_id":4023868,"website_url":"http://www.pixelanas.com/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4023868%2Fa72627f1-0556-4d31-aa00-0cc6ada7c4fb.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4023868%2Fa72627f1-0556-4d31-aa00-0cc6ada7c4fb.png"}},{"type_of":"article","id":4249952,"title":"Stop the Blank Screen: Next.js Streaming \u0026 Suspense ⏳","description":"The All-or-Nothing Rendering Trap  In traditional Server-Side Rendering (SSR), the server must wait...","readable_publish_date":"Jul 28","slug":"stop-the-blank-screen-nextjs-streaming-suspense-35f0","path":"/iprajapatiparesh/stop-the-blank-screen-nextjs-streaming-suspense-35f0","url":"https://dev.to/iprajapatiparesh/stop-the-blank-screen-nextjs-streaming-suspense-35f0","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-28T04:20:02Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fd1ses5hhs5ssh1m81jp9.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fd1ses5hhs5ssh1m81jp9.png","canonical_url":"https://smarttechdevs.in/blog/nextjs-streaming-suspense-architecture","created_at":"2026-07-28T04:20:02Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-28T04:20:02Z","last_comment_at":"2026-07-28T04:20:02Z","reading_time_minutes":2,"tag_list":["nextjs","react","frontend","webperf"],"tags":"nextjs, react, frontend, webperf","user":{"name":"Prajapati Paresh","username":"iprajapatiparesh","twitter_username":null,"github_username":null,"user_id":3818348,"website_url":"https://smarttechdevs.in/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3818348%2F98e76f01-e2fd-4f05-bc05-ea804d4fc2a5.jpg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3818348%2F98e76f01-e2fd-4f05-bc05-ea804d4fc2a5.jpg"}},{"type_of":"article","id":4242538,"title":"Stop Fighting Referential Instability: Solving React Re-Renders with useDeepMemo","description":"We've all been there: you pass an object literal or an array as a dependency to useMemo or useEffect,...","readable_publish_date":"Jul 27","slug":"stop-fighting-referential-instability-solving-react-re-renders-with-usedeepmemo-26e","path":"/saurav_tb_pandey/stop-fighting-referential-instability-solving-react-re-renders-with-usedeepmemo-26e","url":"https://dev.to/saurav_tb_pandey/stop-fighting-referential-instability-solving-react-re-renders-with-usedeepmemo-26e","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-27T08:14:18Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5hs23wqxl2adxtc6d41k.png","canonical_url":"https://dev.to/saurav_tb_pandey/stop-fighting-referential-instability-solving-react-re-renders-with-usedeepmemo-26e","created_at":"2026-07-27T08:14:18Z","edited_at":"2026-07-27T08:25:48Z","crossposted_at":null,"published_at":"2026-07-27T08:14:18Z","last_comment_at":"2026-07-27T08:14:18Z","reading_time_minutes":2,"tag_list":["reacthooklab","react","javascript","webdev"],"tags":"reacthooklab, react, javascript, webdev","user":{"name":"Saurav Pandey","username":"saurav_tb_pandey","twitter_username":null,"github_username":null,"user_id":4030684,"website_url":"https://saurav-tb-pandey.vercel.app/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4030684%2F00a97a98-d0c0-454d-9685-afb5d1a78a3f.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4030684%2F00a97a98-d0c0-454d-9685-afb5d1a78a3f.png"}},{"type_of":"article","id":4236395,"title":"Mutation Lifecycle in Frontend Applications: A Practical Approach","description":"When building modern frontend applications, handling server-side mutations correctly is often more...","readable_publish_date":"Jul 26","slug":"mutation-lifecycle-in-frontend-applications-a-practical-approach-1gdm","path":"/indexphp/mutation-lifecycle-in-frontend-applications-a-practical-approach-1gdm","url":"https://dev.to/indexphp/mutation-lifecycle-in-frontend-applications-a-practical-approach-1gdm","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-26T11:32:02Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fad55872ta7khpmo01j9p.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fad55872ta7khpmo01j9p.png","canonical_url":"https://dev.to/indexphp/mutation-lifecycle-in-frontend-applications-a-practical-approach-1gdm","created_at":"2026-07-26T11:32:02Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T11:32:02Z","last_comment_at":"2026-07-26T11:32:02Z","reading_time_minutes":2,"tag_list":["ai","webdev","programming","react"],"tags":"ai, webdev, programming, react","user":{"name":"Aly","username":"indexphp","twitter_username":null,"github_username":"ualiyou","user_id":2085361,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2085361%2Ff7adbcbc-c1d8-406a-9ac4-f9a168a12ef5.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2085361%2Ff7adbcbc-c1d8-406a-9ac4-f9a168a12ef5.png"}},{"type_of":"article","id":4235411,"title":"Free Website Performance Monitoring: PageSpeed CI + CrUX + GitHub Actions","description":"Commercial performance monitoring starts at $29-99/month. With Google PageSpeed API + GitHub...","readable_publish_date":"Jul 26","slug":"free-website-performance-monitoring-pagespeed-ci-crux-github-actions-3l7h","path":"/utlkit/free-website-performance-monitoring-pagespeed-ci-crux-github-actions-3l7h","url":"https://dev.to/utlkit/free-website-performance-monitoring-pagespeed-ci-crux-github-actions-3l7h","comments_count":0,"public_reactions_count":0,"collection_id":40382,"published_timestamp":"2026-07-26T07:33:03Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvkorx7nn3igj3dsyp348.png","canonical_url":"https://dev.to/utlkit/free-website-performance-monitoring-pagespeed-ci-crux-github-actions-3l7h","created_at":"2026-07-26T07:33:03Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T07:33:03Z","last_comment_at":"2026-07-26T07:33:03Z","reading_time_minutes":3,"tag_list":["nextjs","react","typescript","tailwindcss"],"tags":"nextjs, react, typescript, tailwindcss","user":{"name":"Mark","username":"utlkit","twitter_username":null,"github_username":null,"user_id":3952583,"website_url":"https://utlkit.com","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3952583%2Fdd419f16-895a-44a8-8467-f24f0d7ee62e.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3952583%2Fdd419f16-895a-44a8-8467-f24f0d7ee62e.png"}},{"type_of":"article","id":4237925,"title":"The checklist I wish I'd had before my first mainnet deploy","description":"Pilots run a checklist before every takeoff. Surgeons run one before every incision. Not because they...","readable_publish_date":"Jul 26","slug":"the-checklist-i-wish-id-had-before-my-first-mainnet-deploy-2cfo","path":"/babydriver/the-checklist-i-wish-id-had-before-my-first-mainnet-deploy-2cfo","url":"https://dev.to/babydriver/the-checklist-i-wish-id-had-before-my-first-mainnet-deploy-2cfo","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-26T17:24:41Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":null,"social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftsr3w72lu3jgcxmb270m.png","canonical_url":"https://dev.to/babydriver/the-checklist-i-wish-id-had-before-my-first-mainnet-deploy-2cfo","created_at":"2026-07-26T17:24:41Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T17:24:41Z","last_comment_at":"2026-07-26T17:24:41Z","reading_time_minutes":5,"tag_list":["react","web3","100daysofsolana","wallet"],"tags":"react, web3, 100daysofsolana, wallet","user":{"name":"Siddhant Chavan","username":"babydriver","twitter_username":null,"github_username":null,"user_id":3889440,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3889440%2F08f445db-c2ec-4241-8e16-0e17a57e9b4f.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3889440%2F08f445db-c2ec-4241-8e16-0e17a57e9b4f.png"}},{"type_of":"article","id":4238556,"title":"Next.js Is Getting Much Better at SPA-like UX","description":"Building SPA-like experiences with Next.js   Aurora Scharff’s post series looks at how to...","readable_publish_date":"Jul 26","slug":"nextjs-is-getting-much-better-at-spa-like-ux-141a","path":"/erfanebrahimnia/nextjs-is-getting-much-better-at-spa-like-ux-141a","url":"https://dev.to/erfanebrahimnia/nextjs-is-getting-much-better-at-spa-like-ux-141a","comments_count":0,"public_reactions_count":0,"collection_id":22442,"published_timestamp":"2026-07-26T19:36:11Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fnextjsweekly.com%2Fopengraph-image.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fnextjsweekly.com%2Fopengraph-image.png","canonical_url":"https://nextjsweekly.com/issues/137","created_at":"2026-07-26T19:35:31Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T19:36:11Z","last_comment_at":"2026-07-26T19:36:11Z","reading_time_minutes":4,"tag_list":["nextjs","javascript","webdev","react"],"tags":"nextjs, javascript, webdev, react","user":{"name":"Erfan Ebrahimnia","username":"erfanebrahimnia","twitter_username":"ErfanEbrahimnia","github_username":null,"user_id":291054,"website_url":"https://nextjsweekly.com","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F291054%2F5d123de2-5373-4a06-847f-bfed543efb38.jpeg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F291054%2F5d123de2-5373-4a06-847f-bfed543efb38.jpeg"}},{"type_of":"article","id":4243575,"title":"The Synesthetic Trader: Why Your Ears Might Be Better at Reading Markets Than Your Eyes","description":"When I started building Confrontational Meditation® two years ago, I wasn't thinking about meditation...","readable_publish_date":"Jul 27","slug":"the-synesthetic-trader-why-your-ears-might-be-better-at-reading-markets-than-your-eyes-h1k","path":"/cm_founder/the-synesthetic-trader-why-your-ears-might-be-better-at-reading-markets-than-your-eyes-h1k","url":"https://dev.to/cm_founder/the-synesthetic-trader-why-your-ears-might-be-better-at-reading-markets-than-your-eyes-h1k","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-27T10:00:42Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fapp.confrontationalmeditation.com%2Fapi%2Fimages%2Fcovers%2Fthe-synesthetic-trader-why-your-ears-might-be-better-at-reading-markets-than-your-eyes-2026-07-27.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fapp.confrontationalmeditation.com%2Fapi%2Fimages%2Fcovers%2Fthe-synesthetic-trader-why-your-ears-might-be-better-at-reading-markets-than-your-eyes-2026-07-27.png","canonical_url":"https://dev.to/cm_founder/the-synesthetic-trader-why-your-ears-might-be-better-at-reading-markets-than-your-eyes-h1k","created_at":"2026-07-27T10:00:42Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T10:00:42Z","last_comment_at":"2026-07-27T10:00:42Z","reading_time_minutes":4,"tag_list":["javascript","react","blockchain","ai"],"tags":"javascript, react, blockchain, ai","user":{"name":"Confrontational Meditation","username":"cm_founder","twitter_username":null,"github_username":null,"user_id":3807823,"website_url":null,"profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3807823%2F7e8a4aa8-0a5d-472f-854b-9d8a6af71ec5.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3807823%2F7e8a4aa8-0a5d-472f-854b-9d8a6af71ec5.png"}},{"type_of":"article","id":4249052,"title":"Redux Toolkit Simplified","description":"State management has evolved significantly in modern React applications. While Redux has long been a...","readable_publish_date":"Jul 28","slug":"redux-toolkit-simplified-60b","path":"/akshaykurve/redux-toolkit-simplified-60b","url":"https://dev.to/akshaykurve/redux-toolkit-simplified-60b","comments_count":0,"public_reactions_count":0,"collection_id":null,"published_timestamp":"2026-07-28T01:47:15Z","language":"en","subforem_id":1,"positive_reactions_count":0,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm1fbahfvhm92yi17nkbt.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fm1fbahfvhm92yi17nkbt.png","canonical_url":"https://dev.to/akshaykurve/redux-toolkit-simplified-60b","created_at":"2026-07-28T01:47:15Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-28T01:47:15Z","last_comment_at":"2026-07-28T01:47:15Z","reading_time_minutes":5,"tag_list":["redux","react","webdev","akshaykurve"],"tags":"redux, react, webdev, akshaykurve","user":{"name":"Akshay Kurve","username":"akshaykurve","twitter_username":"akshaykurve_","github_username":"akshaykurve","user_id":3784417,"website_url":"https://akshaykurve.com","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3784417%2F57afe417-8f1a-4c95-b4bf-282d635d24d5.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3784417%2F57afe417-8f1a-4c95-b4bf-282d635d24d5.png"}},{"type_of":"article","id":4237610,"title":"Building SignalHQ: Engineering a Production-Grade Incident Management Platform from Scratch","description":"Most portfolio projects stop after implementing authentication and CRUD operations.  Production...","readable_publish_date":"Jul 26","slug":"building-signalhq-engineering-a-production-grade-incident-management-platform-from-scratch-2eke","path":"/mr_elvis/building-signalhq-engineering-a-production-grade-incident-management-platform-from-scratch-2eke","url":"https://dev.to/mr_elvis/building-signalhq-engineering-a-production-grade-incident-management-platform-from-scratch-2eke","comments_count":0,"public_reactions_count":2,"collection_id":null,"published_timestamp":"2026-07-26T15:59:55Z","language":"en","subforem_id":1,"positive_reactions_count":2,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1296usj4zduvkvo0zvd6.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1296usj4zduvkvo0zvd6.png","canonical_url":"https://dev.to/mr_elvis/building-signalhq-engineering-a-production-grade-incident-management-platform-from-scratch-2eke","created_at":"2026-07-26T15:59:55Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-26T15:59:55Z","last_comment_at":"2026-07-26T15:59:55Z","reading_time_minutes":2,"tag_list":["architecture","react","nestjs","postgres"],"tags":"architecture, react, nestjs, postgres","user":{"name":"MANZI RURANGIRWA Elvis","username":"mr_elvis","twitter_username":"_MRElvis_","github_username":"Manzi-Elvis","user_id":3589867,"website_url":"https://mrelvis.vercel.app","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3589867%2F74e84801-1f11-47f1-a367-4bdb5bc25c52.jpeg","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3589867%2F74e84801-1f11-47f1-a367-4bdb5bc25c52.jpeg"}},{"type_of":"article","id":4241292,"title":"Full-stack Pokémon TCG simulator with pack opening, grading, PvP and card auctions","description":"An ecosystem whose job is to full-fill our dream of opening and collecting pokemon cards, which we...","readable_publish_date":"Jul 27","slug":"full-stack-pokemon-tcg-simulator-with-pack-opening-grading-pvp-and-card-auctions-5h7i","path":"/gamertap/full-stack-pokemon-tcg-simulator-with-pack-opening-grading-pvp-and-card-auctions-5h7i","url":"https://dev.to/gamertap/full-stack-pokemon-tcg-simulator-with-pack-opening-grading-pvp-and-card-auctions-5h7i","comments_count":0,"public_reactions_count":1,"collection_id":null,"published_timestamp":"2026-07-27T06:42:04Z","language":"en","subforem_id":1,"positive_reactions_count":1,"cover_image":"https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4p7bp2c04zqmeuu9lxv7.png","social_image":"https://media2.dev.to/dynamic/image/width=1200,height=627,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4p7bp2c04zqmeuu9lxv7.png","canonical_url":"https://dev.to/gamertap/full-stack-pokemon-tcg-simulator-with-pack-opening-grading-pvp-and-card-auctions-5h7i","created_at":"2026-07-27T06:01:28Z","edited_at":null,"crossposted_at":null,"published_at":"2026-07-27T06:42:04Z","last_comment_at":"2026-07-27T06:42:04Z","reading_time_minutes":2,"tag_list":["webdev","react","tailwindcss","beginners"],"tags":"webdev, react, tailwindcss, beginners","user":{"name":"Soham","username":"gamertap","twitter_username":null,"github_username":"sohamSanat","user_id":4048748,"website_url":"https://pokemontcgsim.vercel.app/","profile_image":"https://media2.dev.to/dynamic/image/width=640,height=640,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048748%2F8f32ccb4-5afa-4bec-9433-281507ab114c.png","profile_image_90":"https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4048748%2F8f32ccb4-5afa-4bec-9433-281507ab114c.png"}}]