[{"data":1,"prerenderedAt":664},["ShallowReactive",2],{"i-lucide-moon":3,"i-lucide-sun":8,"i-lucide-search":10,"all-bookmarks":12,"10 ways to speed up web image loading":121,"Accessibility essentials every front-end developer should know by Martijn Hols":121,"alexop.dev":121,"All Collections on Blush":121,"Anthony Fu":121,"Architectures of modern Front-end applications":121,"Atkinson Hyperlegible Font - Braille Institute":121,"Atomic Architecture: Structuring Vue and Nuxt Projects | alexop.dev":121,"Building a Modular Monolith with Nuxt Layers: A Practical Guide | alexop.dev":121,"Building a Pinia Plugin for Cross-Tab State Syncing | alexop.dev":121,"calculator-app - Chad Nauseam Home":121,"Coolors - The super fast color palettes generator!":121,"Create Beautiful PDFs with HTML, CSS, and Markdown":121,"CSS loading animations with minimal effort!":121,"CSS scroll-driven scroll-snapping animations":121,"CSS Shadow Palette Generator":121,"Dev Encyclopedia | A dictionary for programmers":121,"Devhints — TL;DR for developer documentation":121,"Driver.js":121,"Excalifont - The official Excalidraw hand-drawn font":121,"fast-average-color":121,"Fixing Hydration Errors in Nuxt: A Practical Guide":121,"Font Playground -- Play with variable fonts!":121,"Geist Font":121,"GitHub - antfu\u002Fdrauu: Headless SVG-based drawboard in browser.":121,"GitHub - dropbox\u002Fzxcvbn: Low-Budget Password Strength Estimation":121,"GitHub - hrynko\u002Fvue-pdf-embed: PDF embed component for Vue 2 and Vue 3":121,"GitHub - LeSuisse\u002Fvue-dompurify-html: Safe replacement for the v-html directive":121,"GitHub - nolanlawson\u002Ffuite: A tool for finding memory leaks in web apps":121,"GitHub - puffinsoft\u002Fjscanify: The Javascript document scanning library.":121,"GitHub - romboHQ\u002Ftailwindcss-motion: tailwindcss-motion is a Tailwind CSS Plugin made at RomboHQ. It’s a simple, yet powerful, animation library with a simple syntax.":121,"GitHub - smastrom\u002Fnotivue: 🔔 Powerful toast notification system for Vue":121,"Haikei":121,"Histoire":121,"Home | Laws of UX":121,"How Discord Reduced Websocket Traffic by 40%":121,"How I cut GTA Online loading times by 70%":121,"How to choose the best rendering strategy for your app - Vercel":121,"How to Structure Vue Projects | alexop.dev":121,"How We Built r\u002FPlace - Upvoted":121,"IDEA - nonverbal algorithm assembly instructions":121,"Illustrations | unDraw":121,"imgsrc":121,"Josh W. Comeau":121,"Lenis – Smooth Scroll":121,"Lostpixels.io":121,"Magic of CSS — Adam Schwartz":121,"maska v3 docs":121,"Mona Sans & Hubot Sans":121,"Obfuscator - Spegal.Dev":121,"One Page Love — One Page Website Inspiration and Templates":121,"Packages · UnJS":121,"Prism":121,"Programming principles for self taught front-end developers":121,"Red Blob Games: Hexagonal Grids":121,"Reka":121,"Rough.js":121,"Secure coding in JavaScript - Stack Overflow":121,"Solving Prop Drilling in Vue: Modern State Management Strategies | alexop.dev":121,"Stable Fluids with three.js | mofu":121,"Swapy, a simple JavaScript tool for converting any layout you have to drag-to-swap layout":121,"The Monospace Web":121,"The Oatmeal - Comics by Matthew Inman":121,"TypeGPU – Type-safe WebGPU toolkit":121,"Typescale AI - Typography Scale & Design Tokens Generator":121,"Using Vue’s Custom Renderer API to Build Interfaces Beyond the DOM":121,"vanilla-cookieconsent":121,"Visual design rules you can safely follow every time":121,"vite-plugin-compression2":121,"Vue Accessibility Blueprint: 8 Steps | alexop.dev":121,"vue-command":121,"web-vitals":121,"Wheel":121,"Zdog":121,"Animation in the League of Legends Client":-1,"Silk – Interactive Generative Art":-1,"Home":-1,"Practical Guide To Not Blocking The Event Loop":-1,"GitHub - antfu\u002Fbroz: A simple, frameless browser for screenshots":-1,"Devices.css - Modern devices crafted in pure CSS":-1,"GitHub - antfu-collective\u002Fbumpp: Interactive CLI that bumps your version numbers and more":-1,"A Modern Quality Pipeline and Testing Strategy for Frontend Projects | alexop.dev":-1,"The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 (Still No Excuses!)":-1},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,24,false,"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Ccircle cx=\"12\" cy=\"12\" r=\"4\"\u002F>\u003Cpath d=\"M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"m21 21l-4.34-4.34\"\u002F>\u003Ccircle cx=\"11\" cy=\"11\" r=\"8\"\u002F>\u003C\u002Fg>",[13,23,32,41,50,59,67,75,83,92,100,108,116,123,132,139,145,153,161,170,178,186,194,202,210,218,226,234,242,250,258,266,274,282,290,298,306,314,322,330,337,345,353,361,369,377,385,393,401,409,416,424,433,439,445,453,461,469,477,485,492,500,508,516,524,531,539,547,555,563,571,577,584,590,598,606,614,620,628,636,642,650,656],{"id":14,"created_at":15,"description":16,"title":17,"url":18,"image":19,"tag":20,"fts":21,"type":22},212,"2026-04-12T18:44:55.442748+00:00","Images are one of the most significant contributors to slow websites. Here is how you can prevent this.","10 ways to speed up web image loading","https:\u002F\u002Fbyteofdev.com\u002Fposts\u002Fspeed-up-image-loading\u002F","\u002Fog_images\u002F10-ways-to-speed-up-web-image-loading-1776019495478.webp","Webdev","'10':1 'contributor':16 'imag':7,9 'load':8 'one':11 'prevent':25 'signific':15 'slow':18 'speed':4 'way':2 'web':6 'webdev':27 'websit':19","link",{"id":24,"created_at":25,"description":26,"title":27,"url":28,"image":29,"tag":20,"fts":30,"type":31},263,"2026-04-26T10:14:09.210171+00:00","A short, framework-agnostic concept of what a modern quality pipeline and testing strategy look like for any JavaScript or TypeScript frontend project.","A Modern Quality Pipeline and Testing Strategy for Frontend Projects | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fmodern-frontend-quality-pipeline\u002F","\u002Fog_images\u002Fa-modern-quality-pipeline-and-testing-strategy-for-frontend-projects-or-alexopdev-1777198449348.png","'agnost':16 'alexop.dev':11 'concept':17 'framework':15 'framework-agnost':14 'frontend':9,34 'javascript':31 'like':28 'look':27 'modern':2,21 'pipelin':4,23 'project':10,35 'qualiti':3,22 'short':13 'strategi':7,26 'test':6,25 'typescript':33 'webdev':36","note",{"id":33,"created_at":34,"description":35,"title":36,"url":37,"image":38,"tag":39,"fts":40,"type":22},107,"2026-04-12T17:03:27.014672+00:00","Essential accessibility practices for front-end developers, including semantic HTML, alt texts, ARIA, and keyboard navigation tips to build inclusive components.","Accessibility essentials every front-end developer should know by Martijn Hols","https:\u002F\u002Fmartijnhols.nl\u002Fblog\u002Faccessibility-essentials-every-front-end-developer-should-know","\u002Fog_images\u002Faccessibility-essentials-every-front-end-developer-should-know-by-martijn-hols-1776013407047.png","UI\u002FUX","'access':1,14 'alt':24 'aria':26 'build':32 'compon':34 'develop':7,20 'end':6,19 'essenti':2,13 'everi':3 'front':5,18 'front-end':4,17 'hol':12 'html':23 'includ':21 'inclus':33 'keyboard':28 'know':9 'martijn':11 'navig':29 'practic':15 'semant':22 'text':25 'tip':30 'ui\u002Fux':35",{"id":42,"created_at":43,"description":44,"title":45,"url":46,"image":47,"tag":48,"fts":49,"type":22},120,"2026-04-12T17:05:47.174135+00:00","A Personal Blog from a simple web developer","alexop.dev","https:\u002F\u002Falexop.dev","\u002Fog_images\u002Falexopdev-1776013547189.jpg","Portfolio","'alexop.dev':1 'blog':4 'develop':9 'person':3 'portfolio':10 'simpl':7 'web':8",{"id":51,"created_at":52,"description":53,"title":54,"url":55,"image":56,"tag":57,"fts":58,"type":22},156,"2026-04-12T17:12:39.59569+00:00","Blush makes it easy to add free illustrations to your designs. Play with fully customizable graphics made by artists across the globe.","All Collections on Blush","https:\u002F\u002Fblush.design\u002Fcollections","\u002Fog_images\u002Fall-collections-on-blush-1776013959612.png","Assets","'across':24 'add':10 'artist':23 'asset':27 'blush':4,5 'collect':2 'customiz':19 'design':15 'easi':8 'free':11 'fulli':18 'globe':26 'graphic':20 'illustr':12 'made':21 'make':6 'play':16",{"id":60,"created_at":61,"description":62,"title":63,"url":64,"image":65,"tag":20,"fts":66,"type":31},260,"2026-04-16T15:12:46.205666+00:00","The League of Legends client UI resembles many traditional web applications, both in its choice of technology (JavaScript\u002FHTML) and its range of functionality. However, the League &nbsp;client (the pre-game experience) is not a traditional…","Animation in the League of Legends Client","https:\u002F\u002Fwww.riotgames.com\u002Fen\u002Fnews\u002Fanimation-league-legends-client","\u002Fog_images\u002Fanimation-in-the-league-of-legends-client-1776352366264.png","'anim':1 'applic':18 'choic':22 'client':7,12,34 'experi':39 'function':30 'game':38 'howev':31 'javascript\u002Fhtml':25 'leagu':4,9,33 'legend':6,11 'mani':15 'pre':37 'pre-gam':36 'rang':28 'resembl':14 'technolog':24 'tradit':16,43 'ui':13 'web':17 'webdev':44",{"id":68,"created_at":69,"description":70,"title":71,"url":72,"image":73,"tag":48,"fts":74,"type":22},123,"2026-04-12T17:06:16.79669+00:00","Anthony Fu's Portfolio","Anthony Fu","https:\u002F\u002Fantfu.me\u002F","\u002Fog_images\u002Fanthony-fu-1776013576817.png","'anthoni':1,3 'fu':2,4 'portfolio':6,7",{"id":76,"created_at":77,"description":78,"title":79,"url":80,"image":81,"tag":20,"fts":82,"type":22},109,"2026-04-12T17:03:48.075749+00:00","This post explores the advantages of popular architectures and helps you choose the best solution to meet your unique requirements.","Architectures of modern Front-end applications","https:\u002F\u002Fblog.meetbrackets.com\u002Farchitectures-of-modern-front-end-applications-8859dfe6c12e?gi=c2e095a1b1a7","\u002Fog_images\u002Farchitectures-of-modern-front-end-applications-1776013428097.jpeg","'advantag':12 'applic':7 'architectur':1,15 'best':21 'choos':19 'end':6 'explor':10 'front':5 'front-end':4 'help':17 'meet':24 'modern':3 'popular':14 'post':9 'requir':27 'solut':22 'uniqu':26 'webdev':28",{"id":84,"created_at":85,"description":86,"title":87,"url":88,"image":89,"tag":90,"fts":91,"type":22},114,"2026-04-12T17:04:43.804998+00:00","Read easier with Atkinson Hyperlegible Font, crafted for low-vision readers. Download for free and enjoy clear letters and numbers on your computer!","Atkinson Hyperlegible Font - Braille Institute","https:\u002F\u002Fwww.brailleinstitute.org\u002Ffreefont\u002F","","Typography","'atkinson':1,9 'braill':4 'clear':23 'comput':29 'craft':12 'download':18 'easier':7 'enjoy':22 'font':3,11 'free':20 'hyperleg':2,10 'institut':5 'letter':24 'low':15 'low-vis':14 'number':26 'read':6 'reader':17 'typographi':30 'vision':16",{"id":93,"created_at":94,"description":95,"title":96,"url":97,"image":98,"tag":20,"fts":99,"type":22},110,"2026-04-12T17:03:57.45464+00:00","Learn how to implement Atomic Design principles in Vue or Nuxt projects. Improve your code structure and maintainability with this guide","Atomic Architecture: Structuring Vue and Nuxt Projects | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fatomic-design-vue-or-nuxt\u002F","\u002Fog_images\u002Fatomic-architecture-structuring-vue-and-nuxt-projects-or-alexopdev-1776013437470.png","'alexop.dev':8 'architectur':2 'atom':1,13 'code':23 'design':14 'guid':29 'implement':12 'improv':21 'learn':9 'maintain':26 'nuxt':6,19 'principl':15 'project':7,20 'structur':3,24 'vue':4,17 'webdev':30",{"id":101,"created_at":102,"description":103,"title":104,"url":105,"image":106,"tag":20,"fts":107,"type":22},115,"2026-04-12T17:04:47.306238+00:00","Learn how to build scalable applications using Nuxt Layers to enforce clean architecture boundaries without the complexity of microservices.","Building a Modular Monolith with Nuxt Layers: A Practical Guide | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fnuxt-layers-modular-monolith\u002F","\u002Fog_images\u002Fbuilding-a-modular-monolith-with-nuxt-layers-a-practical-guide-or-alexopdev-1776013487422.png","'alexop.dev':11 'applic':17 'architectur':24 'boundari':25 'build':1,15 'clean':23 'complex':28 'enforc':22 'guid':10 'layer':7,20 'learn':12 'microservic':30 'modular':3 'monolith':4 'nuxt':6,19 'practic':9 'scalabl':16 'use':18 'webdev':31 'without':26",{"id":109,"created_at":110,"description":111,"title":112,"url":113,"image":114,"tag":20,"fts":115,"type":22},116,"2026-04-12T17:04:57.279704+00:00","Learn how to create a Pinia plugin that synchronizes state across browser tabs using the BroadcastChannel API and Vue 3's Script Setup syntax.","Building a Pinia Plugin for Cross-Tab State Syncing | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fbuilding-pinia-plugin-cross-tab-sync\u002F","\u002Fog_images\u002Fbuilding-a-pinia-plugin-for-cross-tab-state-syncing-or-alexopdev-1776013497299.png","'3':31 'across':22 'alexop.dev':11 'api':28 'broadcastchannel':27 'browser':23 'build':1 'creat':15 'cross':7 'cross-tab':6 'learn':12 'pinia':3,17 'plugin':4,18 'script':33 'setup':34 'state':9,21 'sync':10 'synchron':20 'syntax':35 'tab':8,24 'use':25 'vue':30 'webdev':36",{"id":117,"created_at":118,"description":119,"title":119,"url":120,"image":121,"tag":20,"fts":122,"type":22},186,"2026-04-12T18:30:14.492762+00:00","calculator-app - Chad Nauseam Home","https:\u002F\u002Fchadnauseam.com\u002Fcoding\u002Frandom\u002Fcalculator-app",null,"'app':3,9 'calcul':2,8 'calculator-app':1,7 'chad':4,10 'home':6,12 'nauseam':5,11 'webdev':13",{"id":124,"created_at":125,"description":126,"title":127,"url":128,"image":129,"tag":130,"fts":131,"type":22},104,"2026-04-12T16:59:11.022986+00:00","Generate or browse beautiful color combinations for your designs.","Coolors - The super fast color palettes generator!","https:\u002F\u002Fcoolors.co\u002F","\u002Fog_images\u002Fcoolors-the-super-fast-color-palettes-generator-1776013151053.png","Tool","'beauti':11 'brows':10 'color':5,12 'combin':13 'coolor':1 'design':16 'fast':4 'generat':7,8 'palett':6 'super':3 'tool':17",{"id":133,"created_at":134,"description":135,"title":136,"url":137,"image":121,"tag":130,"fts":138,"type":22},117,"2026-04-12T17:05:18.217345+00:00","I built an easy-to-use tool that lets me use just HTML, CSS, and Markdown to create beautiful ebooks and PDFs.","Create Beautiful PDFs with HTML, CSS, and Markdown","https:\u002F\u002Fmichaelnthiessen.com\u002Fcreate-beautiful-pdfs-with-html-css-and-markdown?ck%3C\u002Fem%3Esubscriber%3Cem%3Eid=2100663796","'beauti':2,28 'built':10 'creat':1,27 'css':6,23 'easi':13 'easy-to-us':12 'ebook':29 'html':5,22 'let':18 'markdown':8,25 'pdfs':3,31 'tool':16,32 'use':15,20",{"id":140,"created_at":141,"description":121,"title":142,"url":143,"image":121,"tag":20,"fts":144,"type":22},153,"2026-04-12T17:11:57.369702+00:00","CSS loading animations with minimal effort!","https:\u002F\u002Fwhirl.netlify.app\u002F","'anim':3 'css':1 'effort':6 'load':2 'minim':5 'webdev':7",{"id":146,"created_at":147,"description":148,"title":149,"url":150,"image":151,"tag":20,"fts":152,"type":22},173,"2026-04-12T17:15:37.22773+00:00","**Currently only works on Chrome desktop**  A polyfill is included for other browsers, but it's iffy.  These last couple of years have really been **it...","CSS scroll-driven scroll-snapping animations","https:\u002F\u002Fcodepen.io\u002Fgiana\u002Fpen\u002FBabdgjB","\u002Fog_images\u002Fcss-scroll-driven-scroll-snapping-animations-1776014137245.png","'anim':8 'browser':21 'chrome':13 'coupl':28 'css':1 'current':9 'desktop':14 'driven':4 'iffi':25 'includ':18 'last':27 'polyfil':16 'realli':32 'scroll':3,6 'scroll-driven':2 'scroll-snap':5 'snap':7 'webdev':35 'work':11 'year':30",{"id":154,"created_at":155,"description":156,"title":157,"url":158,"image":159,"tag":20,"fts":160,"type":22},118,"2026-04-12T17:05:26.702267+00:00","Friendly tutorials for developers. Focus on React, CSS, Animation, and more!","CSS Shadow Palette Generator","https:\u002F\u002Fwww.joshwcomeau.com\u002Fshadow-palette\u002F","\u002Fog_images\u002Fcss-shadow-palette-generator-1776013526718.png","'anim':13 'css':1,12 'develop':8 'focus':9 'friend':5 'generat':4 'palett':3 'react':11 'shadow':2 'tutori':6 'webdev':16",{"id":162,"created_at":163,"description":164,"title":165,"url":166,"image":167,"tag":168,"fts":169,"type":22},188,"2026-04-12T18:30:34.331954+00:00","Community-driven encyclopedia for programmers with 400+ terms + category filters. Learn about programming concepts and tech jargon in Plain English","Dev Encyclopedia | A dictionary for programmers","https:\u002F\u002Fdevpedia.pages.dev\u002F","\u002Fog_images\u002Fdev-encyclopedia-or-a-dictionary-for-programmers-1776018634358.png","Coding","'400':14 'categori':16 'code':28 'communiti':8 'community-driven':7 'concept':21 'dev':1 'dictionari':4 'driven':9 'encyclopedia':2,10 'english':27 'filter':17 'jargon':24 'learn':18 'plain':26 'program':20 'programm':6,12 'tech':23 'term':15",{"id":171,"created_at":172,"description":173,"title":174,"url":175,"image":176,"tag":168,"fts":177,"type":22},122,"2026-04-12T17:06:06.70602+00:00","A ridiculous collection of web development cheatsheets","Devhints — TL;DR for developer documentation","https:\u002F\u002Fdevhints.io\u002F","\u002Fog_images\u002Fdevhints-tldr-for-developer-documentation-1776013566719.jpg","'cheatsheet':13 'code':14 'collect':9 'develop':5,12 'devhint':1 'document':6 'dr':3 'ridicul':8 'tl':2 'web':11",{"id":179,"created_at":180,"description":181,"title":182,"url":183,"image":184,"tag":39,"fts":185,"type":31},254,"2026-04-14T14:14:12.820955+00:00","Modern devices crafted in pure CSS. Pure CSS iPhone 14 Pro, iPhone 14, MacBook Pro, iPad Pro, iMac, Apple Watch Ultra, HomePod, iPhone 1st gen, and Surface family devices.","Devices.css - Modern devices crafted in pure CSS","https:\u002F\u002Fdevicescss.xyz\u002F","\u002Fog_images\u002Fdevicescss-modern-devices-crafted-in-pure-css-1776176052914.jpg","'14':17,20 '1st':31 'appl':26 'craft':4,10 'css':7,13,15 'devic':3,9,36 'devices.css':1 'famili':35 'gen':32 'homepod':29 'imac':25 'ipad':23 'iphon':16,19,30 'macbook':21 'modern':2,8 'pro':18,22,24 'pure':6,12,14 'surfac':34 'ui\u002Fux':37 'ultra':28 'watch':27",{"id":187,"created_at":188,"description":189,"title":190,"url":191,"image":192,"tag":20,"fts":193,"type":22},165,"2026-04-12T17:14:16.918986+00:00","A light-weight, no-dependency, vanilla JavaScript library to drive user's focus across the page.","Driver.js","https:\u002F\u002Fdriverjs.com\u002F","\u002Fog_images\u002Fdriverjs-1776014056936.png","'across':17 'depend':8 'drive':13 'driver.js':1 'focus':16 'javascript':10 'librari':11 'light':4 'light-weight':3 'no-depend':6 'page':19 'user':14 'vanilla':9 'webdev':20 'weight':5",{"id":195,"created_at":196,"description":197,"title":198,"url":199,"image":200,"tag":90,"fts":201,"type":22},126,"2026-04-12T17:06:46.813871+00:00","The new official hand-drawn font powering Excalidraw. Download Excalifont under MIT license and learn more about its specifics.","Excalifont - The official Excalidraw hand-drawn font","https:\u002F\u002Fplus.excalidraw.com\u002Fexcalifont","\u002Fog_images\u002Fexcalifont-the-official-excalidraw-hand-drawn-font-1776013606829.png","'download':18 'drawn':7,14 'excalidraw':4,17 'excalifont':1,19 'font':8,15 'hand':6,13 'hand-drawn':5,12 'learn':24 'licens':22 'mit':21 'new':10 'offici':3,11 'power':16 'specif':28 'typographi':29",{"id":203,"created_at":204,"description":205,"title":206,"url":207,"image":208,"tag":20,"fts":209,"type":22},157,"2026-04-12T17:12:47.876296+00:00","A simple library that calculates the average color of images, videos and canvas in browser environment.. Latest version: 9.5.2, last published: 7 days ago. Start using fast-average-color in your project by running `npm i fast-average-color`. There are 45 other projects in the npm registry using fast-average-color.","fast-average-color","https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Ffast-average-color","\u002Fog_images\u002Ffast-average-color-1776013967893.png","'..':21 '45':49 '7':27 '9.5.2':24 'ago':29 'averag':3,11,34,45,59 'browser':19 'calcul':9 'canva':17 'color':4,12,35,46,60 'day':28 'environ':20 'fast':2,33,44,58 'fast-average-color':1,32,43,57 'imag':14 'last':25 'latest':22 'librari':7 'npm':41,54 'project':38,51 'publish':26 'registri':55 'run':40 'simpl':6 'start':30 'use':31,56 'version':23 'video':15 'webdev':61",{"id":211,"created_at":212,"description":213,"title":214,"url":215,"image":216,"tag":20,"fts":217,"type":22},125,"2026-04-12T17:06:40.154812+00:00","Fix Nuxt hydration mismatch errors fast. Learn why hydration breaks, the most common causes, and practical, production-safe solutions to stop layout shifts and crashes.","Fixing Hydration Errors in Nuxt: A Practical Guide","https:\u002F\u002Fmasteringnuxt.com\u002Fblog\u002Ffixing-hydration-errors-in-nuxt-a-practical-guide","\u002Fog_images\u002Ffixing-hydration-errors-in-nuxt-a-practical-guide-1776013600170.png","'break':18 'caus':22 'common':21 'crash':34 'error':3,13 'fast':14 'fix':1,9 'guid':8 'hydrat':2,11,17 'layout':31 'learn':15 'mismatch':12 'nuxt':5,10 'practic':7,24 'product':26 'production-saf':25 'safe':27 'shift':32 'solut':28 'stop':30 'webdev':35",{"id":219,"created_at":220,"description":221,"title":222,"url":223,"image":224,"tag":90,"fts":225,"type":22},168,"2026-04-12T17:14:46.95972+00:00","The most fun place to experiment with layouts using variable fonts, and export front-end code right from this little web app. Designed and developed by Wenting Zhang.","Font Playground -- Play with variable fonts!","https:\u002F\u002Fplay.typedetail.com\u002F","\u002Fog_images\u002Ffont-playground-play-with-variable-fonts-1776014086973.png","'app':29 'code':23 'design':30 'develop':32 'end':22 'experi':12 'export':19 'font':1,6,17 'front':21 'front-end':20 'fun':9 'layout':14 'littl':27 'place':10 'play':3 'playground':2 'right':24 'typographi':36 'use':15 'variabl':5,16 'web':28 'went':34 'zhang':35",{"id":227,"created_at":228,"description":229,"title":230,"url":231,"image":232,"tag":90,"fts":233,"type":22},132,"2026-04-12T17:07:46.902295+00:00","Geist is a typeface made for developers and designers, embodying Vercel's design principles of simplicity, minimalism, and speed, drawing inspiration from the renowned Swiss design movement.","Geist Font","https:\u002F\u002Fvercel.com\u002Ffont","\u002Fog_images\u002Fgeist-font-1776013666917.png","'design':11,15,28 'develop':9 'draw':22 'embodi':12 'font':2 'geist':1,3 'inspir':23 'made':7 'minim':19 'movement':29 'principl':16 'renown':26 'simplic':18 'speed':21 'swiss':27 'typefac':6 'typographi':30 'vercel':13",{"id":235,"created_at":236,"description":237,"title":238,"url":239,"image":240,"tag":168,"fts":241,"type":31},262,"2026-04-16T15:14:08.504725+00:00","Interactive CLI that bumps your version numbers and more - antfu-collective\u002Fbumpp","GitHub - antfu-collective\u002Fbumpp: Interactive CLI that bumps your version numbers and more","https:\u002F\u002Fgithub.com\u002Fantfu-collective\u002Fbumpp","\u002Fog_images\u002Fgithub-antfu-collectivebumpp-interactive-cli-that-bumps-your-version-numbers-and-more-1776352448626.png","'\u002Fbumpp':5,27 'antfu':3,25 'antfu-collect':2,24 'bump':9,18 'cli':7,16 'code':28 'collect':4,26 'github':1 'interact':6,15 'number':12,21 'version':11,20",{"id":243,"created_at":244,"description":245,"title":246,"url":247,"image":248,"tag":20,"fts":249,"type":31},261,"2026-04-16T15:13:52.987131+00:00","A simple, frameless browser for screenshots. Contribute to antfu\u002Fbroz development by creating an account on GitHub.","GitHub - antfu\u002Fbroz: A simple, frameless browser for screenshots","https:\u002F\u002Fgithub.com\u002Fantfu\u002Fbroz","\u002Fog_images\u002Fgithub-antfubroz-a-simple-frameless-browser-for-screenshots-1776352433146.png","'account':22 'antfu\u002Fbroz':2,17 'browser':6,12 'contribut':15 'creat':20 'develop':18 'frameless':5,11 'github':1,24 'screenshot':8,14 'simpl':4,10 'webdev':25",{"id":251,"created_at":252,"description":253,"title":254,"url":255,"image":256,"tag":20,"fts":257,"type":22},194,"2026-04-12T18:41:47.73542+00:00","Headless SVG-based drawboard in browser. Contribute to antfu\u002Fdrauu development by creating an account on GitHub.","GitHub - antfu\u002Fdrauu: Headless SVG-based drawboard in browser.","https:\u002F\u002Fgithub.com\u002Fantfu\u002Fdrauu","\u002Fog_images\u002Fgithub-antfudrauu-headless-svg-based-drawboard-in-browser-1776019307802.png","'account':24 'antfu\u002Fdrauu':2,19 'base':6,13 'browser':9,16 'contribut':17 'creat':22 'develop':20 'drawboard':7,14 'github':1,26 'headless':3,10 'svg':5,12 'svg-base':4,11 'webdev':27",{"id":259,"created_at":260,"description":261,"title":262,"url":263,"image":264,"tag":20,"fts":265,"type":22},211,"2026-04-12T18:44:45.959126+00:00","Low-Budget Password Strength Estimation. Contribute to dropbox\u002Fzxcvbn development by creating an account on GitHub.","GitHub - dropbox\u002Fzxcvbn: Low-Budget Password Strength Estimation","https:\u002F\u002Fgithub.com\u002Fdropbox\u002Fzxcvbn","\u002Fog_images\u002Fgithub-dropboxzxcvbn-low-budget-password-strength-estimation-1776019486007.png","'account':22 'budget':5,11 'contribut':15 'creat':20 'develop':18 'dropbox\u002Fzxcvbn':2,17 'estim':8,14 'github':1,24 'low':4,10 'low-budget':3,9 'password':6,12 'strength':7,13 'webdev':25",{"id":267,"created_at":268,"description":269,"title":270,"url":271,"image":272,"tag":20,"fts":273,"type":22},205,"2026-04-12T18:43:45.915578+00:00","PDF embed component for Vue 2 and Vue 3. Contribute to hrynko\u002Fvue-pdf-embed development by creating an account on GitHub.","GitHub - hrynko\u002Fvue-pdf-embed: PDF embed component for Vue 2 and Vue 3","https:\u002F\u002Fgithub.com\u002Fhrynko\u002Fvue-pdf-embed","\u002Fog_images\u002Fgithub-hrynkovue-pdf-embed-pdf-embed-component-for-vue-2-and-vue-3-1776019425955.png","'2':8,17 '3':11,20 'account':28 'compon':5,14 'contribut':21 'creat':26 'develop':24 'emb':4,13 'github':1,30 'hrynko\u002Fvue-pdf-embed':2,23 'pdf':3,12 'vue':7,10,16,19 'webdev':31",{"id":275,"created_at":276,"description":277,"title":278,"url":279,"image":280,"tag":20,"fts":281,"type":22},204,"2026-04-12T18:43:36.231388+00:00","Safe replacement for the v-html directive. Contribute to LeSuisse\u002Fvue-dompurify-html development by creating an account on GitHub.","GitHub - LeSuisse\u002Fvue-dompurify-html: Safe replacement for the v-html directive","https:\u002F\u002Fgithub.com\u002FLeSuisse\u002Fvue-dompurify-html\u002F","\u002Fog_images\u002Fgithub-lesuissevue-dompurify-html-safe-replacement-for-the-v-html-directive-1776019416902.png","'account':26 'contribut':19 'creat':24 'develop':22 'direct':10,18 'github':1,28 'html':9,17 'lesuisse\u002Fvue-dompurify-html':2,21 'replac':4,12 'safe':3,11 'v':8,16 'v-html':7,15 'webdev':29",{"id":283,"created_at":284,"description":285,"title":286,"url":287,"image":288,"tag":20,"fts":289,"type":22},197,"2026-04-12T18:42:16.095806+00:00","A tool for finding memory leaks in web apps. Contribute to nolanlawson\u002Ffuite development by creating an account on GitHub.","GitHub - nolanlawson\u002Ffuite: A tool for finding memory leaks in web apps","https:\u002F\u002Fgithub.com\u002Fnolanlawson\u002Ffuite","\u002Fog_images\u002Fgithub-nolanlawsonfuite-a-tool-for-finding-memory-leaks-in-web-apps-1776019336151.png","'account':28 'app':11,20 'contribut':21 'creat':26 'develop':24 'find':6,15 'github':1,30 'leak':8,17 'memori':7,16 'nolanlawson\u002Ffuite':2,23 'tool':4,13 'web':10,19 'webdev':31",{"id":291,"created_at":292,"description":293,"title":294,"url":295,"image":296,"tag":20,"fts":297,"type":22},195,"2026-04-12T18:41:55.898311+00:00","The Javascript document scanning library. Contribute to puffinsoft\u002Fjscanify development by creating an account on GitHub.","GitHub - puffinsoft\u002Fjscanify: The Javascript document scanning library.","https:\u002F\u002Fgithub.com\u002Fpuffinsoft\u002Fjscanify","\u002Fog_images\u002Fgithub-puffinsoftjscanify-the-javascript-document-scanning-library-1776019315931.png","'account':20 'contribut':13 'creat':18 'develop':16 'document':5,10 'github':1,22 'javascript':4,9 'librari':7,12 'puffinsoft\u002Fjscanify':2,15 'scan':6,11 'webdev':23",{"id":299,"created_at":300,"description":301,"title":302,"url":303,"image":304,"tag":20,"fts":305,"type":22},200,"2026-04-12T18:42:45.837916+00:00","tailwindcss-motion is a Tailwind CSS Plugin made at RomboHQ. It’s a simple, yet powerful, animation library with a simple syntax. - romboHQ\u002Ftailwindcss-motion","GitHub - romboHQ\u002Ftailwindcss-motion: tailwindcss-motion is a Tailwind CSS Plugin made at RomboHQ. It’s a simple, yet powerful, animation library with a simple syntax.","https:\u002F\u002Fgithub.com\u002FromboHQ\u002Ftailwindcss-motion","\u002Fog_images\u002Fgithub-rombohqtailwindcss-motion-tailwindcss-motion-is-a-tailwind-css-plugin-made-at-rombohq-its-a-simple-yet-powerful-animation-library-with-a-simple-syntax-1776019365870.png","'anim':20,43 'css':9,32 'github':1 'librari':21,44 'made':11,34 'motion':5,28 'plugin':10,33 'power':19,42 'rombohq':13,36 'rombohq\u002Ftailwindcss-motion':2,49 'simpl':17,24,40,47 'syntax':25,48 'tailwind':8,31 'tailwindcss':4,27 'tailwindcss-mot':3,26 'webdev':50 'yet':18,41",{"id":307,"created_at":308,"description":309,"title":310,"url":311,"image":312,"tag":20,"fts":313,"type":22},209,"2026-04-12T18:44:26.277764+00:00","🔔 Powerful toast notification system for Vue. Contribute to smastrom\u002Fnotivue development by creating an account on GitHub.","GitHub - smastrom\u002Fnotivue: 🔔 Powerful toast notification system for Vue","https:\u002F\u002Fgithub.com\u002Fsmastrom\u002Fnotivue","\u002Fog_images\u002Fgithub-smastromnotivue-powerful-toast-notification-system-for-vue-1776019466327.png","'account':22 'contribut':15 'creat':20 'develop':18 'github':1,24 'notif':5,11 'power':3,9 'smastrom\u002Fnotivue':2,17 'system':6,12 'toast':4,10 'vue':8,14 'webdev':25",{"id":315,"created_at":316,"description":317,"title":318,"url":319,"image":320,"tag":130,"fts":321,"type":22},210,"2026-04-12T18:44:35.425372+00:00","A web-based design tool to generate unique SVG design assets for websites, social media, blog posts, desktop and mobile wallpapers, posters, and more! Our generators let you discover, customize, randomize, and export generative SVG design assets ready to use with your favorite design tools.","Haikei","https:\u002F\u002Fapp.haikei.app\u002F","\u002Fog_images\u002Fhaikei-1776019475470.png","'asset':13,39 'base':5 'blog':18 'custom':32 'design':6,12,38,46 'desktop':20 'discov':31 'export':35 'favorit':45 'generat':9,28,36 'haikei':1 'let':29 'media':17 'mobil':22 'post':19 'poster':24 'random':33 'readi':40 'social':16 'svg':11,37 'tool':7,47,48 'uniqu':10 'use':42 'wallpap':23 'web':4 'web-bas':3 'websit':15",{"id":323,"created_at":324,"description":325,"title":326,"url":327,"image":328,"tag":20,"fts":329,"type":22},169,"2026-04-12T17:14:56.712122+00:00","Fast stories powered by Vite","Histoire","https:\u002F\u002Fhistoire.dev\u002F","\u002Fog_images\u002Fhistoire-1776014096728.png","'fast':2 'histoir':1 'power':4 'stori':3 'vite':6 'webdev':7",{"id":331,"created_at":332,"description":333,"title":334,"url":335,"image":121,"tag":20,"fts":336,"type":31},264,"2026-05-28T19:56:26.450971+00:00","A lightweight carousel library with fluid motion and great swipe precision","Home","https:\u002F\u002Fwww.embla-carousel.com\u002F","'carousel':4 'fluid':7 'great':10 'home':1 'librari':5 'lightweight':3 'motion':8 'precis':12 'swipe':11 'webdev':13",{"id":338,"created_at":339,"description":340,"title":341,"url":342,"image":343,"tag":39,"fts":344,"type":22},172,"2026-04-12T17:15:27.077439+00:00","Laws of UX is a collection of best practices that designers can consider when building user interfaces.","Home | Laws of UX","https:\u002F\u002Flawsofux.com\u002F","\u002Fog_images\u002Fhome-or-laws-of-ux-1776014127101.png","'best':12 'build':19 'collect':10 'consid':17 'design':15 'home':1 'interfac':21 'law':2,5 'practic':13 'ui\u002Fux':22 'user':20 'ux':4,7",{"id":346,"created_at":347,"description":348,"title":349,"url":350,"image":351,"tag":20,"fts":352,"type":22},128,"2026-04-12T17:07:06.829194+00:00","How we rolled out zstandard and other improvements across our gateway cluster to reduce the amount of bandwidth that’s used by our clients.","How Discord Reduced Websocket Traffic by 40%","https:\u002F\u002Fdiscord.com\u002Fblog\u002Fhow-discord-reduced-websocket-traffic-by-40-percent","\u002Fog_images\u002Fhow-discord-reduced-websocket-traffic-by-40percent-1776013626843.png","'40':7 'across':16 'amount':23 'bandwidth':25 'client':31 'cluster':19 'discord':2 'gateway':18 'improv':15 'reduc':3,21 'roll':10 'traffic':5 'use':28 'webdev':32 'websocket':4 'zstandard':12",{"id":354,"created_at":355,"description":356,"title":357,"url":358,"image":359,"tag":168,"fts":360,"type":22},147,"2026-04-12T17:10:36.838288+00:00","GTA Online. Infamous for its slow loading times. Having picked up the game again to finish some of the newer heists I was shocked (\u002Fs) to discover that it still loads just as slow as the day it was re","How I cut GTA Online loading times by 70%","https:\u002F\u002Fnee.lv\u002F2021\u002F02\u002F28\u002FHow-I-cut-GTA-Online-loading-times-by-70\u002F","\u002Fog_images\u002Fhow-i-cut-gta-online-loading-times-by-70percent-1776013836852.png","'\u002Fs':34 '70':9 'code':50 'cut':3 'day':46 'discov':36 'finish':25 'game':22 'gta':4,10 'heist':30 'infam':12 'load':6,16,40 'newer':29 'onlin':5,11 'pick':19 're':49 'shock':33 'slow':15,43 'still':39 'time':7,17",{"id":362,"created_at":363,"description":364,"title":365,"url":366,"image":367,"tag":20,"fts":368,"type":22},150,"2026-04-12T17:11:27.286191+00:00","Demystify Next.js rendering strategies: SSG, SSR, CSR, ISR, and PPR. Optimize your web apps for performance, SEO, and user experience. Learn when and how to use each approach with real-world examples and practical tips for modern web development.","How to choose the best rendering strategy for your app - Vercel","https:\u002F\u002Fvercel.com\u002Fblog\u002Fhow-to-choose-the-best-rendering-strategy-for-your-app","\u002Fog_images\u002Fhow-to-choose-the-best-rendering-strategy-for-your-app-vercel-1776013887306.png","'app':10,25 'approach':39 'best':5 'choos':3 'csr':18 'demystifi':12 'develop':51 'exampl':44 'experi':31 'isr':19 'learn':32 'modern':49 'next.js':13 'optim':22 'perform':27 'ppr':21 'practic':46 'real':42 'real-world':41 'render':6,14 'seo':28 'ssg':16 'ssr':17 'strategi':7,15 'tip':47 'use':37 'user':30 'vercel':11 'web':24,50 'webdev':52 'world':43",{"id":370,"created_at":371,"description":372,"title":373,"url":374,"image":375,"tag":20,"fts":376,"type":22},111,"2026-04-12T17:04:07.288002+00:00","Discover best practices for structuring Vue projects of any size, from simple apps to complex enterprise solutions.","How to Structure Vue Projects | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fhow-to-structure-vue-projects\u002F","\u002Fog_images\u002Fhow-to-structure-vue-projects-or-alexopdev-1776013447302.png","'alexop.dev':6 'app':19 'best':8 'complex':21 'discov':7 'enterpris':22 'practic':9 'project':5,13 'simpl':18 'size':16 'solut':23 'structur':3,11 'vue':4,12 'webdev':24",{"id":378,"created_at":379,"description":380,"title":381,"url":382,"image":383,"tag":168,"fts":384,"type":22},185,"2026-04-12T18:30:03.904402+00:00","Brian Simpson, Matt Lee, & Daniel Ellis (u\u002Fbsimpson, u\u002Fmadlee, & u\u002Fdaniel) Each year for April Fools’, rather than a prank, we like to create a project tha","How We Built r\u002FPlace - Upvoted","https:\u002F\u002Fredditinc.com\u002Fnews\u002Fhow-we-built-rplace","\u002Fog_images\u002Fhow-we-built-rplace-upvoted-1776018603925.png","'april':18 'brian':6 'built':3 'code':31 'creat':27 'daniel':10 'elli':11 'fool':19 'lee':9 'like':25 'matt':8 'prank':23 'project':29 'r\u002Fplace':4 'rather':20 'simpson':7 'tha':30 'u\u002Fbsimpson':12 'u\u002Fdaniel':14 'u\u002Fmadlee':13 'upvot':5 'year':16",{"id":386,"created_at":387,"description":388,"title":389,"url":390,"image":391,"tag":168,"fts":392,"type":22},129,"2026-04-12T17:07:16.746757+00:00","IDEA is a series of nonverbal algorithm assembly instructions, created by Sándor P. Fekete and blinry.","IDEA - nonverbal algorithm assembly instructions","https:\u002F\u002Fidea-instructions.com\u002F","\u002Fog_images\u002Fidea-nonverbal-algorithm-assembly-instructions-1776013636761.png","'algorithm':3,12 'assembl':4,13 'blinri':21 'code':22 'creat':15 'feket':19 'idea':1,6 'instruct':5,14 'nonverb':2,11 'p':18 'seri':9 'sándor':17",{"id":394,"created_at":395,"description":396,"title":397,"url":398,"image":399,"tag":57,"fts":400,"type":22},163,"2026-04-12T17:13:57.20588+00:00","Browse the complete unDraw collection of open-source illustrations. Find and customize the perfect illustration for your next project or website.","Illustrations | unDraw","https:\u002F\u002Fundraw.co\u002Fillustrations","\u002Fog_images\u002Fillustrations-or-undraw-1776014037297.png","'asset':25 'brows':3 'collect':7 'complet':5 'custom':15 'find':13 'illustr':1,12,18 'next':21 'open':10 'open-sourc':9 'perfect':17 'project':22 'sourc':11 'undraw':2,6 'websit':24",{"id":402,"created_at":403,"description":404,"title":405,"url":406,"image":407,"tag":130,"fts":408,"type":22},158,"2026-04-12T17:12:59.232116+00:00","Generate beautiful Open Graph images with zero effort.","imgsrc","https:\u002F\u002Fimgsrc.io\u002F","\u002Fog_images\u002Fimgsrc-1776013979249.png","'beauti':3 'effort':9 'generat':2 'graph':5 'imag':6 'imgsrc':1 'open':4 'tool':10 'zero':8",{"id":410,"created_at":411,"description":156,"title":412,"url":413,"image":414,"tag":48,"fts":415,"type":22},187,"2026-04-12T18:30:23.713675+00:00","Josh W. Comeau","https:\u002F\u002Fwww.joshwcomeau.com\u002F","\u002Fog_images\u002Fjosh-w-comeau-1776018623730.png","'anim':12 'comeau':3 'css':11 'develop':7 'focus':8 'friend':4 'josh':1 'portfolio':15 'react':10 'tutori':5 'w':2",{"id":417,"created_at":418,"description":419,"title":420,"url":421,"image":422,"tag":20,"fts":423,"type":22},167,"2026-04-12T17:14:36.829754+00:00","Lenis is the leading smooth scroll library for the web. Lightweight, performant, and accessible — used by top agencies and developers worldwide.","Lenis – Smooth Scroll","https:\u002F\u002Fwww.lenis.dev\u002F","\u002Fog_images\u002Flenis-smooth-scroll-1776014076845.png","'access':17 'agenc':21 'develop':23 'lead':7 'leni':1,4 'librari':10 'lightweight':14 'perform':15 'scroll':3,9 'smooth':2,8 'top':20 'use':18 'web':13 'webdev':25 'worldwid':24",{"id":425,"created_at":426,"description":427,"title":428,"url":429,"image":430,"tag":431,"fts":432,"type":22},196,"2026-04-12T18:42:05.774463+00:00","LOST PIXELS features generative art, short films, drawings, and digital art created by James Merrill.","Lostpixels.io","https:\u002F\u002Flostpixels.io\u002F","\u002Fog_images\u002Flostpixelsio-1776019325809.jpg","Art","'art':6,12,17 'creat':13 'digit':11 'draw':9 'featur':4 'film':8 'generat':5 'jame':15 'lost':2 'lostpixels.io':1 'merril':16 'pixel':3 'short':7",{"id":434,"created_at":435,"description":121,"title":436,"url":437,"image":121,"tag":20,"fts":438,"type":22},174,"2026-04-12T17:15:46.539076+00:00","Magic of CSS — Adam Schwartz","https:\u002F\u002Fadamschwartz.co\u002Fmagic-of-css\u002F","'adam':4 'css':3 'magic':1 'schwartz':5 'webdev':6",{"id":440,"created_at":441,"description":121,"title":442,"url":443,"image":121,"tag":20,"fts":444,"type":22},207,"2026-04-12T18:44:05.252179+00:00","maska v3 docs","https:\u002F\u002Fbeholdr.github.io\u002Fmaska\u002Fv3","'doc':3 'maska':1 'v3':2 'webdev':4",{"id":446,"created_at":447,"description":448,"title":449,"url":450,"image":451,"tag":90,"fts":452,"type":22},131,"2026-04-12T17:07:37.335143+00:00","Two variable, open source fonts from GitHub.","Mona Sans & Hubot Sans","https:\u002F\u002Fgithub.com\u002Fmona-sans","\u002Fog_images\u002Fmona-sans-and-hubot-sans-1776013657349.png","'font':9 'github':11 'hubot':3 'mona':1 'open':7 'san':2,4 'sourc':8 'two':5 'typographi':12 'variabl':6",{"id":454,"created_at":455,"description":456,"title":457,"url":458,"image":459,"tag":20,"fts":460,"type":22},162,"2026-04-12T17:13:37.128982+00:00","This application masks text and email addresses to deter web scrapers from retrieving them, using obfuscation techniques.","Obfuscator - Spegal.Dev","https:\u002F\u002Fobfuscator.spegal.dev\u002F","\u002Fog_images\u002Fobfuscator-spegaldev-1776014017171.png","'address':9 'applic':4 'deter':11 'email':8 'mask':5 'obfusc':1,18 'retriev':15 'scraper':13 'spegal.dev':2 'techniqu':19 'text':6 'use':17 'web':12 'webdev':20",{"id":462,"created_at":463,"description":464,"title":465,"url":466,"image":467,"tag":39,"fts":468,"type":22},134,"2026-04-12T17:08:07.014574+00:00","One Page Love is a One Page website design gallery showcasing the best Single Page websites, templates and resources.","One Page Love — One Page Website Inspiration and Templates","https:\u002F\u002Fonepagelove.com\u002F","\u002Fog_images\u002Fone-page-love-one-page-website-inspiration-and-templates-1776013687030.jpg","'best':22 'design':18 'galleri':19 'inspir':7 'love':3,12 'one':1,4,10,15 'page':2,5,11,16,24 'resourc':28 'showcas':20 'singl':23 'templat':9,26 'ui\u002Fux':29 'websit':6,17,25",{"id":470,"created_at":471,"description":472,"title":473,"url":474,"image":475,"tag":20,"fts":476,"type":22},142,"2026-04-12T17:09:36.978985+00:00","A gateway to our galaxy of JavaScript utilities, libraries, and tools created to empower developers.","Packages · UnJS","https:\u002F\u002Funjs.io\u002Fpackages","\u002Fog_images\u002Fpackages-unjs-1776013776993.png","'creat':14 'develop':17 'empow':16 'galaxi':7 'gateway':4 'javascript':9 'librari':11 'packag':1 'tool':13 'unj':2 'util':10 'webdev':18",{"id":478,"created_at":479,"description":480,"title":481,"url":482,"image":483,"tag":20,"fts":484,"type":31},257,"2026-04-16T14:49:04.129283+00:00","JavaScript runs in a single-threaded environment with an event loop, an architecture that is very easy to reason about. It's a continuous loop executing incoming work. Synchronous work runs immediately; asynchronous work runs when there is no synchronous work to left to perform. This design implies that performing synchronous work is a Big Deal: for every continuous moment it runs, the event loop cannot perform any work -- none!","Practical Guide To Not Blocking The Event Loop","https:\u002F\u002Fwww.bbss.dev\u002Fposts\u002Feventloop\u002F","\u002Fog_images\u002Fpractical-guide-to-not-blocking-the-event-loop-1776350944363.png","'architectur':22 'asynchron':42 'big':64 'block':5 'cannot':75 'continu':33,68 'deal':65 'design':56 'easi':26 'environ':16 'event':7,19,73 'everi':67 'execut':35 'guid':2 'immedi':41 'impli':57 'incom':36 'javascript':9 'left':52 'loop':8,20,34,74 'moment':69 'none':79 'perform':54,59,76 'practic':1 'reason':28 'run':10,40,44,71 'singl':14 'single-thread':13 'synchron':38,49,60 'thread':15 'webdev':80 'work':37,39,43,50,61,78",{"id":486,"created_at":487,"description":488,"title":489,"url":490,"image":121,"tag":130,"fts":491,"type":22},198,"2026-04-12T18:42:25.412824+00:00","The notes app that feels like texting","Prism","https:\u002F\u002Fprism.you\u002F","'app':4 'feel':6 'like':7 'note':3 'prism':1 'text':8 'tool':9",{"id":493,"created_at":494,"description":495,"title":496,"url":497,"image":498,"tag":20,"fts":499,"type":22},199,"2026-04-12T18:42:35.567891+00:00","The majority of us are a bunch of self taught people with rather spotty knowledge and that's fine! Kilian (also self taught) is here to share some of the computer science fundamentals you probably are missing with the aim to improve your code in the long term.","Programming principles for self taught front-end developers","https:\u002F\u002Fpiccalil.li\u002Fblog\u002Fprogramming-principles-for-self-taught-front-end-developers\u002F","\u002Fog_images\u002Fprogramming-principles-for-self-taught-front-end-developers-1776019357663.png","'aim':49 'also':30 'bunch':16 'code':53 'comput':40 'develop':9 'end':8 'fine':28 'front':7 'front-end':6 'fundament':42 'improv':51 'kilian':29 'knowledg':24 'long':56 'major':11 'miss':46 'peopl':20 'principl':2 'probabl':44 'program':1 'rather':22 'scienc':41 'self':4,18,31 'share':36 'spotti':23 'taught':5,19,32 'term':57 'us':13 'webdev':58",{"id":501,"created_at":502,"description":503,"title":504,"url":505,"image":506,"tag":168,"fts":507,"type":22},184,"2026-04-12T18:29:56.152287+00:00","Amit's guide to math, algorithms, and code for hexagonal grids","Red Blob Games: Hexagonal Grids","https:\u002F\u002Fwww.redblobgames.com\u002Fgrids\u002Fhexagons\u002F","\u002Fog_images\u002Fred-blob-games-hexagonal-grids-1776018596202.jpg","'algorithm':11 'amit':6 'blob':2 'code':13,17 'game':3 'grid':5,16 'guid':8 'hexagon':4,15 'math':10 'red':1",{"id":509,"created_at":510,"description":511,"title":512,"url":513,"image":514,"tag":20,"fts":515,"type":22},143,"2026-04-12T17:09:46.874914+00:00","An open-source library with unstyled, primitive components, accompanied by a variety of examples & use cases ready to be integrated into your projects.","Reka","https:\u002F\u002Freka-ui.com\u002F","\u002Fog_images\u002Freka-1776013786889.jpg","'accompani':11 'case':18 'compon':10 'exampl':16 'integr':22 'librari':6 'open':4 'open-sourc':3 'primit':9 'project':25 'readi':19 'reka':1 'sourc':5 'unstyl':8 'use':17 'varieti':14 'webdev':26",{"id":517,"created_at":518,"description":519,"title":520,"url":521,"image":522,"tag":20,"fts":523,"type":22},166,"2026-04-12T17:14:27.646617+00:00","Rough.js is a light weight javascript library that lets you draw graphics with a hand-drawn, sketchy, appearance.","Rough.js","https:\u002F\u002Froughjs.com\u002F","\u002Fog_images\u002Froughjs-1776014067683.png","'appear':20 'draw':12 'drawn':18 'graphic':13 'hand':17 'hand-drawn':16 'javascript':7 'let':10 'librari':8 'light':5 'rough.js':1,2 'sketchi':19 'webdev':21 'weight':6",{"id":525,"created_at":526,"description":121,"title":527,"url":528,"image":529,"tag":20,"fts":530,"type":22},137,"2026-04-12T17:08:47.003825+00:00","Secure coding in JavaScript - Stack Overflow","https:\u002F\u002Fstackoverflow.blog\u002F2025\u002F10\u002F15\u002Fsecure-coding-in-javascript\u002F","\u002Fog_images\u002Fsecure-coding-in-javascript-stack-overflow-1776013727021.jpg","'code':2 'javascript':4 'overflow':6 'secur':1 'stack':5 'webdev':7",{"id":532,"created_at":533,"description":534,"title":535,"url":536,"image":537,"tag":431,"fts":538,"type":31},259,"2026-04-16T15:12:33.65311+00:00","Create beautiful flowing art with Silk.","Silk – Interactive Generative Art","http:\u002F\u002Fweavesilk.com\u002F","\u002Fog_images\u002Fsilk-interactive-generative-art-1776352354072.png","'art':4,8,11 'beauti':6 'creat':5 'flow':7 'generat':3 'interact':2 'silk':1,10",{"id":540,"created_at":541,"description":542,"title":543,"url":544,"image":545,"tag":20,"fts":546,"type":22},138,"2026-04-12T17:08:57.18144+00:00","Eliminate prop drilling in Vue apps using Composition API, Provide\u002FInject, and Pinia. Learn when to use each approach with practical examples.","Solving Prop Drilling in Vue: Modern State Management Strategies | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fsolving-prop-drilling-in-vue\u002F","\u002Fog_images\u002Fsolving-prop-drilling-in-vue-modern-state-management-strategies-or-alexopdev-1776013737198.png","'alexop.dev':10 'api':19 'app':16 'approach':28 'composit':18 'drill':3,13 'elimin':11 'exampl':31 'learn':23 'manag':8 'modern':6 'pinia':22 'practic':30 'prop':2,12 'provide\u002Finject':20 'solv':1 'state':7 'strategi':9 'use':17,26 'vue':5,15 'webdev':32",{"id":548,"created_at":549,"description":550,"title":551,"url":552,"image":553,"tag":431,"fts":554,"type":22},160,"2026-04-12T17:13:17.828428+00:00","We create beautiful expressions through programming and deliver the best possible experiences.","Stable Fluids with three.js | mofu","https:\u002F\u002Fmofu-dev.com\u002Fen\u002Fblog\u002Fstable-fluids\u002F","\u002Fog_images\u002Fstable-fluids-with-threejs-or-mofu-1776013997844.png","'art':18 'beauti':8 'best':15 'creat':7 'deliv':13 'experi':17 'express':9 'fluid':2 'mofu':5 'possibl':16 'program':11 'stabl':1 'three.js':4",{"id":556,"created_at":557,"description":558,"title":559,"url":560,"image":561,"tag":20,"fts":562,"type":22},106,"2026-04-12T17:03:17.407952+00:00","A simple JavaScript tool for converting any layout you have to drag-to-swap layout","Swapy, a simple JavaScript tool for converting any layout you have to drag-to-swap layout","https:\u002F\u002Fswapy.tahazsh.com\u002F","\u002Fog_images\u002Fswapy-a-simple-javascript-tool-for-converting-any-layout-you-have-to-drag-to-swap-layout-1776013397450.png","'convert':7,23 'drag':14,30 'drag-to-swap':13,29 'javascript':4,20 'layout':9,17,25,33 'simpl':3,19 'swap':16,32 'swapi':1 'tool':5,21 'webdev':34",{"id":564,"created_at":565,"description":566,"title":567,"url":568,"image":569,"tag":168,"fts":570,"type":31},256,"2026-04-15T13:51:11.907782+00:00","Modern extension to classic 2003 article by Joel Spolsky","The Absolute Minimum Every Software Developer Must Know About Unicode in 2023 (Still No Excuses!)","https:\u002F\u002Ftonsky.me\u002Fblog\u002Funicode\u002F","\u002Fog_images\u002Fthe-absolute-minimum-every-software-developer-must-know-about-unicode-in-2023-still-no-excuses-1776261077430.png","'2003':20 '2023':12 'absolut':2 'articl':21 'classic':19 'code':25 'develop':6 'everi':4 'excus':15 'extens':17 'joel':23 'know':8 'minimum':3 'modern':16 'must':7 'softwar':5 'spolski':24 'still':13 'unicod':10",{"id":572,"created_at":573,"description":121,"title":574,"url":575,"image":121,"tag":90,"fts":576,"type":22},108,"2026-04-12T17:03:36.99807+00:00","The Monospace Web","https:\u002F\u002Fowickstrom.github.io\u002Fthe-monospace-web\u002F","'monospac':2 'typographi':4 'web':3",{"id":578,"created_at":579,"description":121,"title":580,"url":581,"image":582,"tag":39,"fts":583,"type":22},105,"2026-04-12T17:03:07.894237+00:00","The Oatmeal - Comics by Matthew Inman","https:\u002F\u002Ftheoatmeal.com\u002F","\u002Fog_images\u002Fthe-oatmeal-comics-by-matthew-inman-1776013387920.png","'comic':3 'inman':6 'matthew':5 'oatmeal':2 'ui\u002Fux':7",{"id":585,"created_at":586,"description":121,"title":587,"url":588,"image":121,"tag":20,"fts":589,"type":22},140,"2026-04-12T17:09:17.103633+00:00","TypeGPU – Type-safe WebGPU toolkit","https:\u002F\u002Fdocs.swmansion.com\u002FTypeGPU\u002F","'safe':4 'toolkit':6 'type':3 'type-saf':2 'typegpu':1 'webdev':7 'webgpu':5",{"id":591,"created_at":592,"description":593,"title":594,"url":595,"image":596,"tag":90,"fts":597,"type":22},141,"2026-04-12T17:09:27.443877+00:00","Generate modular type scales and design tokens instantly. Preview in real layouts, tune line-height, and export clean CSS\u002FJSON for your design system.","Typescale AI - Typography Scale & Design Tokens Generator","https:\u002F\u002Ftypescale.ai\u002F","\u002Fog_images\u002Ftypescale-ai-typography-scale-and-design-tokens-generator-1776013767457.png","'ai':2 'clean':26 'css\u002Fjson':27 'design':5,13,30 'export':25 'generat':7,8 'height':23 'instant':15 'layout':19 'line':22 'line-height':21 'modular':9 'preview':16 'real':18 'scale':4,11 'system':31 'token':6,14 'tune':20 'type':10 'typescal':1 'typographi':3,32",{"id":599,"created_at":600,"description":601,"title":602,"url":603,"image":604,"tag":20,"fts":605,"type":22},145,"2026-04-12T17:10:16.968294+00:00","Most Vue developers work exclusively with the traditional browser DOM renderer—but Vue 3’s flexible...","Using Vue’s Custom Renderer API to Build Interfaces Beyond the DOM","https:\u002F\u002Fdev.to\u002Fjacobandrewsky\u002Fusing-vues-custom-renderer-api-to-build-interfaces-beyond-the-dom-1jjg","\u002Fog_images\u002Fusing-vues-custom-renderer-api-to-build-interfaces-beyond-the-dom-1776013816985.png","'3':26 'api':6 'beyond':10 'browser':21 'build':8 'custom':4 'develop':15 'dom':12,22 'exclus':17 'flexibl':28 'interfac':9 'render':5,23 'tradit':20 'use':1 'vue':2,14,25 'webdev':29 'work':16",{"id":607,"created_at":608,"description":609,"title":610,"url":611,"image":612,"tag":20,"fts":613,"type":22},146,"2026-04-12T17:10:27.195511+00:00","🍪 Simple cross-browser cookie-consent plugin written in vanilla js.. Latest version: 3.1.0, last published: a year ago. Start using vanilla-cookieconsent in your project by running `npm i vanilla-cookieconsent`. There are 76 other projects in the npm registry using vanilla-cookieconsent.","vanilla-cookieconsent","https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fvanilla-cookieconsent","\u002Fog_images\u002Fvanilla-cookieconsent-1776013827223.png","'..':16 '3.1.0':19 '76':42 'ago':24 'browser':7 'consent':10 'cooki':9 'cookie-cons':8 'cookiecons':3,29,39,52 'cross':6 'cross-brows':5 'js':15 'last':20 'latest':17 'npm':35,47 'plugin':11 'project':32,44 'publish':21 'registri':48 'run':34 'simpl':4 'start':25 'use':26,49 'vanilla':2,14,28,38,51 'vanilla-cookiecons':1,27,37,50 'version':18 'webdev':53 'written':12 'year':23",{"id":615,"created_at":616,"description":121,"title":617,"url":618,"image":121,"tag":39,"fts":619,"type":22},155,"2026-04-12T17:12:26.831994+00:00","Visual design rules you can safely follow every time","https:\u002F\u002Fanthonyhobday.com\u002Fsideprojects\u002Fsaferules\u002F","'design':2 'everi':8 'follow':7 'rule':3 'safe':6 'time':9 'ui\u002Fux':10 'visual':1",{"id":621,"created_at":622,"description":623,"title":624,"url":625,"image":626,"tag":20,"fts":627,"type":22},148,"2026-04-12T17:10:48.048024+00:00","a fast vite compression plugin. Latest version: 2.5.3, last published: 22 days ago. Start using vite-plugin-compression2 in your project by running `npm i vite-plugin-compression2`. There are 24 other projects in the npm registry using vite-plugin-compression2.","vite-plugin-compression2","https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fvite-plugin-compression2","\u002Fog_images\u002Fvite-plugin-compression2-1776013848076.png","'2.5.3':12 '22':15 '24':37 'ago':17 'compress':8 'compression2':4,23,34,48 'day':16 'fast':6 'last':13 'latest':10 'npm':29,42 'plugin':3,9,22,33,47 'project':26,39 'publish':14 'registri':43 'run':28 'start':18 'use':19,44 'version':11 'vite':2,7,21,32,46 'vite-plugin-compression2':1,20,31,45 'webdev':49",{"id":629,"created_at":630,"description":631,"title":632,"url":633,"image":634,"tag":20,"fts":635,"type":22},149,"2026-04-12T17:10:56.847803+00:00","Master Vue accessibility with our comprehensive guide. Learn 8 crucial steps to create inclusive, WCAG-compliant web applications that work for all users.","Vue Accessibility Blueprint: 8 Steps | alexop.dev","https:\u002F\u002Falexop.dev\u002Fposts\u002Fvue-accessibility-blueprint-8-steps\u002F","\u002Fog_images\u002Fvue-accessibility-blueprint-8-steps-or-alexopdev-1776013856865.png","'8':4,15 'access':2,9 'alexop.dev':6 'applic':25 'blueprint':3 'compliant':23 'comprehens':12 'creat':19 'crucial':16 'guid':13 'inclus':20 'learn':14 'master':7 'step':5,17 'user':30 'vue':1,8 'wcag':22 'wcag-compli':21 'web':24 'webdev':31 'work':27",{"id":637,"created_at":638,"description":121,"title":639,"url":640,"image":121,"tag":20,"fts":641,"type":22},202,"2026-04-12T18:43:15.11187+00:00","vue-command","https:\u002F\u002Fndabap.github.io\u002Fvue-command\u002F","'command':3 'vue':2 'vue-command':1 'webdev':4",{"id":643,"created_at":644,"description":645,"title":646,"url":647,"image":648,"tag":20,"fts":649,"type":22},208,"2026-04-12T18:44:16.65431+00:00","Easily measure performance metrics in JavaScript. Latest version: 5.2.0, last published: 18 days ago. Start using web-vitals in your project by running `npm i web-vitals`. There are 18774 other projects in the npm registry using web-vitals.","web-vitals","https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fweb-vitals","\u002Fog_images\u002Fweb-vitals-1776019456855.png","'18':15 '18774':35 '5.2.0':12 'ago':17 'day':16 'easili':4 'javascript':9 'last':13 'latest':10 'measur':5 'metric':7 'npm':28,40 'perform':6 'project':25,37 'publish':14 'registri':41 'run':27 'start':18 'use':19,42 'version':11 'vital':3,22,32,45 'web':2,21,31,44 'web-vit':1,20,30,43 'webdev':46",{"id":651,"created_at":652,"description":121,"title":653,"url":654,"image":121,"tag":130,"fts":655,"type":22},203,"2026-04-12T18:43:25.373559+00:00","Wheel","https:\u002F\u002Fhihayk.github.io\u002Fwheel\u002F","'tool':2 'wheel':1",{"id":657,"created_at":658,"description":659,"title":660,"url":661,"image":662,"tag":20,"fts":663,"type":22},164,"2026-04-12T17:14:07.505362+00:00","Round, flat, designer-friendly pseudo-3D engine for canvas and SVG","Zdog","https:\u002F\u002Fzzz.dog\u002F","\u002Fog_images\u002Fzdog-1776014047529.png","'3d':9 'canva':12 'design':5 'designer-friend':4 'engin':10 'flat':3 'friend':6 'pseudo':8 'pseudo-3d':7 'round':2 'svg':14 'webdev':15 'zdog':1",1780068965475]