CINXE.COM
Web - DEV Community
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Web - DEV Community</title> <meta name="last-updated" content="2025-02-17 16:05:12 UTC"> <meta name="user-signed-in" content="false"> <meta name="head-cached-at" content="1739808312"> <meta name="environment" content="production"> <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-0a971eb021d2dc2b145c1df786e1b97f418c6b2d066e79802fea980acb513937.css" media="all" id="main-minimal-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/views-1c703342dce6eac414f19ca7fd07bcf83cbe44088659758144e52e7fa1e92dd3.css" media="all" id="main-views-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/crayons-0f2fc85bc159498f8ae6fba58c460e6deba863d02d59dfa994c1954976ddb6cc.css" media="all" id="main-crayons-stylesheet" /> <script src="https://assets.dev.to/assets/base-a87669a7c932717e71153a0e9be51887fd49f60281c77873f33571fab239e9d6.js" defer="defer"></script> <script src="https://assets.dev.to/assets/application-7258612fccf5d56314a6e4ad1898b4f818f474c4bb3485e302428d489a769a17.js" defer="defer"></script> <script src="https://assets.dev.to/assets/baseInitializers-ee70590bbbe9b8f9d750ea9b4b7e809c47123e9064196238ba4e65bc65caf708.js" defer="defer"></script> <script src="https://assets.dev.to/assets/baseTracking-b6bf73e5ee66633e151e7d5b7c6bbccedfa4c59e3615be97b98c4c0f543ddae7.js" defer="defer"></script> <meta name="search-script" content="https://assets.dev.to/assets/Search-1667defd820799649d6c3b2864f13786058190df703dd50ab75dce1ccb834c4b.js"> <link rel="canonical" href="https://dev.to/t/web" /> <meta name="description" content="web content on DEV Community"> <meta name="keywords" content="software development, engineering, web"> <meta property="og:type" content="website" /> <meta property="og:url" content="https://dev.to/t/web" /> <meta property="og:title" content="Web" /> <meta property="og:description" content="Web content on DEV Community" /> <meta property="og:site_name" content="DEV Community" /> <meta name="twitter:site" content="@thepracticaldev"> <meta name="twitter:creator" content="@Web"> <meta name="twitter:title" content="Web"> <meta name="twitter:description" content="Web content on DEV Community"> <meta name="twitter:card" content="summary_large_image"> <meta property="og:image" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"> <meta name="twitter:image:src" content="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3otvb2z646ytpt1hl2rv.jpg"> <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"> <link rel="icon" type="image/x-icon" href="https://media2.dev.to/dynamic/image/width=32,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" /> <link rel="apple-touch-icon" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link rel="apple-touch-icon" sizes="152x152" href="https://media2.dev.to/dynamic/image/width=152,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link rel="apple-touch-icon" sizes="180x180" href="https://media2.dev.to/dynamic/image/width=180,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link rel="apple-touch-icon" sizes="167x167" href="https://media2.dev.to/dynamic/image/width=167,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png"> <link href="https://media2.dev.to/dynamic/image/width=192,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="192x192" /> <link href="https://media2.dev.to/dynamic/image/width=128,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" rel="icon" sizes="128x128" /> <meta name="apple-mobile-web-app-title" content="dev.to"> <meta name="application-name" content="dev.to"> <meta name="theme-color" content="#ffffff" media="(prefers-color-scheme: light)"> <meta name="theme-color" content="#000000" media="(prefers-color-scheme: dark)"> <link rel="search" href="https://dev.to/open-search.xml" type="application/opensearchdescription+xml" title="DEV Community" /> <meta property="forem:name" content="DEV Community" /> <meta property="forem:logo" content="https://media2.dev.to/dynamic/image/width=512,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" /> <meta property="forem:domain" content="dev.to" /> </head> <body class="sans-serif-article-body default-header" data-user-status="logged-out" data-community-name="DEV Community" data-subscription-icon="https://assets.dev.to/assets/subscription-icon-805dfa7ac7dd660f07ed8d654877270825b07a92a03841aa99a1093bd00431b2.png" data-locale="en" data-honeybadger-key="hbp_nqu4Y66HuEKlD6YRGssZuRQnPOjDm50J8Zkr" data-deployed-at="2025-02-14T17:48:00Z" data-latest-commit-id="6eae977a3ad3ef9e73c77442f1aca852fd05f095" data-ga-tracking="UA-71991109-1" data-cookie-banner-user-context="logged_out_only" data-cookie-banner-platform-context="off" data-algolia-id="PRSOBFP46H" data-algolia-search-key="9aa7d31610cba78851c9b1f63776a9dd" data-algolia-display="true" data-dynamic-url-component="bb-2" data-ga4-tracking-id="G-TYEM8Y3JN3"> <script> if (navigator.userAgent.includes('ForemWebView/1') || window.frameElement) { document.body.classList.add("hidden-shell"); } </script> <link rel="stylesheet" href="https://assets.dev.to/assets/minimal-0a971eb021d2dc2b145c1df786e1b97f418c6b2d066e79802fea980acb513937.css" media="all" id="secondary-minimal-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/views-1c703342dce6eac414f19ca7fd07bcf83cbe44088659758144e52e7fa1e92dd3.css" media="all" id="secondary-views-stylesheet" /> <link rel="stylesheet" href="https://assets.dev.to/assets/crayons-0f2fc85bc159498f8ae6fba58c460e6deba863d02d59dfa994c1954976ddb6cc.css" media="all" id="secondary-crayons-stylesheet" /> <div id="body-styles"> <style> :root { --accent-brand-lighter-rgb: 80, 99, 301; --accent-brand-rgb: 59, 73, 223; --accent-brand-darker-rgb: 47, 58, 178; } </style> </div> <div id="audiocontent" data-podcast=""> </div> <div class="navigation-progress" id="navigation-progress"></div> <header id="topbar" class="crayons-header topbar print-hidden"> <span id="route-change-target" tabindex="-1"></span> <a href="#main-content" class="skip-content-link">Skip to content</a> <div class="crayons-header__container"> <span class="inline-block m:hidden "> <button class="c-btn c-btn--icon-alone js-hamburger-trigger mx-2"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="amak9jjek2iev15c2y1mb5kpw04wsm5j" class="crayons-icon"><title id="amak9jjek2iev15c2y1mb5kpw04wsm5j">Navigation menu</title> <path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"></path> </svg> </button> </span> <a href="/" class="site-logo" aria-label="DEV Community Home"> <img class="site-logo__img" src="https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png" style="aspect-ratio: 10 / 8" alt="DEV Community"> </a> <div class="crayons-header--search js-search-form" id="header-search"> <form accept-charset="UTF-8" method="get" action="/search" role="search"> <div class="crayons-fields crayons-fields--horizontal"> <div class="crayons-field flex-1 relative"> <input id="search-input" class="crayons-header--search-input crayons-textfield js-search-input" type="text" id="nav-search" name="q" placeholder="Search..." autocomplete="off" /> <button type="submit" aria-label="Search" class="c-btn c-btn--icon-alone absolute inset-px right-auto mt-0 py-0"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ag74zu4ilpkjx1ri9b2xiikf6w3gx26t" aria-hidden="true" class="crayons-icon"><title id="ag74zu4ilpkjx1ri9b2xiikf6w3gx26t">Search</title> <path d="M18.031 16.617l4.283 4.282-1.415 1.415-4.282-4.283A8.96 8.96 0 0111 20c-4.968 0-9-4.032-9-9s4.032-9 9-9 9 4.032 9 9a8.96 8.96 0 01-1.969 5.617zm-2.006-.742A6.977 6.977 0 0018 11c0-3.868-3.133-7-7-7-3.868 0-7 3.132-7 7 0 3.867 3.132 7 7 7a6.977 6.977 0 004.875-1.975l.15-.15z"></path> </svg> </button> <a class="crayons-header--search-brand-indicator" href="https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral" target="_blank" rel="noopener noreferrer"> Powered by <svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" width="24" height="24" viewBox="0 0 500 500.34" role="img" aria-labelledby="aobqldefwkhxt7vq7h4ho1m4sqd3ziri" aria-hidden="true" class="crayons-icon"><title id="aobqldefwkhxt7vq7h4ho1m4sqd3ziri">Search</title> <defs></defs><path class="cls-1" d="M250,0C113.38,0,2,110.16,.03,246.32c-2,138.29,110.19,252.87,248.49,253.67,42.71,.25,83.85-10.2,120.38-30.05,3.56-1.93,4.11-6.83,1.08-9.52l-23.39-20.74c-4.75-4.22-11.52-5.41-17.37-2.92-25.5,10.85-53.21,16.39-81.76,16.04-111.75-1.37-202.04-94.35-200.26-206.1,1.76-110.33,92.06-199.55,202.8-199.55h202.83V407.68l-115.08-102.25c-3.72-3.31-9.43-2.66-12.43,1.31-18.47,24.46-48.56,39.67-81.98,37.36-46.36-3.2-83.92-40.52-87.4-86.86-4.15-55.28,39.65-101.58,94.07-101.58,49.21,0,89.74,37.88,93.97,86.01,.38,4.28,2.31,8.28,5.53,11.13l29.97,26.57c3.4,3.01,8.8,1.17,9.63-3.3,2.16-11.55,2.92-23.6,2.07-35.95-4.83-70.39-61.84-127.01-132.26-131.35-80.73-4.98-148.23,58.18-150.37,137.35-2.09,77.15,61.12,143.66,138.28,145.36,32.21,.71,62.07-9.42,86.2-26.97l150.36,133.29c6.45,5.71,16.62,1.14,16.62-7.48V9.49C500,4.25,495.75,0,490.51,0H250Z"></path> </svg> Algolia </a> </div> </div> </form> </div> <div class="flex items-center h-100 ml-auto"> <div class="flex" id="authentication-top-nav-actions"> <span class="hidden m:block"> <a href="https://dev.to/enter" class="c-link c-link--block mr-2 whitespace-nowrap ml-auto" data-no-instant> Log in </a> </span> <a href="https://dev.to/enter?state=new-user" data-tracking-id="ca_top_nav" data-tracking-source="top_navbar" class="c-cta c-cta--branded whitespace-nowrap mr-2" data-no-instant> Create account </a> </div> </div> </div> </header> <div class="hamburger"> <div class="hamburger__content"> <header class="hamburger__content__header"> <h2 class="fs-l fw-bold flex-1 break-word lh-tight">DEV Community</h2> <button class="c-btn c-btn--icon-alone js-hamburger-trigger shrink-0" aria-label="Close"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="a2op7017xqgkmz1qms900y0tdk9d7e3" aria-hidden="true" class="crayons-icon c-btn__icon"><title id="a2op7017xqgkmz1qms900y0tdk9d7e3">Close</title><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636l4.95 4.95z"></path></svg> </button> </header> <div class="p-2 js-navigation-links-container" id="authentication-hamburger-actions"> </div> </div> <div class="hamburger__overlay js-hamburger-trigger"></div> </div> <div id="active-broadcast" class="broadcast-wrapper"></div> <div id="page-content" class="wrapper tagged_articles tagged_articles-index" data-current-page="tagged_articles-index"> <div id="page-content-inner" data-internal-nav="false"> <div id="page-route-change" class="screen-reader-only" aria-live="polite" aria-atomic="true"></div> <div data-tag-id="124" data-tag-name="web" id="tag-124" class="crayons-layout js-tag-card"> <header class="crayons-card branded-4 p-4 l:p-6 spec__tag-header" style="border-top-color: "> <div class="flex"> <div class="flex flex-col w-100 justify-center"> <div class="flex justify-between items-center"> <h1 class="crayons-title"> <span class="opacity-50">#</span> web </h1> <div id="tag-buttons-124" class="mt-auto flex items-end justify-between"> <div class="flex gap-2"> <button class="c-btn c-btn--primary js-follow-tag-button" aria-label="Follow tag: web"> Follow </button> <button class="c-btn js-hide-tag-button" aria-label="Hide tag: web"> Hide </button> </div> </div> </div> </div> </div> </header> </div> <div class="home sub-home" id="index-container" data-params="{"tag":"web","sort_by":"hotness_score","sort_direction":"desc"}" data-which="" data-tag="web" data-feed="base-feed" data-requires-approval="false" data-articles-since=""> <div id="sidebar-wrapper-left" class="sidebar-wrapper sidebar-wrapper-left"> <div class="sidebar-bg" id="sidebar-bg-left"></div> <aside class="side-bar"> <div class="widget js-policy-article-create"> <a class="crayons-btn crayons-btn--s" href="/new/web"> Create Post </a> </div> <div class="sidebar-data"> <div> 1694 Posts Published </div> <hr /> <div class="olderposts-header">Older #web posts</div> <div class="olderposts-links"> <span class="olderposts-pagenumber">1</span> <a href="https://dev.to/t/web/page/2" class="olderposts-pagenumber">2</a> <a href="https://dev.to/t/web/page/3" class="olderposts-pagenumber">3</a> <a href="https://dev.to/t/web/page/4" class="olderposts-pagenumber">4</a> <a href="https://dev.to/t/web/page/5" class="olderposts-pagenumber">5</a> <a href="https://dev.to/t/web/page/6" class="olderposts-pagenumber">6</a> <a href="https://dev.to/t/web/page/7" class="olderposts-pagenumber">7</a> <a href="https://dev.to/t/web/page/8" class="olderposts-pagenumber">8</a> <a href="https://dev.to/t/web/page/9" class="olderposts-pagenumber">9</a> </div> </div> </aside> </div> <main class="articles-list" id="main-content" data-follow-button-container="true"> <header class="flex items-center p-2 m:p-0 m:pb-2" id="on-page-nav-controls"> <h1 class="screen-reader-only">Posts</h1> <button type="button" class="crayons-btn crayons-btn--ghost crayons-btn--icon mr-2 inline-block m:hidden mb-auto" id="on-page-nav-butt-left" aria-label="nav-button-left"> <div class="crayons-icon nav-icon "> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="ajvvxyy9blygfw167eujpmwglu641fhf" class="crayons-icon"><title id="ajvvxyy9blygfw167eujpmwglu641fhf">Left menu</title> <path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"></path> </svg> </div> </button> <div class="flex-1 flex items-center justify-between"> <div class="crayons-notice w-100" aria-live="polite">👋 <a href="/enter">Sign in</a> for the ability to sort posts by <strong>relevant</strong>, <strong>latest</strong>, or <strong>top</strong>.</div> </div> <button type="button" class="crayons-btn crayons-btn--ghost crayons-btn--icon ml-2 inline-block l:hidden mb-auto" id="on-page-nav-butt-right" aria-label="nav-button-right"> <div class="crayons-icon nav-icon "> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" role="img" aria-labelledby="asw7hlx8gey51svzgezmnj4izdx98el6" class="crayons-icon"><title id="asw7hlx8gey51svzgezmnj4izdx98el6">Right menu</title> <path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"></path> </svg> </div> </button> </header> <div class="substories" id="substories"> <div class="crayons-story " data-feed-content-id="2283603" data-content-user-id="2756447"> <a href="https://dev.to/limoh653/how-to-authenticate-a-flask-api-using-jwt-1lo" aria-labelledby="article-link-2283603" class="crayons-story__hidden-navigation-link">How to authenticate a Flask API using JWT.</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/limoh653" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2756447%2F476b53b8-0aeb-4e6d-a86d-64abf7fb4581.png" alt="limoh653 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/limoh653" class="crayons-story__secondary fw-medium m:hidden"> Hesbon limo </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2283603" aria-controls="story-author-preview-content-2283603" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Hesbon limo profile details"> Hesbon limo </button> <div id="story-author-preview-content-2283603" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/limoh653" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2756447%2F476b53b8-0aeb-4e6d-a86d-64abf7fb4581.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Hesbon limo</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2756447,"className":"User","name":"Hesbon limo"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2756447"></div> </div> </div> </div> </div> <a href="https://dev.to/limoh653/how-to-authenticate-a-flask-api-using-jwt-1lo" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-17T10:34:02Z">Feb 17</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739788442"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/limoh653/how-to-authenticate-a-flask-api-using-jwt-1lo" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvlcgfeahfsesoan8p4hm.jpg" id="article-link-2283603"> How to authenticate a Flask API using JWT. </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(254, 255, 165, 0.10); --tag-prefix: #FEFFA5; --tag-bg-hover: rgba(254, 255, 165, 0.10); --tag-prefix-hover: #FEFFA5; " href="/t/tutorial"><span class="crayons-tag__prefix">#</span>tutorial</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/limoh653/how-to-authenticate-a-flask-api-using-jwt-1lo#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How to authenticate a Flask API using JWT."> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aiagav2c5e9hwb600japeyb7fur7jpi8" class="crayons-icon"><title id="aiagav2c5e9hwb600japeyb7fur7jpi8">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 6 min read </small> <button type="button" id="article-save-button-2283603" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2283603" data-article-author-id="2756447" aria-label="Save post How to authenticate a Flask API using JWT. to reading list" title="Save post How to authenticate a Flask API using JWT. to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2283399" data-content-user-id="2846009"> <a href="https://dev.to/olivia_carter/what-is-public-key-cryptography-a-beginners-guide-to-secure-encryption-3hc1" aria-labelledby="article-link-2283399" class="crayons-story__hidden-navigation-link">What is Public Key Cryptography? A Beginner’s Guide to Secure Encryption</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/olivia_carter" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2846009%2Fd5ff57dd-4451-41b0-92d2-d81aafd96c72.png" alt="olivia_carter profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/olivia_carter" class="crayons-story__secondary fw-medium m:hidden"> Olivia Carter </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2283399" aria-controls="story-author-preview-content-2283399" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Olivia Carter profile details"> Olivia Carter </button> <div id="story-author-preview-content-2283399" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/olivia_carter" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2846009%2Fd5ff57dd-4451-41b0-92d2-d81aafd96c72.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Olivia Carter</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2846009,"className":"User","name":"Olivia Carter"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2846009"></div> </div> </div> </div> </div> <a href="https://dev.to/olivia_carter/what-is-public-key-cryptography-a-beginners-guide-to-secure-encryption-3hc1" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-17T08:43:04Z">Feb 17</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739781784"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/olivia_carter/what-is-public-key-cryptography-a-beginners-guide-to-secure-encryption-3hc1" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flioprlle1ykxr8xuwxpd.jpg" id="article-link-2283399"> What is Public Key Cryptography? A Beginner’s Guide to Secure Encryption </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/encryption"><span class="crayons-tag__prefix">#</span>encryption</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(27, 172, 128, 0.10); --tag-prefix: #1bac80; --tag-bg-hover: rgba(27, 172, 128, 0.10); --tag-prefix-hover: #1bac80; " href="/t/security"><span class="crayons-tag__prefix">#</span>security</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/publickeycryptography"><span class="crayons-tag__prefix">#</span>publickeycryptography</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/olivia_carter/what-is-public-key-cryptography-a-beginners-guide-to-secure-encryption-3hc1#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - What is Public Key Cryptography? A Beginner’s Guide to Secure Encryption"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a6wg3h64g6srmw1tg6dlf0ya82vf59du" class="crayons-icon"><title id="a6wg3h64g6srmw1tg6dlf0ya82vf59du">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2283399" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2283399" data-article-author-id="2846009" aria-label="Save post What is Public Key Cryptography? A Beginner’s Guide to Secure Encryption to reading list" title="Save post What is Public Key Cryptography? A Beginner’s Guide to Secure Encryption to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2281389" data-content-user-id="2725795"> <a href="https://dev.to/angel_rojas_6904bae237a0d/what-is-popcash-review-affiliates-and-uses-3fl9" aria-labelledby="article-link-2281389" class="crayons-story__hidden-navigation-link">What is Popcash: Review, Affiliates, and Uses</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/angel_rojas_6904bae237a0d" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2725795%2Fa036414c-cf8a-46ef-9165-2b948a423836.jpg" alt="angel_rojas_6904bae237a0d profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/angel_rojas_6904bae237a0d" class="crayons-story__secondary fw-medium m:hidden"> Angel Rojas </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2281389" aria-controls="story-author-preview-content-2281389" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Angel Rojas profile details"> Angel Rojas </button> <div id="story-author-preview-content-2281389" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/angel_rojas_6904bae237a0d" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2725795%2Fa036414c-cf8a-46ef-9165-2b948a423836.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Angel Rojas</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2725795,"className":"User","name":"Angel Rojas"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2725795"></div> </div> </div> </div> </div> <a href="https://dev.to/angel_rojas_6904bae237a0d/what-is-popcash-review-affiliates-and-uses-3fl9" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-15T23:45:13Z">Feb 15</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739663113"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/angel_rojas_6904bae237a0d/what-is-popcash-review-affiliates-and-uses-3fl9" data-preload-image="" id="article-link-2281389"> What is Popcash: Review, Affiliates, and Uses </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/ads"><span class="crayons-tag__prefix">#</span>ads</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/angel_rojas_6904bae237a0d/what-is-popcash-review-affiliates-and-uses-3fl9#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - What is Popcash: Review, Affiliates, and Uses"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="arocizgmpv7djuvy08wu8e7ziymyv2yx" class="crayons-icon"><title id="arocizgmpv7djuvy08wu8e7ziymyv2yx">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2281389" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2281389" data-article-author-id="2725795" aria-label="Save post What is Popcash: Review, Affiliates, and Uses to reading list" title="Save post What is Popcash: Review, Affiliates, and Uses to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2275685" data-content-user-id="2291173"> <a href="https://dev.to/syncfusion/react-ui-kit-speed-up-development-with-customizable-ui-blocks-10k8" aria-labelledby="article-link-2275685" class="crayons-story__hidden-navigation-link">React UI Kit: Speed Up Development With Customizable UI Blocks</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a class="crayons-logo crayons-logo--l" href="/syncfusion"> <img alt="Syncfusion, Inc. logo" src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F771%2F21df7034-5069-4e05-9f54-2c881bb9ebb7.png" class="crayons-logo__image" loading="lazy" /> </a> <a href="/phinteratienoo" class="crayons-avatar crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2291173%2F79685a51-bdb1-41c3-9b5f-75f3052285da.png" alt="phinteratienoo profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/phinteratienoo" class="crayons-story__secondary fw-medium m:hidden"> Phinter Atieno </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2275685" aria-controls="story-author-preview-content-2275685" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Phinter Atieno profile details"> Phinter Atieno </button> <div id="story-author-preview-content-2275685" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/phinteratienoo" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2291173%2F79685a51-bdb1-41c3-9b5f-75f3052285da.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Phinter Atieno</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2291173,"className":"User","name":"Phinter Atieno"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2291173"></div> </div> </div> </div> <span> <span class="crayons-story__tertiary fw-normal"> for </span><a href="/syncfusion" class="crayons-story__secondary fw-medium">Syncfusion, Inc.</a> </span> </div> <a href="https://dev.to/syncfusion/react-ui-kit-speed-up-development-with-customizable-ui-blocks-10k8" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-13T13:04:38Z">Feb 13</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739447648"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/syncfusion/react-ui-kit-speed-up-development-with-customizable-ui-blocks-10k8" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuheaqy2r39n99yf0e2zn.png" id="article-link-2275685"> React UI Kit: Speed Up Development With Customizable UI Blocks </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(34, 34, 34, 0.10); --tag-prefix: #222222; --tag-bg-hover: rgba(34, 34, 34, 0.10); --tag-prefix-hover: #222222; " href="/t/react"><span class="crayons-tag__prefix">#</span>react</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/development"><span class="crayons-tag__prefix">#</span>development</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(123, 104, 190, 0.10); --tag-prefix: #7b68be; --tag-bg-hover: rgba(123, 104, 190, 0.10); --tag-prefix-hover: #7b68be; " href="/t/ui"><span class="crayons-tag__prefix">#</span>ui</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/syncfusion/react-ui-kit-speed-up-development-with-customizable-ui-blocks-10k8#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - React UI Kit: Speed Up Development With Customizable UI Blocks"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ak8crin9t82z16olt4nu5naisaytv5lp" class="crayons-icon"><title id="ak8crin9t82z16olt4nu5naisaytv5lp">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 6 min read </small> <button type="button" id="article-save-button-2275685" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2275685" data-article-author-id="2291173" aria-label="Save post React UI Kit: Speed Up Development With Customizable UI Blocks to reading list" title="Save post React UI Kit: Speed Up Development With Customizable UI Blocks to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2275684" data-content-user-id="2291173"> <a href="https://dev.to/syncfusion/build-ai-powered-text-to-flowchart-converter-using-openai-and-react-diagram-library-3gdk" aria-labelledby="article-link-2275684" class="crayons-story__hidden-navigation-link">Build AI-Powered Text-to-Flowchart Converter Using OpenAI and React Diagram Library</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a class="crayons-logo crayons-logo--l" href="/syncfusion"> <img alt="Syncfusion, Inc. logo" src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F771%2F21df7034-5069-4e05-9f54-2c881bb9ebb7.png" class="crayons-logo__image" loading="lazy" /> </a> <a href="/phinteratienoo" class="crayons-avatar crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2291173%2F79685a51-bdb1-41c3-9b5f-75f3052285da.png" alt="phinteratienoo profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/phinteratienoo" class="crayons-story__secondary fw-medium m:hidden"> Phinter Atieno </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2275684" aria-controls="story-author-preview-content-2275684" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Phinter Atieno profile details"> Phinter Atieno </button> <div id="story-author-preview-content-2275684" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/phinteratienoo" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2291173%2F79685a51-bdb1-41c3-9b5f-75f3052285da.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Phinter Atieno</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2291173,"className":"User","name":"Phinter Atieno"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2291173"></div> </div> </div> </div> <span> <span class="crayons-story__tertiary fw-normal"> for </span><a href="/syncfusion" class="crayons-story__secondary fw-medium">Syncfusion, Inc.</a> </span> </div> <a href="https://dev.to/syncfusion/build-ai-powered-text-to-flowchart-converter-using-openai-and-react-diagram-library-3gdk" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-13T12:55:01Z">Feb 13</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739445624"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/syncfusion/build-ai-powered-text-to-flowchart-converter-using-openai-and-react-diagram-library-3gdk" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcrmpwi332vpskhjx3fhm.png" id="article-link-2275684"> Build AI-Powered Text-to-Flowchart Converter Using OpenAI and React Diagram Library </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(34, 34, 34, 0.10); --tag-prefix: #222222; --tag-bg-hover: rgba(34, 34, 34, 0.10); --tag-prefix-hover: #222222; " href="/t/react"><span class="crayons-tag__prefix">#</span>react</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/development"><span class="crayons-tag__prefix">#</span>development</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/smartaicomponents"><span class="crayons-tag__prefix">#</span>smartaicomponents</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/syncfusion/build-ai-powered-text-to-flowchart-converter-using-openai-and-react-diagram-library-3gdk#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Build AI-Powered Text-to-Flowchart Converter Using OpenAI and React Diagram Library"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a6d16istlqyr7eabmvt63owvctufmkx3" class="crayons-icon"><title id="a6d16istlqyr7eabmvt63owvctufmkx3">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 7 min read </small> <button type="button" id="article-save-button-2275684" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2275684" data-article-author-id="2291173" aria-label="Save post Build AI-Powered Text-to-Flowchart Converter Using OpenAI and React Diagram Library to reading list" title="Save post Build AI-Powered Text-to-Flowchart Converter Using OpenAI and React Diagram Library to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2274538" data-content-user-id="521749"> <a href="https://dev.to/timmy471/the-biggest-mistakes-frontend-developers-make-in-code-reviews-4fnf" aria-labelledby="article-link-2274538" class="crayons-story__hidden-navigation-link">The Biggest Mistakes Frontend Developers Make in Code Reviews</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/timmy471" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F521749%2F7caec8a9-09db-45ea-b972-e7206571109e.JPG" alt="timmy471 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/timmy471" class="crayons-story__secondary fw-medium m:hidden"> Ayantunji Timilehin </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2274538" aria-controls="story-author-preview-content-2274538" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Ayantunji Timilehin profile details"> Ayantunji Timilehin </button> <div id="story-author-preview-content-2274538" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/timmy471" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F521749%2F7caec8a9-09db-45ea-b972-e7206571109e.JPG" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Ayantunji Timilehin</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":521749,"className":"User","name":"Ayantunji Timilehin"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="521749"></div> </div> </div> </div> </div> <a href="https://dev.to/timmy471/the-biggest-mistakes-frontend-developers-make-in-code-reviews-4fnf" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-13T01:09:18Z">Feb 13</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739408958"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/timmy471/the-biggest-mistakes-frontend-developers-make-in-code-reviews-4fnf" data-preload-image="" id="article-link-2274538"> The Biggest Mistakes Frontend Developers Make in Code Reviews </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 51, 224, 0.10); --tag-prefix: #ff33e0; --tag-bg-hover: rgba(255, 51, 224, 0.10); --tag-prefix-hover: #ff33e0; " href="/t/frontend"><span class="crayons-tag__prefix">#</span>frontend</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/code"><span class="crayons-tag__prefix">#</span>code</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/timmy471/the-biggest-mistakes-frontend-developers-make-in-code-reviews-4fnf#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - The Biggest Mistakes Frontend Developers Make in Code Reviews"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ac9uvhlmywoygiueyrxqu854xg5f0zbs" class="crayons-icon"><title id="ac9uvhlmywoygiueyrxqu854xg5f0zbs">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2274538" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2274538" data-article-author-id="521749" aria-label="Save post The Biggest Mistakes Frontend Developers Make in Code Reviews to reading list" title="Save post The Biggest Mistakes Frontend Developers Make in Code Reviews to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2272905" data-content-user-id="2620498"> <a href="https://dev.to/__116c3f/create-a-website-in-moldova-key-steps-for-success-4497" aria-labelledby="article-link-2272905" class="crayons-story__hidden-navigation-link">Create a Website in Moldova: Key Steps for Success</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/__116c3f" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2620498%2Fcd035f63-1341-4e80-a619-a0a42ab24824.jpg" alt="__116c3f profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/__116c3f" class="crayons-story__secondary fw-medium m:hidden"> Михаил Терновецкий </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2272905" aria-controls="story-author-preview-content-2272905" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Михаил Терновецкий profile details"> Михаил Терновецкий </button> <div id="story-author-preview-content-2272905" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/__116c3f" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2620498%2Fcd035f63-1341-4e80-a619-a0a42ab24824.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Михаил Терновецкий</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2620498,"className":"User","name":"Михаил Терновецкий"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2620498"></div> </div> </div> </div> </div> <a href="https://dev.to/__116c3f/create-a-website-in-moldova-key-steps-for-success-4497" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-12T08:21:01Z">Feb 12</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739348461"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/__116c3f/create-a-website-in-moldova-key-steps-for-success-4497" data-preload-image="" id="article-link-2272905"> Create a Website in Moldova: Key Steps for Success </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/__116c3f/create-a-website-in-moldova-key-steps-for-success-4497#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Create a Website in Moldova: Key Steps for Success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a2b9mjotm35dw08qj0t2s43nyqurpn43" class="crayons-icon"><title id="a2b9mjotm35dw08qj0t2s43nyqurpn43">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2272905" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2272905" data-article-author-id="2620498" aria-label="Save post Create a Website in Moldova: Key Steps for Success to reading list" title="Save post Create a Website in Moldova: Key Steps for Success to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2268808" data-content-user-id="990748"> <a href="https://dev.to/zhufuyi/disrupting-traditional-development-deepseek-r1-sponge-for-rapidly-building-production-level-pmj" aria-labelledby="article-link-2268808" class="crayons-story__hidden-navigation-link">Disrupting Traditional Development: DeepSeek R1 + Sponge for Rapidly Building Production-Level Backend Services from Scratch</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/zhufuyi" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F990748%2F083e441e-2096-4a50-b79c-ac3a7b0bab8f.jpeg" alt="zhufuyi profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/zhufuyi" class="crayons-story__secondary fw-medium m:hidden"> zhuyasen </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2268808" aria-controls="story-author-preview-content-2268808" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="zhuyasen profile details"> zhuyasen </button> <div id="story-author-preview-content-2268808" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/zhufuyi" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F990748%2F083e441e-2096-4a50-b79c-ac3a7b0bab8f.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">zhuyasen</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":990748,"className":"User","name":"zhuyasen"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="990748"></div> </div> </div> </div> </div> <a href="https://dev.to/zhufuyi/disrupting-traditional-development-deepseek-r1-sponge-for-rapidly-building-production-level-pmj" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-10T08:46:45Z">Feb 10</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739177205"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/zhufuyi/disrupting-traditional-development-deepseek-r1-sponge-for-rapidly-building-production-level-pmj" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvseum15eowf1vxg4dgjv.png" id="article-link-2268808"> Disrupting Traditional Development: DeepSeek R1 + Sponge for Rapidly Building Production-Level Backend Services from Scratch </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(41, 190, 176, 0.10); --tag-prefix: #29BEB0; --tag-bg-hover: rgba(41, 190, 176, 0.10); --tag-prefix-hover: #29BEB0; " href="/t/go"><span class="crayons-tag__prefix">#</span>go</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(8, 55, 196, 0.10); --tag-prefix: #0837c4; --tag-bg-hover: rgba(8, 55, 196, 0.10); --tag-prefix-hover: #0837c4; " href="/t/deepseek"><span class="crayons-tag__prefix">#</span>deepseek</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/development"><span class="crayons-tag__prefix">#</span>development</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/zhufuyi/disrupting-traditional-development-deepseek-r1-sponge-for-rapidly-building-production-level-pmj#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Disrupting Traditional Development: DeepSeek R1 + Sponge for Rapidly Building Production-Level Backend Services from Scratch"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a255dyluvzal0la5rbie5bxoqnqapv6s" class="crayons-icon"><title id="a255dyluvzal0la5rbie5bxoqnqapv6s">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 7 min read </small> <button type="button" id="article-save-button-2268808" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2268808" data-article-author-id="990748" aria-label="Save post Disrupting Traditional Development: DeepSeek R1 + Sponge for Rapidly Building Production-Level Backend Services from Scratch to reading list" title="Save post Disrupting Traditional Development: DeepSeek R1 + Sponge for Rapidly Building Production-Level Backend Services from Scratch to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2268323" data-content-user-id="2555187"> <a href="https://dev.to/98ip/python-combined-with-proxy-ip-to-achieve-large-scale-data-capture-55jn" aria-labelledby="article-link-2268323" class="crayons-story__hidden-navigation-link">Python combined with proxy IP to achieve large-scale data capture</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/98ip" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2555187%2F00b2eab5-579e-4c07-94f3-d3ddb8435e32.png" alt="98ip profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/98ip" class="crayons-story__secondary fw-medium m:hidden"> 98IP 代理 </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2268323" aria-controls="story-author-preview-content-2268323" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="98IP 代理 profile details"> 98IP 代理 </button> <div id="story-author-preview-content-2268323" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/98ip" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2555187%2F00b2eab5-579e-4c07-94f3-d3ddb8435e32.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">98IP 代理</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2555187,"className":"User","name":"98IP 代理"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2555187"></div> </div> </div> </div> </div> <a href="https://dev.to/98ip/python-combined-with-proxy-ip-to-achieve-large-scale-data-capture-55jn" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-10T02:41:04Z">Feb 10</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739155264"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/98ip/python-combined-with-proxy-ip-to-achieve-large-scale-data-capture-55jn" data-preload-image="" id="article-link-2268323"> Python combined with proxy IP to achieve large-scale data capture </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(30, 56, 187, 0.10); --tag-prefix: #1E38BB; --tag-bg-hover: rgba(30, 56, 187, 0.10); --tag-prefix-hover: #1E38BB; " href="/t/python"><span class="crayons-tag__prefix">#</span>python</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/data"><span class="crayons-tag__prefix">#</span>data</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/scraper"><span class="crayons-tag__prefix">#</span>scraper</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/98ip/python-combined-with-proxy-ip-to-achieve-large-scale-data-capture-55jn#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Python combined with proxy IP to achieve large-scale data capture"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a91n6k0obbejyg13a7t154r40v9viznz" class="crayons-icon"><title id="a91n6k0obbejyg13a7t154r40v9viznz">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2268323" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2268323" data-article-author-id="2555187" aria-label="Save post Python combined with proxy IP to achieve large-scale data capture to reading list" title="Save post Python combined with proxy IP to achieve large-scale data capture to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2264303" data-content-user-id="1624988"> <a href="https://dev.to/leoarthur01/how-to-develop-a-comprehensive-data-management-strategy-47op" aria-labelledby="article-link-2264303" class="crayons-story__hidden-navigation-link">How to Develop a Comprehensive Data Management Strategy?</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/leoarthur01" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1624988%2Fffc8f9f1-ac13-4be4-b80a-f71991595c9a.PNG" alt="leoarthur01 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/leoarthur01" class="crayons-story__secondary fw-medium m:hidden"> leoarthur </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2264303" aria-controls="story-author-preview-content-2264303" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="leoarthur profile details"> leoarthur </button> <div id="story-author-preview-content-2264303" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/leoarthur01" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1624988%2Fffc8f9f1-ac13-4be4-b80a-f71991595c9a.PNG" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">leoarthur</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1624988,"className":"User","name":"leoarthur"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1624988"></div> </div> </div> </div> </div> <a href="https://dev.to/leoarthur01/how-to-develop-a-comprehensive-data-management-strategy-47op" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-07T11:24:55Z">Feb 7</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738927495"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/leoarthur01/how-to-develop-a-comprehensive-data-management-strategy-47op" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftwi0mwnwstleaqkxz202.PNG" id="article-link-2264303"> How to Develop a Comprehensive Data Management Strategy? </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/softwaredevelopment"><span class="crayons-tag__prefix">#</span>softwaredevelopment</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/leoarthur01/how-to-develop-a-comprehensive-data-management-strategy-47op#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How to Develop a Comprehensive Data Management Strategy?"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aki0jgwbwriwhhrl7yiy2um2z0nql1y7" class="crayons-icon"><title id="aki0jgwbwriwhhrl7yiy2um2z0nql1y7">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2264303" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2264303" data-article-author-id="1624988" aria-label="Save post How to Develop a Comprehensive Data Management Strategy? to reading list" title="Save post How to Develop a Comprehensive Data Management Strategy? to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2271370" data-content-user-id="2495613"> <a href="https://dev.to/wafae_faraji/dive-into-the-third-dimension-creating-stunning-3d-animations-with-css-3j3m" aria-labelledby="article-link-2271370" class="crayons-story__hidden-navigation-link">Dive into the Third Dimension: Creating Stunning 3D Animations with CSS</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/wafae_faraji" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2495613%2F10fc8179-08a1-4d22-ab0f-c9e3c26d9868.png" alt="wafae_faraji profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/wafae_faraji" class="crayons-story__secondary fw-medium m:hidden"> wafae faraji </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2271370" aria-controls="story-author-preview-content-2271370" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="wafae faraji profile details"> wafae faraji </button> <div id="story-author-preview-content-2271370" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/wafae_faraji" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2495613%2F10fc8179-08a1-4d22-ab0f-c9e3c26d9868.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">wafae faraji</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2495613,"className":"User","name":"wafae faraji"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2495613"></div> </div> </div> </div> </div> <a href="https://dev.to/wafae_faraji/dive-into-the-third-dimension-creating-stunning-3d-animations-with-css-3j3m" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-11T12:44:45Z">Feb 11</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739277885"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/wafae_faraji/dive-into-the-third-dimension-creating-stunning-3d-animations-with-css-3j3m" data-preload-image="" id="article-link-2271370"> Dive into the Third Dimension: Creating Stunning 3D Animations with CSS </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(41, 101, 241, 0.10); --tag-prefix: #2965F1; --tag-bg-hover: rgba(41, 101, 241, 0.10); --tag-prefix-hover: #2965F1; " href="/t/css"><span class="crayons-tag__prefix">#</span>css</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 51, 224, 0.10); --tag-prefix: #ff33e0; --tag-bg-hover: rgba(255, 51, 224, 0.10); --tag-prefix-hover: #ff33e0; " href="/t/frontend"><span class="crayons-tag__prefix">#</span>frontend</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/animation"><span class="crayons-tag__prefix">#</span>animation</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/wafae_faraji/dive-into-the-third-dimension-creating-stunning-3d-animations-with-css-3j3m" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left" data-reaction-count data-reactable-id="2271370" aria-label="Add a comment to post - Dive into the Third Dimension: Creating Stunning 3D Animations with CSS"> <div class="multiple_reactions_aggregate"> <span class="multiple_reactions_icons_container" dir="rtl"> <span class="crayons_icon_container"> <img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> </span> </span> <span class="aggregate_reactions_counter">3<span class="hidden s:inline"> reactions</span></span> </div> </a> <a href="https://dev.to/wafae_faraji/dive-into-the-third-dimension-creating-stunning-3d-animations-with-css-3j3m#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Dive into the Third Dimension: Creating Stunning 3D Animations with CSS"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ag2szocvogy11yvylyqbimnvf74zj8co" class="crayons-icon"><title id="ag2szocvogy11yvylyqbimnvf74zj8co">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2271370" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2271370" data-article-author-id="2495613" aria-label="Save post Dive into the Third Dimension: Creating Stunning 3D Animations with CSS to reading list" title="Save post Dive into the Third Dimension: Creating Stunning 3D Animations with CSS to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2271094" data-content-user-id="1149083"> <a href="https://dev.to/measuredco/understanding-the-trade-offs-of-using-tailwind-css-39dj" aria-labelledby="article-link-2271094" class="crayons-story__hidden-navigation-link">Understanding the trade-offs of using Tailwind CSS</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a class="crayons-logo crayons-logo--l" href="/measuredco"> <img alt="Measured logo" src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Forganization%2Fprofile_image%2F7346%2F6ea67014-3166-4276-869a-63357f6304b6.png" class="crayons-logo__image" loading="lazy" /> </a> <a href="/monospaced" class="crayons-avatar crayons-avatar--s absolute -right-2 -bottom-2 border-solid border-2 border-base-inverted "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1149083%2Faf3b7375-cdf0-4353-b06a-007707ebb924.jpg" alt="monospaced profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/monospaced" class="crayons-story__secondary fw-medium m:hidden"> Scott Boyle </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2271094" aria-controls="story-author-preview-content-2271094" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Scott Boyle profile details"> Scott Boyle </button> <div id="story-author-preview-content-2271094" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/monospaced" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1149083%2Faf3b7375-cdf0-4353-b06a-007707ebb924.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Scott Boyle</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1149083,"className":"User","name":"Scott Boyle"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1149083"></div> </div> </div> </div> <span> <span class="crayons-story__tertiary fw-normal"> for </span><a href="/measuredco" class="crayons-story__secondary fw-medium">Measured</a> </span> </div> <a href="https://dev.to/measuredco/understanding-the-trade-offs-of-using-tailwind-css-39dj" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-11T10:55:05Z">Feb 11</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1739271305"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/measuredco/understanding-the-trade-offs-of-using-tailwind-css-39dj" data-preload-image="" id="article-link-2271094"> Understanding the trade-offs of using Tailwind CSS </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(41, 101, 241, 0.10); --tag-prefix: #2965F1; --tag-bg-hover: rgba(41, 101, 241, 0.10); --tag-prefix-hover: #2965F1; " href="/t/css"><span class="crayons-tag__prefix">#</span>css</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 0, 0, 0.10); --tag-prefix: #000000; --tag-bg-hover: rgba(0, 0, 0, 0.10); --tag-prefix-hover: #000000; " href="/t/tailwindcss"><span class="crayons-tag__prefix">#</span>tailwindcss</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/measuredco/understanding-the-trade-offs-of-using-tailwind-css-39dj#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Understanding the trade-offs of using Tailwind CSS"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a5ta41li5c49rp6kc8meflx763oqzr8i" class="crayons-icon"><title id="a5ta41li5c49rp6kc8meflx763oqzr8i">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 8 min read </small> <button type="button" id="article-save-button-2271094" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2271094" data-article-author-id="1149083" aria-label="Save post Understanding the trade-offs of using Tailwind CSS to reading list" title="Save post Understanding the trade-offs of using Tailwind CSS to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2260433" data-content-user-id="2529990"> <a href="https://dev.to/devtriste/tech-lead-is-it-worth-taking-this-step-57nj" aria-labelledby="article-link-2260433" class="crayons-story__hidden-navigation-link">Tech Lead: Is It Worth Taking This Step?</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/devtriste" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2529990%2F72cdebc0-48db-4465-b64c-73052d2b0966.png" alt="devtriste profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/devtriste" class="crayons-story__secondary fw-medium m:hidden"> Dev triste </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2260433" aria-controls="story-author-preview-content-2260433" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Dev triste profile details"> Dev triste </button> <div id="story-author-preview-content-2260433" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/devtriste" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2529990%2F72cdebc0-48db-4465-b64c-73052d2b0966.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Dev triste</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2529990,"className":"User","name":"Dev triste"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2529990"></div> </div> </div> </div> </div> <a href="https://dev.to/devtriste/tech-lead-is-it-worth-taking-this-step-57nj" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-05T13:04:45Z">Feb 5</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738760685"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/devtriste/tech-lead-is-it-worth-taking-this-step-57nj" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0yfo1bkt8cbyajoh2q3k.jpg" id="article-link-2260433"> Tech Lead: Is It Worth Taking This Step? </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/devtriste/tech-lead-is-it-worth-taking-this-step-57nj#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Tech Lead: Is It Worth Taking This Step?"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aaojtqc3of9npefjp7wpdh0onufpo7ic" class="crayons-icon"><title id="aaojtqc3of9npefjp7wpdh0onufpo7ic">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2260433" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2260433" data-article-author-id="2529990" aria-label="Save post Tech Lead: Is It Worth Taking This Step? to reading list" title="Save post Tech Lead: Is It Worth Taking This Step? to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2260161" data-content-user-id="392033"> <a href="https://dev.to/akshayashet/understanding-the-differences-between-vue-2-and-vue-3-2205" aria-labelledby="article-link-2260161" class="crayons-story__hidden-navigation-link">Understanding the Differences Between Vue 2 and Vue 3</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/akshayashet" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F392033%2Fd6902080-d94e-4491-a661-04d36184a7e4.jpg" alt="akshayashet profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/akshayashet" class="crayons-story__secondary fw-medium m:hidden"> Akshaya Mallyar Shet </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2260161" aria-controls="story-author-preview-content-2260161" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Akshaya Mallyar Shet profile details"> Akshaya Mallyar Shet </button> <div id="story-author-preview-content-2260161" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/akshayashet" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F392033%2Fd6902080-d94e-4491-a661-04d36184a7e4.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Akshaya Mallyar Shet</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":392033,"className":"User","name":"Akshaya Mallyar Shet"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="392033"></div> </div> </div> </div> </div> <a href="https://dev.to/akshayashet/understanding-the-differences-between-vue-2-and-vue-3-2205" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-05T10:11:09Z">Feb 5</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738750269"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/akshayashet/understanding-the-differences-between-vue-2-and-vue-3-2205" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3tdx9wy4ogm1wwxq4k9o.png" id="article-link-2260161"> Understanding the Differences Between Vue 2 and Vue 3 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(65, 184, 131, 0.10); --tag-prefix: #41b883; --tag-bg-hover: rgba(65, 184, 131, 0.10); --tag-prefix-hover: #41b883; " href="/t/vue"><span class="crayons-tag__prefix">#</span>vue</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/akshayashet/understanding-the-differences-between-vue-2-and-vue-3-2205#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Understanding the Differences Between Vue 2 and Vue 3"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a7qvljrsn7lfo1ykk8rg0bam33dwanbb" class="crayons-icon"><title id="a7qvljrsn7lfo1ykk8rg0bam33dwanbb">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2260161" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2260161" data-article-author-id="392033" aria-label="Save post Understanding the Differences Between Vue 2 and Vue 3 to reading list" title="Save post Understanding the Differences Between Vue 2 and Vue 3 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2258740" data-content-user-id="850682"> <a href="https://dev.to/jigar_online/how-are-js-frameworks-transforming-frontend-development-for-web-solutions-3c88" aria-labelledby="article-link-2258740" class="crayons-story__hidden-navigation-link">How are JS Frameworks Transforming Frontend Development for Web Solutions?</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/jigar_online" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F850682%2F20885b31-488d-4c39-b2ad-8322c51d3d42.jpg" alt="jigar_online profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/jigar_online" class="crayons-story__secondary fw-medium m:hidden"> Jigar Shah </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2258740" aria-controls="story-author-preview-content-2258740" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Jigar Shah profile details"> Jigar Shah </button> <div id="story-author-preview-content-2258740" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/jigar_online" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F850682%2F20885b31-488d-4c39-b2ad-8322c51d3d42.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Jigar Shah</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":850682,"className":"User","name":"Jigar Shah"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="850682"></div> </div> </div> </div> </div> <a href="https://dev.to/jigar_online/how-are-js-frameworks-transforming-frontend-development-for-web-solutions-3c88" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-05T04:33:59Z">Feb 5</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738730039"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/jigar_online/how-are-js-frameworks-transforming-frontend-development-for-web-solutions-3c88" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Folopsjragbpfomdeukl5.jpg" id="article-link-2258740"> How are JS Frameworks Transforming Frontend Development for Web Solutions? </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 51, 224, 0.10); --tag-prefix: #ff33e0; --tag-bg-hover: rgba(255, 51, 224, 0.10); --tag-prefix-hover: #ff33e0; " href="/t/frontend"><span class="crayons-tag__prefix">#</span>frontend</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 87, 51, 0.10); --tag-prefix: #FF5733; --tag-bg-hover: rgba(255, 87, 51, 0.10); --tag-prefix-hover: #FF5733; " href="/t/sharepointframework"><span class="crayons-tag__prefix">#</span>sharepointframework</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/jigar_online/how-are-js-frameworks-transforming-frontend-development-for-web-solutions-3c88#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How are JS Frameworks Transforming Frontend Development for Web Solutions?"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aa9fyzh7ouxj5veozufe1hy8gu9teorg" class="crayons-icon"><title id="aa9fyzh7ouxj5veozufe1hy8gu9teorg">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 5 min read </small> <button type="button" id="article-save-button-2258740" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2258740" data-article-author-id="850682" aria-label="Save post How are JS Frameworks Transforming Frontend Development for Web Solutions? to reading list" title="Save post How are JS Frameworks Transforming Frontend Development for Web Solutions? to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2257579" data-content-user-id="2089055"> <a href="https://dev.to/orhan_yildirim_5d88bf1e81/attack-surface-mapping-a-comprehensive-guide-2d5i" aria-labelledby="article-link-2257579" class="crayons-story__hidden-navigation-link">Attack Surface Mapping: A Comprehensive Guide</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/orhan_yildirim_5d88bf1e81" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2089055%2Fd07ea9c3-b938-4b28-9788-0ea04e25c511.jpg" alt="orhan_yildirim_5d88bf1e81 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/orhan_yildirim_5d88bf1e81" class="crayons-story__secondary fw-medium m:hidden"> Orhan YILDIRIM </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2257579" aria-controls="story-author-preview-content-2257579" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Orhan YILDIRIM profile details"> Orhan YILDIRIM </button> <div id="story-author-preview-content-2257579" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/orhan_yildirim_5d88bf1e81" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2089055%2Fd07ea9c3-b938-4b28-9788-0ea04e25c511.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Orhan YILDIRIM</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2089055,"className":"User","name":"Orhan YILDIRIM"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2089055"></div> </div> </div> </div> </div> <a href="https://dev.to/orhan_yildirim_5d88bf1e81/attack-surface-mapping-a-comprehensive-guide-2d5i" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-04T00:22:02Z">Feb 4</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738628522"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/orhan_yildirim_5d88bf1e81/attack-surface-mapping-a-comprehensive-guide-2d5i" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F21o5dl5bajxedsoyqiyz.png" id="article-link-2257579"> Attack Surface Mapping: A Comprehensive Guide </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(23, 253, 26, 0.10); --tag-prefix: #17fd1a; --tag-bg-hover: rgba(23, 253, 26, 0.10); --tag-prefix-hover: #17fd1a; " href="/t/ai"><span class="crayons-tag__prefix">#</span>ai</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(27, 172, 128, 0.10); --tag-prefix: #1bac80; --tag-bg-hover: rgba(27, 172, 128, 0.10); --tag-prefix-hover: #1bac80; " href="/t/security"><span class="crayons-tag__prefix">#</span>security</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/orhan_yildirim_5d88bf1e81/attack-surface-mapping-a-comprehensive-guide-2d5i#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Attack Surface Mapping: A Comprehensive Guide"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ab30fzx8azw9pn45lb8o1u3ku9uekj1f" class="crayons-icon"><title id="ab30fzx8azw9pn45lb8o1u3ku9uekj1f">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 4 min read </small> <button type="button" id="article-save-button-2257579" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2257579" data-article-author-id="2089055" aria-label="Save post Attack Surface Mapping: A Comprehensive Guide to reading list" title="Save post Attack Surface Mapping: A Comprehensive Guide to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2254583" data-content-user-id="2725795"> <a href="https://dev.to/angel_rojas_6904bae237a0d/best-html-editors-which-one-should-you-choose-2ec2" aria-labelledby="article-link-2254583" class="crayons-story__hidden-navigation-link">Best HTML Editors: Which One Should You Choose?</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/angel_rojas_6904bae237a0d" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2725795%2Fa036414c-cf8a-46ef-9165-2b948a423836.jpg" alt="angel_rojas_6904bae237a0d profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/angel_rojas_6904bae237a0d" class="crayons-story__secondary fw-medium m:hidden"> Angel Rojas </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2254583" aria-controls="story-author-preview-content-2254583" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Angel Rojas profile details"> Angel Rojas </button> <div id="story-author-preview-content-2254583" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/angel_rojas_6904bae237a0d" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2725795%2Fa036414c-cf8a-46ef-9165-2b948a423836.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Angel Rojas</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2725795,"className":"User","name":"Angel Rojas"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2725795"></div> </div> </div> </div> </div> <a href="https://dev.to/angel_rojas_6904bae237a0d/best-html-editors-which-one-should-you-choose-2ec2" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-02T00:04:41Z">Feb 2</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738454681"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/angel_rojas_6904bae237a0d/best-html-editors-which-one-should-you-choose-2ec2" data-preload-image="" id="article-link-2254583"> Best HTML Editors: Which One Should You Choose? </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(245, 57, 0, 0.10); --tag-prefix: #F53900; --tag-bg-hover: rgba(245, 57, 0, 0.10); --tag-prefix-hover: #F53900; " href="/t/html"><span class="crayons-tag__prefix">#</span>html</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/angel_rojas_6904bae237a0d/best-html-editors-which-one-should-you-choose-2ec2#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Best HTML Editors: Which One Should You Choose?"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a7jizkwg6pb5r6iltdadeokudozbra45" class="crayons-icon"><title id="a7jizkwg6pb5r6iltdadeokudozbra45">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2254583" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2254583" data-article-author-id="2725795" aria-label="Save post Best HTML Editors: Which One Should You Choose? to reading list" title="Save post Best HTML Editors: Which One Should You Choose? to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2253980" data-content-user-id="479442"> <a href="https://dev.to/ayaz/solidity-crash-course-part-06-mapping-ether-memory-and-storage-ho8" aria-labelledby="article-link-2253980" class="crayons-story__hidden-navigation-link">Solidity Crash Course - Part 06: Mapping, Ether, Memory and Storage</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ayaz" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" alt="ayaz profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ayaz" class="crayons-story__secondary fw-medium m:hidden"> Muhammad Ayaz </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2253980" aria-controls="story-author-preview-content-2253980" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Muhammad Ayaz profile details"> Muhammad Ayaz </button> <div id="story-author-preview-content-2253980" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ayaz" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Muhammad Ayaz</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":479442,"className":"User","name":"Muhammad Ayaz"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="479442"></div> </div> </div> </div> </div> <a href="https://dev.to/ayaz/solidity-crash-course-part-06-mapping-ether-memory-and-storage-ho8" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-01T13:40:38Z">Feb 1</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738417238"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/ayaz/solidity-crash-course-part-06-mapping-ether-memory-and-storage-ho8" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foj50j9rp9l44hhjfk6i6.png" id="article-link-2253980"> Solidity Crash Course - Part 06: Mapping, Ether, Memory and Storage </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 255, 220, 0.10); --tag-prefix: #00ffdc; --tag-bg-hover: rgba(0, 255, 220, 0.10); --tag-prefix-hover: #00ffdc; " href="/t/web3"><span class="crayons-tag__prefix">#</span>web3</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/solidity"><span class="crayons-tag__prefix">#</span>solidity</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/ayaz/solidity-crash-course-part-06-mapping-ether-memory-and-storage-ho8#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Solidity Crash Course - Part 06: Mapping, Ether, Memory and Storage"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a6pvi34aft45qoplf3k0kycynk8aiq4w" class="crayons-icon"><title id="a6pvi34aft45qoplf3k0kycynk8aiq4w">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2253980" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2253980" data-article-author-id="479442" aria-label="Save post Solidity Crash Course - Part 06: Mapping, Ether, Memory and Storage to reading list" title="Save post Solidity Crash Course - Part 06: Mapping, Ether, Memory and Storage to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2253974" data-content-user-id="479442"> <a href="https://dev.to/ayaz/solidity-crash-course-part-05-whilefor-loop-event-arrays-and-struct-14p0" aria-labelledby="article-link-2253974" class="crayons-story__hidden-navigation-link">Solidity Crash Course - Part 05: While,For loop, Event, Arrays and Struct</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ayaz" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" alt="ayaz profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ayaz" class="crayons-story__secondary fw-medium m:hidden"> Muhammad Ayaz </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2253974" aria-controls="story-author-preview-content-2253974" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Muhammad Ayaz profile details"> Muhammad Ayaz </button> <div id="story-author-preview-content-2253974" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ayaz" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Muhammad Ayaz</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":479442,"className":"User","name":"Muhammad Ayaz"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="479442"></div> </div> </div> </div> </div> <a href="https://dev.to/ayaz/solidity-crash-course-part-05-whilefor-loop-event-arrays-and-struct-14p0" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-01T13:28:58Z">Feb 1</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738416538"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/ayaz/solidity-crash-course-part-05-whilefor-loop-event-arrays-and-struct-14p0" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxddhp50x06as1jtde6al.png" id="article-link-2253974"> Solidity Crash Course - Part 05: While,For loop, Event, Arrays and Struct </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 255, 220, 0.10); --tag-prefix: #00ffdc; --tag-bg-hover: rgba(0, 255, 220, 0.10); --tag-prefix-hover: #00ffdc; " href="/t/web3"><span class="crayons-tag__prefix">#</span>web3</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/solidity"><span class="crayons-tag__prefix">#</span>solidity</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/ayaz/solidity-crash-course-part-05-whilefor-loop-event-arrays-and-struct-14p0#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Solidity Crash Course - Part 05: While,For loop, Event, Arrays and Struct"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ae9lbu0qv988jezk1c6cou2i0y099a0s" class="crayons-icon"><title id="ae9lbu0qv988jezk1c6cou2i0y099a0s">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2253974" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2253974" data-article-author-id="479442" aria-label="Save post Solidity Crash Course - Part 05: While,For loop, Event, Arrays and Struct to reading list" title="Save post Solidity Crash Course - Part 05: While,For loop, Event, Arrays and Struct to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2253960" data-content-user-id="479442"> <a href="https://dev.to/ayaz/solidity-crash-course-part-4-comments-data-types-if-else-interface-31hd" aria-labelledby="article-link-2253960" class="crayons-story__hidden-navigation-link">Solidity Crash Course - Part 4: Comments, Data Types, If-else, Interface</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ayaz" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" alt="ayaz profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ayaz" class="crayons-story__secondary fw-medium m:hidden"> Muhammad Ayaz </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2253960" aria-controls="story-author-preview-content-2253960" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Muhammad Ayaz profile details"> Muhammad Ayaz </button> <div id="story-author-preview-content-2253960" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ayaz" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Muhammad Ayaz</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":479442,"className":"User","name":"Muhammad Ayaz"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="479442"></div> </div> </div> </div> </div> <a href="https://dev.to/ayaz/solidity-crash-course-part-4-comments-data-types-if-else-interface-31hd" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-01T13:15:18Z">Feb 1</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738415718"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/ayaz/solidity-crash-course-part-4-comments-data-types-if-else-interface-31hd" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx3rw4zk0bp894mgviqyd.png" id="article-link-2253960"> Solidity Crash Course - Part 4: Comments, Data Types, If-else, Interface </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 255, 220, 0.10); --tag-prefix: #00ffdc; --tag-bg-hover: rgba(0, 255, 220, 0.10); --tag-prefix-hover: #00ffdc; " href="/t/web3"><span class="crayons-tag__prefix">#</span>web3</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/solidity"><span class="crayons-tag__prefix">#</span>solidity</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/ayaz/solidity-crash-course-part-4-comments-data-types-if-else-interface-31hd#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Solidity Crash Course - Part 4: Comments, Data Types, If-else, Interface"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ac19y49xxns1aq3xn2sfhikln8jxgk6c" class="crayons-icon"><title id="ac19y49xxns1aq3xn2sfhikln8jxgk6c">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2253960" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2253960" data-article-author-id="479442" aria-label="Save post Solidity Crash Course - Part 4: Comments, Data Types, If-else, Interface to reading list" title="Save post Solidity Crash Course - Part 4: Comments, Data Types, If-else, Interface to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2253932" data-content-user-id="479442"> <a href="https://dev.to/ayaz/solidity-crash-course-part-03-variables-scopes-abstract-contracts-4mlp" aria-labelledby="article-link-2253932" class="crayons-story__hidden-navigation-link">Solidity Crash Course - Part 03 : Variables, Scopes, Abstract contracts</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/ayaz" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" alt="ayaz profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/ayaz" class="crayons-story__secondary fw-medium m:hidden"> Muhammad Ayaz </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2253932" aria-controls="story-author-preview-content-2253932" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Muhammad Ayaz profile details"> Muhammad Ayaz </button> <div id="story-author-preview-content-2253932" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/ayaz" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F479442%2Fa9f86ae7-3d77-4e28-ab8d-5eb99bf33190.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Muhammad Ayaz</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":479442,"className":"User","name":"Muhammad Ayaz"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="479442"></div> </div> </div> </div> </div> <a href="https://dev.to/ayaz/solidity-crash-course-part-03-variables-scopes-abstract-contracts-4mlp" class="crayons-story__tertiary fs-xs"><time datetime="2025-02-01T12:46:23Z">Feb 1</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738413983"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/ayaz/solidity-crash-course-part-03-variables-scopes-abstract-contracts-4mlp" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz6p8rye2sglfn74200yy.png" id="article-link-2253932"> Solidity Crash Course - Part 03 : Variables, Scopes, Abstract contracts </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(0, 255, 220, 0.10); --tag-prefix: #00ffdc; --tag-bg-hover: rgba(0, 255, 220, 0.10); --tag-prefix-hover: #00ffdc; " href="/t/web3"><span class="crayons-tag__prefix">#</span>web3</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(247, 223, 30, 0.10); --tag-prefix: #f7df1e; --tag-bg-hover: rgba(247, 223, 30, 0.10); --tag-prefix-hover: #f7df1e; " href="/t/javascript"><span class="crayons-tag__prefix">#</span>javascript</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/solidity"><span class="crayons-tag__prefix">#</span>solidity</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/ayaz/solidity-crash-course-part-03-variables-scopes-abstract-contracts-4mlp#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Solidity Crash Course - Part 03 : Variables, Scopes, Abstract contracts"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ab82qpw6invvibtknxuvjcs2zfk630ol" class="crayons-icon"><title id="ab82qpw6invvibtknxuvjcs2zfk630ol">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 2 min read </small> <button type="button" id="article-save-button-2253932" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2253932" data-article-author-id="479442" aria-label="Save post Solidity Crash Course - Part 03 : Variables, Scopes, Abstract contracts to reading list" title="Save post Solidity Crash Course - Part 03 : Variables, Scopes, Abstract contracts to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2249805" data-content-user-id="2066932"> <a href="https://dev.to/smok/advanced-web-development-insights-lessons-from-senior-developers-4pjo" aria-labelledby="article-link-2249805" class="crayons-story__hidden-navigation-link">Advanced Web Development Insights: Lessons from Senior Developers</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/smok" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2066932%2Fba763b01-21e8-44b3-abac-40fd5205793d.jpg" alt="smok profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/smok" class="crayons-story__secondary fw-medium m:hidden"> Seyed Mojtaba Kazemi </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2249805" aria-controls="story-author-preview-content-2249805" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Seyed Mojtaba Kazemi profile details"> Seyed Mojtaba Kazemi </button> <div id="story-author-preview-content-2249805" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/smok" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2066932%2Fba763b01-21e8-44b3-abac-40fd5205793d.jpg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Seyed Mojtaba Kazemi</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2066932,"className":"User","name":"Seyed Mojtaba Kazemi"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2066932"></div> </div> </div> </div> </div> <a href="https://dev.to/smok/advanced-web-development-insights-lessons-from-senior-developers-4pjo" class="crayons-story__tertiary fs-xs"><time datetime="2025-01-30T08:53:39Z">Jan 30</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738227219"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/smok/advanced-web-development-insights-lessons-from-senior-developers-4pjo" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faijo753s56ghzm74dzqd.jpg" id="article-link-2249805"> Advanced Web Development Insights: Lessons from Senior Developers </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(137, 6, 6, 0.10); --tag-prefix: #890606; --tag-bg-hover: rgba(137, 6, 6, 0.10); --tag-prefix-hover: #890606; " href="/t/programming"><span class="crayons-tag__prefix">#</span>programming</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/development"><span class="crayons-tag__prefix">#</span>development</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(255, 51, 224, 0.10); --tag-prefix: #ff33e0; --tag-bg-hover: rgba(255, 51, 224, 0.10); --tag-prefix-hover: #ff33e0; " href="/t/frontend"><span class="crayons-tag__prefix">#</span>frontend</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/smok/advanced-web-development-insights-lessons-from-senior-developers-4pjo#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Advanced Web Development Insights: Lessons from Senior Developers"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aa5n2q0smlxw036c37rquzzici9wz829" class="crayons-icon"><title id="aa5n2q0smlxw036c37rquzzici9wz829">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-2249805" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2249805" data-article-author-id="2066932" aria-label="Save post Advanced Web Development Insights: Lessons from Senior Developers to reading list" title="Save post Advanced Web Development Insights: Lessons from Senior Developers to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="1903649" data-content-user-id="1286490"> <a href="https://dev.to/sarthak619/backend-with-node-js-installing-and-creating-nodejs-server-29hj" aria-labelledby="article-link-1903649" class="crayons-story__hidden-navigation-link">Backend with Node JS : Installing and Creating NodeJS Server</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/sarthak619" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1286490%2F6c075f23-cc91-40bb-b0d1-8be0c3bc8bd2.png" alt="sarthak619 profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/sarthak619" class="crayons-story__secondary fw-medium m:hidden"> Sarthak Mahulikar </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-1903649" aria-controls="story-author-preview-content-1903649" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Sarthak Mahulikar profile details"> Sarthak Mahulikar </button> <div id="story-author-preview-content-1903649" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/sarthak619" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1286490%2F6c075f23-cc91-40bb-b0d1-8be0c3bc8bd2.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Sarthak Mahulikar</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1286490,"className":"User","name":"Sarthak Mahulikar"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1286490"></div> </div> </div> </div> </div> <a href="https://dev.to/sarthak619/backend-with-node-js-installing-and-creating-nodejs-server-29hj" class="crayons-story__tertiary fs-xs"><time datetime="2025-01-29T12:22:39Z">Jan 29</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738153359"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/sarthak619/backend-with-node-js-installing-and-creating-nodejs-server-29hj" data-preload-image="" id="article-link-1903649"> Backend with Node JS : Installing and Creating NodeJS Server </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(61, 136, 54, 0.10); --tag-prefix: #3d8836; --tag-bg-hover: rgba(61, 136, 54, 0.10); --tag-prefix-hover: #3d8836; " href="/t/node"><span class="crayons-tag__prefix">#</span>node</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/backend"><span class="crayons-tag__prefix">#</span>backend</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/sarthak619/backend-with-node-js-installing-and-creating-nodejs-server-29hj#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Backend with Node JS : Installing and Creating NodeJS Server"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="aixe6nqupn815gbpgs1v9cwtlokllt13" class="crayons-icon"><title id="aixe6nqupn815gbpgs1v9cwtlokllt13">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 3 min read </small> <button type="button" id="article-save-button-1903649" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="1903649" data-article-author-id="1286490" aria-label="Save post Backend with Node JS : Installing and Creating NodeJS Server to reading list" title="Save post Backend with Node JS : Installing and Creating NodeJS Server to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2247443" data-content-user-id="1226683"> <a href="https://dev.to/alexdro/how-to-sell-your-non-profitable-startup-i-sold-mine-and-you-can-too-nai" aria-labelledby="article-link-2247443" class="crayons-story__hidden-navigation-link">How to sell your non-profitable startup: I sold mine, and you can too</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/alexdro" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1226683%2Fd2901b57-9432-4a3f-be53-6573d2419834.png" alt="alexdro profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/alexdro" class="crayons-story__secondary fw-medium m:hidden"> Alex Dro </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2247443" aria-controls="story-author-preview-content-2247443" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="Alex Dro profile details"> Alex Dro </button> <div id="story-author-preview-content-2247443" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/alexdro" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1226683%2Fd2901b57-9432-4a3f-be53-6573d2419834.png" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">Alex Dro</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":1226683,"className":"User","name":"Alex Dro"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="1226683"></div> </div> </div> </div> </div> <a href="https://dev.to/alexdro/how-to-sell-your-non-profitable-startup-i-sold-mine-and-you-can-too-nai" class="crayons-story__tertiary fs-xs"><time datetime="2025-01-29T02:51:24Z">Jan 29</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738119084"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/alexdro/how-to-sell-your-non-profitable-startup-i-sold-mine-and-you-can-too-nai" data-preload-image="https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6dnoe088dc6ggiqm3viy.png" id="article-link-2247443"> How to sell your non-profitable startup: I sold mine, and you can too </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(230, 255, 251, 0.10); --tag-prefix: #E6FFFB; --tag-bg-hover: rgba(230, 255, 251, 0.10); --tag-prefix-hover: #E6FFFB; " href="/t/startup"><span class="crayons-tag__prefix">#</span>startup</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/sideprojects"><span class="crayons-tag__prefix">#</span>sideprojects</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/buildinpublic"><span class="crayons-tag__prefix">#</span>buildinpublic</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/alexdro/how-to-sell-your-non-profitable-startup-i-sold-mine-and-you-can-too-nai#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - How to sell your non-profitable startup: I sold mine, and you can too"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="ad34qfz3g96vnh70x5j78y28mhj223da" class="crayons-icon"><title id="ad34qfz3g96vnh70x5j78y28mhj223da">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 6 min read </small> <button type="button" id="article-save-button-2247443" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2247443" data-article-author-id="1226683" aria-label="Save post How to sell your non-profitable startup: I sold mine, and you can too to reading list" title="Save post How to sell your non-profitable startup: I sold mine, and you can too to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="crayons-story " data-feed-content-id="2245963" data-content-user-id="2761532"> <a href="https://dev.to/matusunuwawa/django-channels-asynchronous-magic-for-real-time-applications-1773" aria-labelledby="article-link-2245963" class="crayons-story__hidden-navigation-link">Django Channels: Asynchronous Magic for Real-Time Applications 🚀</a> <div class="crayons-story__body"> <div class="crayons-story__top"> <div class="crayons-story__meta"> <div class="crayons-story__author-pic"> <a href="/matusunuwawa" class="crayons-avatar crayons-avatar--l "> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2761532%2F7b5b46ba-2703-4594-96b7-04c585a3e35b.jpeg" alt="matusunuwawa profile" class="crayons-avatar__image" loading="lazy" /> </a> </div> <div> <div> <a href="/matusunuwawa" class="crayons-story__secondary fw-medium m:hidden"> MatyaSina </a> <div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"> <button id="story-author-preview-trigger-2245963" aria-controls="story-author-preview-content-2245963" class="profile-preview-card__trigger fs-s p-1 -ml-1 -my-2 crayons-btn crayons-btn--ghost" aria-label="MatyaSina profile details"> MatyaSina </button> <div id="story-author-preview-content-2245963" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0" style="border-top-color: var(--card-color);" data-repositioning-dropdown="true" data-testid="profile-preview-card"> <div class="gap-4 grid"> <div class="-mt-4"> <a href="/matusunuwawa" class="flex"> <span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"> <img src="https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2761532%2F7b5b46ba-2703-4594-96b7-04c585a3e35b.jpeg" class="crayons-avatar__image" alt="" loading="lazy" /> </span> <span class="crayons-link crayons-subtitle-2 mt-5">MatyaSina</span> </a> </div> <div class="print-hidden"> <button class="crayons-btn follow-action-button whitespace-nowrap follow-user w-100" data-info='{"style":"full","id":2761532,"className":"User","name":"MatyaSina"}'> Follow </button> </div> <div class="author-preview-metadata-container" data-author-id="2761532"></div> </div> </div> </div> </div> <a href="https://dev.to/matusunuwawa/django-channels-asynchronous-magic-for-real-time-applications-1773" class="crayons-story__tertiary fs-xs"><time datetime="2025-01-28T08:54:08Z">Jan 28</time><span class="time-ago-indicator-initial-placeholder" data-seconds="1738054448"></span></a> </div> </div> </div> <div class="crayons-story__indention"> <h2 class="crayons-story__title"> <a href="https://dev.to/matusunuwawa/django-channels-asynchronous-magic-for-real-time-applications-1773" data-preload-image="" id="article-link-2245963"> Django Channels: Asynchronous Magic for Real-Time Applications 🚀 </a> </h2> <div class="crayons-story__tags"> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(16, 62, 46, 0.10); --tag-prefix: #103e2e; --tag-bg-hover: rgba(16, 62, 46, 0.10); --tag-prefix-hover: #103e2e; " href="/t/django"><span class="crayons-tag__prefix">#</span>django</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(30, 56, 187, 0.10); --tag-prefix: #1E38BB; --tag-bg-hover: rgba(30, 56, 187, 0.10); --tag-prefix-hover: #1E38BB; " href="/t/python"><span class="crayons-tag__prefix">#</span>python</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(59, 73, 223, 0.10); --tag-prefix: #3b49df; --tag-bg-hover: rgba(59, 73, 223, 0.10); --tag-prefix-hover: #3b49df; " href="/t/web"><span class="crayons-tag__prefix">#</span>web</a> <a class="crayons-tag crayons-tag--monochrome " style=" --tag-bg: rgba(86, 39, 101, 0.10); --tag-prefix: #562765; --tag-bg-hover: rgba(86, 39, 101, 0.10); --tag-prefix-hover: #562765; " href="/t/webdev"><span class="crayons-tag__prefix">#</span>webdev</a> </div> <div class="crayons-story__bottom"> <div class="crayons-story__details"> <a href="https://dev.to/matusunuwawa/django-channels-asynchronous-magic-for-real-time-applications-1773#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center" aria-label="Add a comment to post - Django Channels: Asynchronous Magic for Real-Time Applications 🚀"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" role="img" aria-labelledby="a4kfsgbq5qivnpy2ifnqv97fmjokmlzk" class="crayons-icon"><title id="a4kfsgbq5qivnpy2ifnqv97fmjokmlzk">Comments</title><path d="M10.5 5h3a6 6 0 110 12v2.625c-3.75-1.5-9-3.75-9-8.625a6 6 0 016-6zM12 15.5h1.5a4.501 4.501 0 001.722-8.657A4.5 4.5 0 0013.5 6.5h-3A4.5 4.5 0 006 11c0 2.707 1.846 4.475 6 6.36V15.5z"></path></svg> <span class="hidden s:inline">Add Comment</span> </a> </div> <div class="crayons-story__save"> <small class="crayons-story__tertiary fs-xs mr-2"> 1 min read </small> <button type="button" id="article-save-button-2245963" class="c-btn c-btn--icon-alone bookmark-button" data-reactable-id="2245963" data-article-author-id="2761532" aria-label="Save post Django Channels: Asynchronous Magic for Real-Time Applications 🚀 to reading list" title="Save post Django Channels: Asynchronous Magic for Real-Time Applications 🚀 to reading list"> <span class="bm-initial"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75zM16.5 6h-9v11.574l4.5-2.82 4.5 2.82V6z"></path></svg> </span> <span class="bm-success"> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" aria-hidden="true"><path d="M6.75 4.5h10.5a.75.75 0 01.75.75v14.357a.375.375 0 01-.575.318L12 16.523l-5.426 3.401A.375.375 0 016 19.607V5.25a.75.75 0 01.75-.75z"></path></svg> </span> </button> </div> </div> </div> </div> </div> <div class="placeholder-div"></div> <div class="single-article-small-pic" id="article-index-hidden-div" style="display:none"></div> </div> <div class="loading-articles" id="loading-articles"> loading... </div> </main> <div id="sidebar-wrapper-right" class="sidebar-wrapper sidebar-wrapper-right"> <div class="sidebar-bg" id="sidebar-bg-right"></div> <aside class="side-bar sidebar-additional showing" id="sidebar-additional"> <div class="widget"> <header> <h4>trending guides/resources</h4> </header> <div class="widget-body"> <div class="widget-link-list"> <a class="crayons-link crayons-link--contentful" href="/michellebuchiokonicha/are-web-apis-the-same-as-rest-apis-how-web-apis-improve-the-web-57jm"> Are Web APIs the same as REST APIs? How to Improve your Web Apps with Web APIs </a> <a class="crayons-link crayons-link--contentful" href="/edgaras/configuring-reverb-in-laravel-11-with-apache-3hk1"> Configuring Reverb in Laravel 11 with Apache </a> <a class="crayons-link crayons-link--contentful" href="/kiipz/permission-based-authorization-in-aspnet-core-a-step-by-step-guide-1c3o"> Permission-Based Authorization in ASP.NET Core: A Step-by-Step Guide </a> <a class="crayons-link crayons-link--contentful" href="/patoliyainfotech/php-8x-features-you-should-be-using-in-2025-5145"> PHP 8.x Features You Should Be Using in 2025 </a> <a class="crayons-link crayons-link--contentful" href="/leapcell/how-to-get-the-goroutine-id-1h5o"> How to Get the Goroutine ID? </a> <a class="crayons-link crayons-link--contentful" href="/sovannaro/7-react-custom-hooks-i-cant-live-without-in-my-projects-14lj"> 7 React Custom Hooks I Can’t Live Without in My Projects 🚀 </a> <a class="crayons-link crayons-link--contentful" href="/sovannaro/7-hottest-ui-component-libraries-of-2025-2ce"> 7 Hottest UI Component Libraries of 2025 </a> <a class="crayons-link crayons-link--contentful" href="/yawaramin/youre-thinking-about-passkeys-wrong-171o"> You're thinking about passkeys wrong </a> <a class="crayons-link crayons-link--contentful" href="/ahmedjaad/servlet-the-foundation-of-java-web-technology-okh"> Servlet: The Foundation of Java Web Technology </a> <a class="crayons-link crayons-link--contentful" href="/arjun98k/dom-manipulation-in-javascript-4c3e"> DOM Manipulation in JavaScript </a> <a class="crayons-link crayons-link--contentful" href="/tymzap/honeypot-field-an-easy-to-implement-react-security-technique-52bg"> 🍯 Honeypot field: an easy to implement React security technique </a> <a class="crayons-link crayons-link--contentful" href="/abhay_yt_52a8e72b213be229/understanding-components-and-props-in-react-the-foundation-of-reusable-uis-27je"> Understanding Components and Props in React: The Foundation of Reusable UIs </a> <a class="crayons-link crayons-link--contentful" href="/devshefali/12-sites-you-should-know-for-free-website-templates-3e9i"> 12 Sites You Should Know for FREE Website Templates </a> <a class="crayons-link crayons-link--contentful" href="/cryptosandy/web3-reality-check-how-blockchain-is-solving-real-world-problems-1pi0"> Web3: How Blockchain is Solving Real-World Problems </a> <a class="crayons-link crayons-link--contentful" href="/aws-builders/hands-on-deploy-a-web-app-on-an-nginx-server-using-aws-app-runner-3mac"> Hands-On: Deploy a Web App on an Nginx Server Using AWS App Runner </a> <a class="crayons-link crayons-link--contentful" href="/bytebase/embed-sql-editor-in-your-internal-web-portal-3o1"> 🔧 Embed SQL Editor ✍️ in Your Internal Web Portal 💻 </a> <a class="crayons-link crayons-link--contentful" href="/surrealdb/whats-new-in-surrealist-32-2hp3"> What's new in Surrealist 3.2 </a> <a class="crayons-link crayons-link--contentful" href="/s4yuba/seo-and-i18n-implementation-guide-for-nextjs-app-router-dynamic-metadata-and-internationalization-3eol"> SEO and i18n Implementation Guide for Next.js App Router: Dynamic Metadata and Internationalization </a> <a class="crayons-link crayons-link--contentful" href="/po_o_d24c97614c55f3a51b47/how-to-create-a-hugo-theme-with-contact-form-470c"> How to create a hugo theme with contact form </a> <a class="crayons-link crayons-link--contentful" href="/acaverna/um-reels-meu-atingiu-1-milhao-de-visualizacoes-com-humor-para-desenvolvedores-g7l"> Um reels meu atingiu 1 milhão de visualizações com humor para desenvolvedores </a> </div> </div> </div> </aside> </div> </div> <script src="https://assets.dev.to/assets/storiesList-b9c50cbd898a3a64258a3a49db1c531651b0a4a11937be35ed4651111802b5b5.js" defer="defer"></script> <script src="https://assets.dev.to/assets/followButtons-f2455d1f50a862b83fa006b1953e3a1644598781243cae25d3e75b13c04184fd.js" defer="defer"></script> <script src="https://assets.dev.to/assets/tagFollows-25496b4e3bf8bec41c7881be6b330ac8e9aa612d1ce876863a984d934d839384.js" defer="defer"></script> <script src="https://assets.dev.to/assets/feedPreviewCards-8d16b0b656456a28c0a290f756cf6e21e19833111c4796f48c631bfea8323d51.js" defer="defer"></script> <script src="https://assets.dev.to/assets/hideBookmarkButtons-0cc08aac1c422e6b6f75e5284b5350215abf211b59fb3eb8d8a4ef85e205b607.js" defer="defer"></script> <script src="https://assets.dev.to/assets/drawerSliders-823098a874684cfb50f32368b8dd1c7854954b83a588b8b6cfaef1e8fd30d858.js" defer="defer"></script> <script src="https://assets.dev.to/assets/localizeArticleDates-70147c5c6bfe350b42e020ebb2a3dd37419d83978982b5a67b6389119bf162ac.js" defer="defer"></script> <div id="runtime-banner-container"></div> </div> </div> <footer id="footer" class="crayons-footer print-hidden"> <div id="footer-container" class="crayons-footer__container"> <style> .long-bb-body { max-height: calc(100vh - 200px); overflow: hidden; } .long-bb-bottom { height: 180px; background: linear-gradient(to top, var(--card-bg), transparent); margin-top: -180px; position:relative; z-index: 5; } </style> <div style="" data-display-unit data-id="146443" data-category-click="click" data-category-impression="impression" data-context-type="home" data-special="nothing" data-article-id="" data-type-of="in_house"> <p style="font-weight: bold;margin-bottom: 10px"> Thank you to our Diamond Sponsor <a href="https://neon.tech/">Neon</a> for supporting our community. </p> </div> <p class="fs-s crayons-footer__description"> <a class="c-link c-link--branded fw-medium" aria-label="DEV Community Home" href="/">DEV Community</a> — A constructive and inclusive social network for software developers. With you every step of your journey. </p> <ul class="footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0" style="" /> <li class="footer__nav-link flex items-center"> <a href="/"> Home </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/++"> DEV++ </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/pod"> Podcasts </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/videos"> Videos </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/tags"> Tags </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/help"> DEV Help </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="https://shop.forem.com/"> Forem Shop </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/advertise"> Advertise on DEV </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/challenges"> DEV Challenges </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/showcase"> DEV Showcase </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/about"> About </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/contact"> Contact </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/free-postgres-database-tier"> Free Postgres Database </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/software-comparisons"> Software comparisons </a> <span class="dot ml-2"></span> </li> </ul> <ul class="footer__nav-links flex gap-2 justify-center flex-wrap fs-s p-0" style="" /> <li class="footer__nav-link flex items-center"> <a href="/code-of-conduct"> Code of Conduct </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/privacy"> Privacy Policy </a> <span class="dot ml-2"></span> </li> <li class="footer__nav-link flex items-center"> <a href="/terms"> Terms of use </a> <span class="dot ml-2"></span> </li> </ul> <div class="fs-s"> <p>Built on <a class="c-link c-link--branded" target="_blank" rel="noopener" href="https://www.forem.com">Forem</a> — the <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to/t/opensource">open source</a> software that powers <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to">DEV</a> and other inclusive communities.</p> <p>Made with love and <a target="_blank" rel="noopener" class="c-link c-link--branded" href="https://dev.to/t/rails">Ruby on Rails</a>. DEV Community <span title="copyright">©</span> 2016 - 2025.</p> </div> </div> </footer> <div id="snack-zone"></div> <div id="global-signup-modal" class="authentication-modal hidden"> <div class="authentication-modal__container"> <figure class="authentication-modal__image-container"> <img class="authentication-modal__image" src="https://media2.dev.to/dynamic/image/width=190,height=,fit=scale-down,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8j7kvp660rqzt99zui8e.png" alt="DEV Community" loading="lazy" /> </figure> <div class="authentication-modal__content"> <p class="authentication-modal__description"> We're a place where coders share, stay up-to-date and grow their careers. </p> </div> <div class="authentication-modal__actions"> <a href="/enter" class="crayons-btn" aria-label="Log in" data-no-instant> Log in </a> <a href="/enter?state=new-user" class="crayons-btn crayons-btn--ghost-brand js-global-signup-modal__create-account" aria-label="Create new account" data-no-instant> Create account </a> </div> </div> </div> <script src="https://assets.dev.to/assets/signupModalShortcuts-0b25469b985100a01e94cbd7fccaf7f0a4d776e129aac65c766aa32cb28ab29a.js" defer="defer"></script> <div id="cookie-consent"></div> <div id="i18n-translations" data-translations="{"en":{"core":{"add_comment":"Add comment","beta":"beta","comment":"Comment","copy_link":"Copy link","edit_profile":"Edit profile","follow":"Follow","follow_back":"Follow back","following":"Following","like":"Like","loading":"loading...","reaction":"Reaction","report_abuse":"Report abuse","search":"Search","success_settings":"Successfully updated settings.","counted_organization":{"one":"%{count} organization","other":"%{count} organizations"},"counted_user":{"one":"%{count} person","other":"%{count} people"},"not_following":"You're not following anyone","following_everyone":"You're following %{details} (everyone)","you_are_following":"You're following","and":"and"}}}"></div> <div id="reaction-category-resources" class="hidden" aria-hidden="true"> <img data-name="Like" data-slug="like" data-position="1" src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18" /> <img data-name="Unicorn" data-slug="unicorn" data-position="2" src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18" /> <img data-name="Exploding Head" data-slug="exploding_head" data-position="3" src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18" /> <img data-name="Raised Hands" data-slug="raised_hands" data-position="4" src="https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg" width="18" height="18" /> <img data-name="Fire" data-slug="fire" data-position="5" src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18" /> </div> <script> var userSignedIn = false; if (document.readyState === 'complete' || document.readyState === 'interactive') { initAuth(); } else { document.addEventListener('DOMContentLoaded', initAuth); } function initAuth() { var paramToken = new URLSearchParams(window.location.search).get('jwt'); if (paramToken && !userSignedIn) { authenticateUser(paramToken); } else { var iframe = document.createElement('iframe'); iframe.style.display = 'none'; iframe.src = 'https://forem.com/auth_pass/iframe'; document.body.appendChild(iframe); window.addEventListener('message', function(event) { if (event.origin !== 'https://forem.com' && event.origin !== window.location.origin) { return; } var data = event.data; if (data.authenticated && !userSignedIn) { authenticateUser(data.token); } else if(data.authenticated && window.ReactNativeWebView && window.ReactNativeWebView.postMessage) { window.ReactNativeWebView.postMessage(JSON.stringify({ action: 'login', token: data.token, })); } }); } function authenticateUser(token) { fetch('/auth_pass/token_login', { method: 'POST', credentials: 'include', headers: { 'Content-Type': 'application/json', 'X-CSRF-Token': getMetaContent('csrf-token'), }, body: JSON.stringify({ token: token }), }) .then(function(response) { return response.json(); }) .then(function(data) { if (data.success) { if (document.head.querySelector('meta[name="user-signed-in"][content="false"]')) { // Reload the page to update the user's state location.reload(); } } }) .catch(function(error) { console.error('Error during authentication:', error); }); } function getMetaContent(name) { var element = document.querySelector('meta[name="' + name + '"]'); return element ? element.getAttribute('content') : ''; } } </script> </body> </html>