see this code in action<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"The following is a guest post by Damon Bauer, who tackles a pretty common web developer job: offering user image uploads. I’d hesitate to call it easy, but with the help of some powerful tools that do a lot of the heavy lifting, this job has gotten a heck of a lot easier than it […]<\/p>\n","protected":false},"author":248328,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"sig_custom_text":"","sig_image_type":"featured-image","sig_custom_image":0,"sig_is_disabled":false,"inline_featured_image":false,"c2c_always_allow_admin_comments":false,"footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":[]},"categories":[4],"tags":[806,585,557],"jetpack_publicize_connections":[],"acf":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":359708,"url":"https:\/\/css-tricks.com\/new-age-dam-apis-to-simplify-your-media-workflows\/","url_meta":{"origin":244310,"position":0},"title":"New Age DAM APIs to Simplify Your Media Workflows","date":"December 30, 2021","format":false,"excerpt":"High-velocity, online businesses produce multiple digital assets like banners, images, videos, PDFs, etc., to promote their businesses online. For such businesses, Digital Asset Management (DAM) solutions are essential. These solutions help centrally store, manage, organize, search and track digital assets. Having a central repository of assets helps in the faster\u2026","rel":"","context":"In "Sponsored"","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2021\/12\/CSS-tricks.jpg?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":340716,"url":"https:\/\/css-tricks.com\/the-humble-img-element-and-core-web-vitals\/","url_meta":{"origin":244310,"position":1},"title":"The Humble `img` Element And Core Web Vitals","date":"May 17, 2021","format":false,"excerpt":"Addy Osmani on images in HTML: The humble\u00a0\u00a0element has gained some superpowers over the years. Given how central it is to image optimization on the web, let\u2019s catch up on what it can do and how it can help improve user experience and the\u00a0Core Web Vitals. Addy does a good\u2026","rel":"","context":"In "Link"","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2021\/05\/11-humble-img-element-and-core-web-vitals.png?fit=1200%2C736&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":365579,"url":"https:\/\/css-tricks.com\/useful-tools-for-creating-avif-images\/","url_meta":{"origin":244310,"position":2},"title":"Useful Tools for Creating AVIF Images","date":"May 9, 2022","format":false,"excerpt":"AVIF (AV1 Image File Format) is a modern image file format specification for storing images that offer a much more significant file reduction when compared to other formats like JPG, JPEG, PNG, and WebP. Version 1.0.0 of the AVIF specification was finalized in February 2019 and released by Alliance for\u2026","rel":"","context":"In "Article"","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2022\/05\/avif-logo.png?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":342257,"url":"https:\/\/css-tricks.com\/start-serving-optimized-images-in-vue\/","url_meta":{"origin":244310,"position":3},"title":"Start Serving Optimized Images in Vue","date":"June 17, 2021","format":false,"excerpt":"Images have become extremely important to the effectiveness of websites. They speak a 1000 words, attract attention, and stimulate emotions. However, web performance is also a growing problem for most websites. And images are at the heart of many web performance issues. According to HTTP Archive, images are at least\u2026","rel":"","context":"In "Sponsored"","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2021\/06\/imageengine_host.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":320540,"url":"https:\/\/css-tricks.com\/pre-caching-image-with-react-suspense\/","url_meta":{"origin":244310,"position":4},"title":"Pre-Caching Images with React Suspense","date":"September 21, 2020","format":false,"excerpt":"Suspense is an exciting, upcoming feature of React that will enable developers to easily allow their components to delay rendering until they\u2019re \u201cready,\u201d leading to a much smoother user experience. \"Ready,\" in this context, can mean a number of things. For example, your data loading utility can tie into Suspense,\u2026","rel":"","context":"In "Article"","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2020\/09\/react-suspense.png?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":305332,"url":"https:\/\/css-tricks.com\/add-beautiful-images-with-the-unsplash-api\/","url_meta":{"origin":244310,"position":5},"title":"Add Beautiful Images with the Unsplash API","date":"March 26, 2020","format":false,"excerpt":"Perhaps you know Unsplash? I'd wager it's the most popular stock photography site out there for two big reasons: Every photo on there is pretty darn niceEvery photo is entirely free even for commercial use. You don't have to ask permission or even credit it (although that's appreciated). Here's something\u2026","rel":"","context":"In "Sponsored"","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/css-tricks.com\/wp-content\/uploads\/2020\/03\/cover.jpg?fit=1200%2C600&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]}],"featured_media_src_url":null,"_links":{"self":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts\/244310"}],"collection":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/users\/248328"}],"replies":[{"embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/comments?post=244310"}],"version-history":[{"count":6,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts\/244310\/revisions"}],"predecessor-version":[{"id":280947,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/posts\/244310\/revisions\/280947"}],"wp:attachment":[{"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/media?parent=244310"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/categories?post=244310"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/css-tricks.com\/wp-json\/wp\/v2\/tags?post=244310"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}