osmosfeed-template/feed.atom
2021-07-01 00:41:22 +00:00

610 lines
No EOL
44 KiB
XML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<id>urn:2021-07-01T00:41:21.708Z</id>
<title>osmos::feed</title>
<updated>2021-07-01T00:41:21.708Z</updated>
<generator>osmosfeed 1.11.0</generator>
<link rel="alternate" href="index.html"/>
<entry>
<title type="html"><![CDATA[How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?]]></title>
<id>https://css-tricks.com/?p=343224</id>
<link href="https://css-tricks.com/how-do-you-make-a-layout-with-pictures-down-one-side-of-a-page-matched-up-with-paragraphs-on-the-other-side/"/>
<updated>2021-06-30T20:36:52.000Z</updated>
<summary type="html"><![CDATA[I got this exact question in an email the other day, and I thought it would make a nice blog post because of how wonderfully satisfying this is to do in CSS these days. Plus we can sprinkle in polish …
The post How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side? appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Learn the CSS Box-Shadow Property by Coding a Beautiful Button ✨]]></title>
<id>6063b8d69618b008528a9d79</id>
<link href="https://www.freecodecamp.org/news/css-box-shadow-property-with-examples/"/>
<updated>2021-06-30T18:49:49.000Z</updated>
<summary type="html"><![CDATA[Today we're gonna learn how to use CSS's box-shadow property to make beautiful website components. Along the way, we'll create a button and get hands-on experience using this property. Let's get started. 🎖️ Table of Contents Why you should use the CSS box-shadow propertyThe syntax of the box-shadow propertyHow to make]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[When a Click is Not Just a Click]]></title>
<id>https://css-tricks.com/?p=343064</id>
<link href="https://css-tricks.com/when-a-click-is-not-just-a-click/"/>
<updated>2021-06-30T14:45:42.000Z</updated>
<summary type="html"><![CDATA[The click event is quite simple and easy to use; you listen for the event and run code when the event is fired. It works on just about every HTML element there is, a core feature of the DOM API.…
The post When a Click is Not Just a Click appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Travis Almand</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Fixing a Bug in Low-Resolution Mode]]></title>
<id>https://css-tricks.com/?p=343182</id>
<link href="https://css-tricks.com/fixing-a-bug-in-low-resolution-mode/"/>
<updated>2021-06-30T14:44:54.000Z</updated>
<summary type="html"><![CDATA[I was working on a bug ticket the other day where it was reported that an icon was sitting low in a button. Just not aligned like it should be. I had to go on a little journey to figure …
The post Fixing a Bug in Low-Resolution Mode appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[What is The C Programming Language? A Tutorial for Beginners]]></title>
<id>6055c55b687d62084bf68804</id>
<link href="https://www.freecodecamp.org/news/what-is-the-c-programming-language-beginner-tutorial/"/>
<updated>2021-06-30T14:25:53.000Z</updated>
<summary type="html"><![CDATA[This tutorial is an overview of basic concepts of the C programming language. It goes over the history of the language, why and where it is used, the compilation process, and some very basic programming concepts that are common in most popular programming languages. It is not a complete guide]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Learn React Router]]></title>
<id>60d5ea736e1a1407b6b0bc8d</id>
<link href="https://www.freecodecamp.org/news/learn-react-router/"/>
<updated>2021-06-30T14:01:01.000Z</updated>
<summary type="html"><![CDATA[React Router is commonly used to make different routes for pages in React Applications. We just released a crash course on the freeCodeCamp.org YouTube channel that will teach you how to create routes in your React applications. Piyush Agarwal developed this course. Piyush is a prolific course creator on]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[The State Of Web Workers In 2021]]></title>
<id>https://smashingmagazine.com/2021/06/web-workers-2021/</id>
<link href="https://smashingmagazine.com/2021/06/web-workers-2021/"/>
<updated>2021-06-30T12:00:00.000Z</updated>
<summary type="html"><![CDATA[The web is single-threaded. This makes it increasingly hard to write smooth and responsive apps. Workers have a bad rep, but can be an important and useful tool in any web developer's toolbelt for these kinds of problems. Lets get up to speed on Workers on the Web!]]></summary>
<author>
<name>hello@smashingmagazine.com (Surma)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[The Many Shades Of July (2021 Desktop Wallpapers Edition)]]></title>
<id>https://smashingmagazine.com/2021/06/desktop-wallpaper-calendars-july-2021/</id>
<link href="https://smashingmagazine.com/2021/06/desktop-wallpaper-calendars-july-2021/"/>
<updated>2021-06-30T09:30:00.000Z</updated>
<summary type="html"><![CDATA[Lets welcome July with some fresh desktop wallpapers. Designed by artists and designers from around the world, they are available with and without a calendar. Enjoy!]]></summary>
<author>
<name>hello@smashingmagazine.com (Cosima Mielke)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[What does `font: 110%/1.4 system-ui` mean?]]></title>
<id>https://css-tricks.com/?p=343470</id>
<link href="https://css-tricks.com/what-does-font-110-1-4-system-ui-mean/"/>
<updated>2021-06-29T22:43:50.000Z</updated>
<summary type="html"><![CDATA[I use this line, or one like it, in a lot of quick demos. Not that its not a production-worthy line of code—I just tend to be a bit more explicit on bigger projects.
html {
font: 110%/1.4 system-ui;
}
The post What does `font: 110%/1.4 system-ui` mean? appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Chromium spelling and grammar features]]></title>
<id>https://css-tricks.com/?p=343260</id>
<link href="https://www.azabani.com/2021/05/17/spelling-grammar.html"/>
<updated>2021-06-29T20:25:00.000Z</updated>
<summary type="html"><![CDATA[Delan Azabani digs into the (hopefully) coming soon ::spelling-error and ::grammar-error pseudo selectors in CSS. Design control is always nice. Hey, if we can style scrollbars and style selected text, why not this?
The squiggly lines that indicate possible spelling or grammar errors
The post Chromium spelling and grammar features appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Coding Interview Backtracking Problems Crash Course The Only One You&#x27;ll Ever Need]]></title>
<id>60db519527f80207bcdbb6fa</id>
<link href="https://www.freecodecamp.org/news/coding-interview-backtracking-problems-crash-course/"/>
<updated>2021-06-29T20:00:32.000Z</updated>
<summary type="html"><![CDATA[Whether you are new to coding interviews or are already familiar with the concept of backtracking, this is the crash course for you. We will learn about an all-purpose coding template and apply it to two LeetCode hard problems. Ready to crunch your next coding interview? Let's go!]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Linux List Processes How to Check Running Processes]]></title>
<id>604b8c6ea7946308b7687683</id>
<link href="https://www.freecodecamp.org/news/linux-list-processes-how-to-check-running-processes/"/>
<updated>2021-06-29T19:47:13.000Z</updated>
<summary type="html"><![CDATA[Every day, developers use various applications and run commands in the terminal. These applications can include a browser, code editor, terminal, video conferencing app, or music player. For each of these software applications that you open or commands you run, it creates a process or task. One beautiful feature of]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How to Use timedelta Objects in Python to Work with Dates]]></title>
<id>60daf29027f80207bcdbb3fe</id>
<link href="https://www.freecodecamp.org/news/how-to-use-timedelta-objects-in-python/"/>
<updated>2021-06-29T18:25:52.000Z</updated>
<summary type="html"><![CDATA[Why do we need the timedelta object?When you're working with dates and times in Python, you'll often use the datetime module. In this post, we'll see how we can use the timedelta object in the datetime module. It denotes a span of time and can help when we need]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[:nth-child Between Two Fixed Indexes]]></title>
<id>https://css-tricks.com/?p=342736</id>
<link href="https://css-tricks.com/nth-child-between-two-fixed-indexes/"/>
<updated>2021-06-29T14:37:21.000Z</updated>
<summary type="html"><![CDATA[I needed to select some elements between two fixed indexes the other daylike literally the second through fifth elements. Ironically, I have a whole post on “Useful :nth-child Recipes” but this wasnt one of them.
The answer, it …
The post :nth-child Between Two Fixed Indexes appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Microsoft Security, Compliance, and Identity Fundamentals (SC-900) Pass the Exam With This Free 3.5 Hour Course]]></title>
<id>60d76f6f6e1a1407b6b0c521</id>
<link href="https://www.freecodecamp.org/news/microsoft-security-compliance-certification-sc-900/"/>
<updated>2021-06-29T13:24:44.000Z</updated>
<summary type="html"><![CDATA[What is the Microsoft Security, Compliance, and Identity Fundamentals?The Microsoft Security, Compliance and Identity Fundamentals Certification is an essential entry-level certification into Azure and Microsoft Security. In recent years we've seen a significant shift in the work environment where companies allow employees to work from home. The increase of]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Breaking Down Bulky Builds With Netlify And Next.js]]></title>
<id>https://smashingmagazine.com/2021/06/breaking-down-bulky-builds-netlify-nextjs/</id>
<link href="https://smashingmagazine.com/2021/06/breaking-down-bulky-builds-netlify-nextjs/"/>
<updated>2021-06-29T11:00:00.000Z</updated>
<summary type="html"><![CDATA[Static Generation is great for performance — until the app gets too big and build-times go through the roof. Today, well have a look at how Netlifys fresh On-Demand Builders can fix that.]]></summary>
<author>
<name>hello@smashingmagazine.com (Átila Fassina)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Smashing Podcast Episode 40 Mike Cavaliere: What Is Chakra UI For React?]]></title>
<id>https://smashingmagazine.com/2021/06/smashing-podcast-episode-40/</id>
<link href="https://smashingmagazine.com/2021/06/smashing-podcast-episode-40/"/>
<updated>2021-06-29T05:30:00.000Z</updated>
<summary type="html"><![CDATA[In this episode, were talking about Chakra UI. What is it and how can it help with your React projects? Drew McLellan talks to expert Mike Cavaliere to find out.]]></summary>
<author>
<name>hello@smashingmagazine.com (Drew McLellan)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[System *Things]]></title>
<id>https://css-tricks.com/?p=343040</id>
<link href="https://css-tricks.com/system-things/"/>
<updated>2021-06-28T22:14:22.000Z</updated>
<summary type="html"><![CDATA[I think were all largely aware of colors like this:
color: OldLace;
background: rebeccapurple;
I guess youd just call those “named colors” in CSS.
Those arent the only kind of named colors there are though. Some of them are …
The post System *Things appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Working around the viewport-based fluid typography bug in Safari]]></title>
<id>https://css-tricks.com/?p=343139</id>
<link href="https://www.sarasoueidan.com/blog/safari-fluid-typography-bug-fix/"/>
<updated>2021-06-28T21:17:26.000Z</updated>
<summary type="html"><![CDATA[Sara digs into a bug I happened to have mentioned back in 2012 where fluid type didnt resize when the browser window resized. Back then, it affected Chrome 20 and Safari 6, but the bug still persists today in Safari …
The post Working around the viewport-based fluid typography bug in Safari appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How to Securely Access Secret API keys using Netlify Functions in a React App]]></title>
<id>60d61acc6e1a1407b6b0bd46</id>
<link href="https://www.freecodecamp.org/news/how-to-access-secret-api-keys-using-netlify-functions-in-a-react-app/"/>
<updated>2021-06-28T21:17:02.000Z</updated>
<summary type="html"><![CDATA[In this article, you will learn how to securely access secret API keys using Netlify functions in a React app. Netlify provides rich features that help you easily deploy Single Page Applications built using frameworks like React, Vue and Angular among others. This takes away the burden of coding and]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How to Deploy an NLP Model with FastAPI]]></title>
<id>60d9766b6e1a1407b6b0cb4f</id>
<link href="https://www.freecodecamp.org/news/how-to-deploy-an-nlp-model-with-fastapi/"/>
<updated>2021-06-28T20:35:12.000Z</updated>
<summary type="html"><![CDATA[If you're working with Natural Language Processing, knowing how to deploy a model is one of the most important skills you'll need to have. Model deployment is the process of integrating your model into an existing production environment. The model will receive input and predict an output for decision-making for]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[What is an IDE in Programming? An IDE Definition for Developers]]></title>
<id>60d07b4578f45307fee80aef</id>
<link href="https://www.freecodecamp.org/news/what-is-an-ide-in-programming-an-ide-definition-for-developers/"/>
<updated>2021-06-28T20:04:28.000Z</updated>
<summary type="html"><![CDATA[Every developer needs a good development enviroment, whether you're into mobile development or web apps or even if you're just learning your first programming language. Just like any beginning developer, when I began to learn coding I needed some guidance on how to get started. And one of the most]]></summary>
<author>
<name>freeCodeCamp.org</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Positioning Overlay Content with CSS Grid]]></title>
<id>https://css-tricks.com/?p=342971</id>
<link href="https://css-tricks.com/positioning-overlay-content-with-css-grid/"/>
<updated>2021-06-28T14:25:33.000Z</updated>
<summary type="html"><![CDATA[Not news to any web developer in 2021: CSS Grid is an incredibly powerful tool for creating complex, distinct two-dimensional modern web layouts.
Recently, I have been experimenting with CSS Grid and alignment properties to create component layouts that …
The post Positioning Overlay Content with CSS Grid appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Ryan Mulligan</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Scaling Organizations Should Consider Building a Website Backed by a CRM Platform]]></title>
<id>https://css-tricks.com/?p=343072</id>
<link href="https://css-tricks.com/scaling-organizations-should-consider-building-a-website-backed-by-a-crm-platform/"/>
<updated>2021-06-28T13:29:00.000Z</updated>
<summary type="html"><![CDATA[To make some terminology clear here:
CMS = Content Management System
CRM = Customer Relationship Management
Both are essentially database-backed systems for managing data. HubSpot is both, and much more. Where a CMS might be very focused on content and …
The post Scaling Organizations Should Consider Building a Website Backed by a CRM Platform appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Creating Custom Emmet Snippets In VS Code]]></title>
<id>https://smashingmagazine.com/2021/06/custom-emmet-snippets-vscode/</id>
<link href="https://smashingmagazine.com/2021/06/custom-emmet-snippets-vscode/"/>
<updated>2021-06-28T10:30:00.000Z</updated>
<summary type="html"><![CDATA[In this article, Manuel explains why Emmet is one of his favorite productivity tools for writing HTML and CSS, and how you can create custom Emmet snippets in Visual Studio Code to help you improve your front-end workflows even more.]]></summary>
<author>
<name>hello@smashingmagazine.com (Manuel Matuzović)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Custom Property Brain Twisters]]></title>
<id>https://css-tricks.com/?p=342718</id>
<link href="https://css-tricks.com/custom-property-brain-twisters/"/>
<updated>2021-06-25T18:39:46.000Z</updated>
<summary type="html"><![CDATA[I am part of that 82% that got the answer to Lea Verou's quiz wrong. Stephen Shaw posted a similar quiz as well and it's a fun exercise sharpen your CSS chops.
The post Custom Property Brain Twisters appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How to Cancel Pending API Requests to Show Correct Data]]></title>
<id>https://css-tricks.com/?p=342911</id>
<link href="https://css-tricks.com/how-to-cancel-pending-api-requests-to-show-correct-data/"/>
<updated>2021-06-25T14:33:33.000Z</updated>
<summary type="html"><![CDATA[I recently had to create a widget in React that fetches data from multiple API endpoints. As the user clicks around, new data is fetched and marshalled into the UI. But it caused some problems.
One problem quickly became evident: …
The post How to Cancel Pending API Requests to Show Correct Data appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Georgi Nikoloff</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Creating A Multi-Author Blog With Next.js]]></title>
<id>https://smashingmagazine.com/2021/06/creating-multi-author-blog-nextjs/</id>
<link href="https://smashingmagazine.com/2021/06/creating-multi-author-blog-nextjs/"/>
<updated>2021-06-25T11:30:00.000Z</updated>
<summary type="html"><![CDATA[This article explains how we can connect different types of content in a Next.js application. With this technique, we can add any kind of one-to-one, one-to-many, or even many-to-many relationship to our projects.]]></summary>
<author>
<name>hello@smashingmagazine.com (Dom Habersack)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How To Run A UX Audit For A Major EdTech Platform (Case Study)]]></title>
<id>https://smashingmagazine.com/2021/06/ux-audit-edtech-platform-case-study/</id>
<link href="https://smashingmagazine.com/2021/06/ux-audit-edtech-platform-case-study/"/>
<updated>2021-06-25T10:00:00.000Z</updated>
<summary type="html"><![CDATA[This article is a case study of how a UX audit affects a UI. It explains how a famous educational platform can be analyzed edX against Jakob Nielsens usability guidelines. To get started, Mark Lankmiller shares all of the criteria and metrics he used for his UX audit.]]></summary>
<author>
<name>hello@smashingmagazine.com (Mark Lankmilier)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Chapter 9: Community]]></title>
<id>https://css-tricks.com/?p=342818</id>
<link href="https://css-tricks.com/chapter-9-community/"/>
<updated>2021-06-24T14:30:11.000Z</updated>
<summary type="html"><![CDATA[In April of 2009, Yahoo! shut down GeoCities. Practically overnight, the once beloved service had its signup page replaced with a vague message announcing its closure.
We have decided to discontinue the process of allowing new customers to sign up
The post Chapter 9: Community appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Jay Hoffmann</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[The Rise Of Design Thinking As A Problem Solving Strategy]]></title>
<id>https://smashingmagazine.com/2021/06/design-thinking-problem-solving-strategy/</id>
<link href="https://smashingmagazine.com/2021/06/design-thinking-problem-solving-strategy/"/>
<updated>2021-06-24T14:00:00.000Z</updated>
<summary type="html"><![CDATA[In the dynamic and unpredictable environments in which we work, even the most carefully crafted solutions can have a short shelf life. When we accept that our work is impermanent and our problem-solving abilities are limited, our goal can shift from delivering full solutions to developing tools that empower our users to adaptively design for themselves.]]></summary>
<author>
<name>hello@smashingmagazine.com (Josh Singer)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[TablesNG — Improvements to table rendering in Chromium]]></title>
<id>https://css-tricks.com/?p=343076</id>
<link href="https://www.bram.us/2021/06/21/tablesng-improvements-to-table-rendering-in-chromium/"/>
<updated>2021-06-23T21:37:14.000Z</updated>
<summary type="html"><![CDATA[When I blogged “Making Tables With Sticky Header and Footers Got a Bit Easier” recently, I mentioned that the “stickiness” improvement was just one of the features that got better for <table>s in Chrome as part of the TablesNG upgrade…
The post TablesNG — Improvements to table rendering in Chromium appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Chris Coyier</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Using Performant Next-Gen Images in CSS with image-set]]></title>
<id>https://css-tricks.com/?p=342750</id>
<link href="https://css-tricks.com/using-performant-next-gen-images-in-css-with-image-set/"/>
<updated>2021-06-23T19:10:54.000Z</updated>
<summary type="html"><![CDATA[The CSS image-set() function has been supported in Chromium-based browsers since 2012 and in Safari since version 6. Support recently landed in Firefox 88. Lets dive in and see what we can and cant do today with image-set().…
The post Using Performant Next-Gen Images in CSS with image-set appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.]]></summary>
<author>
<name>Ollie Williams</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Smashing Online Workshops (July-October 2021)]]></title>
<id>https://smashingmagazine.com/2021/06/new-smashing-online-workshops-frontend-ux-design/</id>
<link href="https://smashingmagazine.com/2021/06/new-smashing-online-workshops-frontend-ux-design/"/>
<updated>2021-06-23T13:30:00.000Z</updated>
<summary type="html"><![CDATA[Frontend and design are remarkably complex these days. Thats why we invite kind, smart folks from the community to run [online workshops](https://smashingconf.com/online-workshops/) for all of us to learn together. And we have new ones coming up, and wed like to kindly welcome you to join in.]]></summary>
<author>
<name>hello@smashingmagazine.com (Iris Lješnjanin)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Automating Screen Reader Testing On macOS Using Auto VO]]></title>
<id>https://smashingmagazine.com/2021/06/automating-screen-reader-testing-macos-autovo/</id>
<link href="https://smashingmagazine.com/2021/06/automating-screen-reader-testing-macos-autovo/"/>
<updated>2021-06-23T09:30:00.000Z</updated>
<summary type="html"><![CDATA[Automated testing is an important part of any software project, including testing for accessibility. There are already tools for linting and integration testing accessibility, but what about end-to-end testing with real assistive technology? Since I hadnt seen this before, I set out to build Auto VO, a driver for the VoiceOver screen reader.]]></summary>
<author>
<name>hello@smashingmagazine.com (Cameron Cundiff)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[v1.11.0]]></title>
<id>https://github.com/osmoscraft/osmosfeed/releases/tag/v1.11.0</id>
<link href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.11.0"/>
<updated>2021-06-23T05:57:59.000Z</updated>
<summary type="html"><![CDATA[Added: support an experimental template for YouTube feed 📺 Demo | Source
Aggregate content from any YouTube channel rss url https://www.youtube.com/feeds/videos.xml?channel_id=<replace_with_channel_id>
Videos are embedded via iframe and loading accelerated by youtube-lite-embed
Ads are reduced thanks to YouTube's policy for embedded videos 🙃
Works on mobile devices with butter smooth horizontal scroll.
Caveat: the template works only with YouTube content. You cannot mix textual RSS feed or other video sources such as Vimeo.
Changed: Default HTML template meta tag adjusted to match convention
Changed: sources in template data is now ordered by last update timestamp (as opposed to alphabetical)
Thank you @PiyushLosalka]]></summary>
<author>
<name>Release notes from osmosfeed</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Designing With Code: A Modern Approach To Design (Development Challenges)]]></title>
<id>https://smashingmagazine.com/2021/06/design-code-modern-approach-development-challenges/</id>
<link href="https://smashingmagazine.com/2021/06/design-code-modern-approach-development-challenges/"/>
<updated>2021-06-22T09:00:00.000Z</updated>
<summary type="html"><![CDATA[After years of innovation in both tools and processes, the struggle between design and development is still real. This article focuses on the best practices for improving the design to development processes and how cutting-edge solutions, such as UXPin powered by Merge technology, can help in facilitating the change.]]></summary>
<author>
<name>hello@smashingmagazine.com (Mikołaj Dobrucki)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Image To Text Conversion With React And Tesseract.js (OCR)]]></title>
<id>https://smashingmagazine.com/2021/06/image-text-conversion-react-tesseract-js-ocr/</id>
<link href="https://smashingmagazine.com/2021/06/image-text-conversion-react-tesseract-js-ocr/"/>
<updated>2021-06-21T14:30:00.000Z</updated>
<summary type="html"><![CDATA[Do you have to process data manually because it is served through images or scanned documents? An image-to-text conversion makes it possible to extract text from images to automate the processing of texts on images, videos, and scanned documents. In this article, we look at how to convert an image to text with React and Tesseract.js(OCR), preprocess images, and deal with the limitations of Tesseract (OCR).]]></summary>
<author>
<name>hello@smashingmagazine.com (Ayobami Ogundiran)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[An Alternative Voice UI To Voice Assistants]]></title>
<id>https://smashingmagazine.com/2021/06/alternative-voice-ui-voice-assistants/</id>
<link href="https://smashingmagazine.com/2021/06/alternative-voice-ui-voice-assistants/"/>
<updated>2021-06-18T15:00:00.000Z</updated>
<summary type="html"><![CDATA[Voice assistants are currently the most popular use case for voice user interfaces. However, due to the bad feedback loop resulting from voice assistants can only solve simple user tasks such as setting an alarm or playing music. In order for voice user interfaces to really break through, feedback to the user must be visual, not auditive.]]></summary>
<author>
<name>hello@smashingmagazine.com (Ottomatias Peura)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Client-Side Routing In Next.js]]></title>
<id>https://smashingmagazine.com/2021/06/client-side-routing-next-js/</id>
<link href="https://smashingmagazine.com/2021/06/client-side-routing-next-js/"/>
<updated>2021-06-18T13:00:00.000Z</updated>
<summary type="html"><![CDATA[Next.js has a file-based routing system in which each page automatically becomes a route based on its file name. This article will guide you through almost everything you need to know about Routing in Next.js and point you in the direction of related topics and concepts.]]></summary>
<author>
<name>hello@smashingmagazine.com (Adebiyi Adedotun)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Your Image Is Probably Not Decorative]]></title>
<id>https://smashingmagazine.com/2021/06/img-alt-attribute-alternate-description-decorative/</id>
<link href="https://smashingmagazine.com/2021/06/img-alt-attribute-alternate-description-decorative/"/>
<updated>2021-06-17T10:30:00.000Z</updated>
<summary type="html"><![CDATA[Image placement on the modern web is highly intentional, helping to communicate the overall purpose of a page or view. This means that nearly every image you declare needs to have an alternate description.]]></summary>
<author>
<name>hello@smashingmagazine.com (Eric Bailey)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[A Complete Guide To Accessibility Tooling]]></title>
<id>https://smashingmagazine.com/2021/06/complete-guide-accessibility-tooling/</id>
<link href="https://smashingmagazine.com/2021/06/complete-guide-accessibility-tooling/"/>
<updated>2021-06-16T10:30:00.000Z</updated>
<summary type="html"><![CDATA[In a new short series of posts, we highlight some of the useful tools and techniques for developers and designers. Recently weve covered HTML Emails and SVG Generators. This time we look into different kinds of tools to help you streamline your accessibility testing process. Dont miss the next one.]]></summary>
<author>
<name>hello@smashingmagazine.com (Nic Chan)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Spinning Up Multiple WordPress Sites Locally With DevKinsta]]></title>
<id>https://smashingmagazine.com/2021/06/multiple-wordpress-sites-locally-devkinsta/</id>
<link href="https://smashingmagazine.com/2021/06/multiple-wordpress-sites-locally-devkinsta/"/>
<updated>2021-06-15T10:15:00.000Z</updated>
<summary type="html"><![CDATA[When developing themes and plugins for WordPress, we need to test them in different environments. How can we create multiple testing sites on our computer, quickly and easily, without having to become a sysadmin?]]></summary>
<author>
<name>hello@smashingmagazine.com (Leonardo Losoviz)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Smashing Podcast Episode 39 With Addy Osmani: Image Optimization]]></title>
<id>https://smashingmagazine.com/2021/06/smashing-podcast-episode-39/</id>
<link href="https://smashingmagazine.com/2021/06/smashing-podcast-episode-39/"/>
<updated>2021-06-15T07:00:00.000Z</updated>
<summary type="html"><![CDATA[In this episode of the Smashing Podcast, were talking about image optimization. What steps should we follow for performant images in 2021? We talk to expert Addy Osmani to find out.]]></summary>
<author>
<name>hello@smashingmagazine.com (Drew McLellan)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[When CSS Isnt Enough: JavaScript Requirements For Accessible Components]]></title>
<id>https://smashingmagazine.com/2021/06/css-javascript-requirements-accessible-components/</id>
<link href="https://smashingmagazine.com/2021/06/css-javascript-requirements-accessible-components/"/>
<updated>2021-06-14T10:30:00.000Z</updated>
<summary type="html"><![CDATA[Spoiler alert: tooltips, modals, tabs, carousels, and dropdown menus are some of the user interface components that require more than CSS. To ensure accessibility of your interface, JavaScript is a necessary addition to accomplish focus management, respond to keyboard events, and toggle ARIA attributes.]]></summary>
<author>
<name>hello@smashingmagazine.com (Stephanie Eckles)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Web Design Done Well: Making Use Of Audio]]></title>
<id>https://smashingmagazine.com/2021/06/web-design-done-well-audio/</id>
<link href="https://smashingmagazine.com/2021/06/web-design-done-well-audio/"/>
<updated>2021-06-11T15:00:00.000Z</updated>
<summary type="html"><![CDATA[Design often revolves around visuals, but the other senses deserve love too. In this article, we tune in to audio features that are making sites sing.]]></summary>
<author>
<name>hello@smashingmagazine.com (Frederick OBrien)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Useful Front-End Boilerplates And Starter Kits]]></title>
<id>https://smashingmagazine.com/2021/06/useful-frontend-boilerplates-starter-kits/</id>
<link href="https://smashingmagazine.com/2021/06/useful-frontend-boilerplates-starter-kits/"/>
<updated>2021-06-10T15:00:00.000Z</updated>
<summary type="html"><![CDATA[We dont need to write everything from scratch every single time. With boilerplates and starter kits, we can set up our projects faster, and get to work immediately.]]></summary>
<author>
<name>hello@smashingmagazine.com (Cosima Mielke)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Three Front-End Auditing Tools I Discovered Recently]]></title>
<id>https://smashingmagazine.com/2021/06/three-frontend-auditing-tools/</id>
<link href="https://smashingmagazine.com/2021/06/three-frontend-auditing-tools/"/>
<updated>2021-06-10T11:15:00.000Z</updated>
<summary type="html"><![CDATA[Building a faster website can be a rocket task these days. There are so many things to consider, so its challenging to get everything right. Here are some less-known tools that might help you get there.]]></summary>
<author>
<name>hello@smashingmagazine.com (Stefan Judis)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Meet <code>:has</code>, A Native CSS Parent Selector (And More)]]></title>
<id>https://smashingmagazine.com/2021/06/has-native-css-parent-selector/</id>
<link href="https://smashingmagazine.com/2021/06/has-native-css-parent-selector/"/>
<updated>2021-06-09T10:30:00.000Z</updated>
<summary type="html"><![CDATA[What makes relational selector one of the most requested features and how are we, as developers, working around not having it? In this article, were going to check the early spec of the :has selector, and see how it should improve the CSS workflow once its released.]]></summary>
<author>
<name>hello@smashingmagazine.com (Adrian Bece)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[From AVIF to WebP: A New Smashing Book By Addy Osmani]]></title>
<id>https://smashingmagazine.com/2021/06/image-optimization-book-release/</id>
<link href="https://smashingmagazine.com/2021/06/image-optimization-book-release/"/>
<updated>2021-06-08T12:00:00.000Z</updated>
<summary type="html"><![CDATA[Its here! For the last year, weve been working with Addy Osmani on a new Smashing Book all around image optimization. And now its here. Meet “Image Optimization”, our deep-dive guide to understand how to deliver high-quality images on the web fast.]]></summary>
<author>
<name>hello@smashingmagazine.com (Vitaly Friedman)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How To Build A Geocoding App In Vue.js Using Mapbox]]></title>
<id>https://smashingmagazine.com/2021/06/building-geocoding-app-vue-mapbox/</id>
<link href="https://smashingmagazine.com/2021/06/building-geocoding-app-vue-mapbox/"/>
<updated>2021-06-07T11:00:00.000Z</updated>
<summary type="html"><![CDATA[In this guide, well be taking a general look at the concepts of forward geocoding and reverse geocoding, and will build a mini-app that applies these concepts to display specific locations, using Mapbox and Vue.js 2.6.11 to achieve this.]]></summary>
<author>
<name>hello@smashingmagazine.com (Prince Chukwudire)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Getting Started With Webpack]]></title>
<id>https://smashingmagazine.com/2021/06/getting-started-webpack/</id>
<link href="https://smashingmagazine.com/2021/06/getting-started-webpack/"/>
<updated>2021-06-04T10:00:00.000Z</updated>
<summary type="html"><![CDATA[Modern browsers provide good support for JavaScript modules, but module bundlers such as webpack stay a critical part of the JavaScript toolchain. Lets take a deep dive into what webpack is and how to use it in your development workflow.]]></summary>
<author>
<name>hello@smashingmagazine.com (Nwani Victory)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Managing Shared State In Vue 3]]></title>
<id>https://smashingmagazine.com/2021/06/managing-shared-state-vue3/</id>
<link href="https://smashingmagazine.com/2021/06/managing-shared-state-vue3/"/>
<updated>2021-06-03T10:30:00.000Z</updated>
<summary type="html"><![CDATA[Writing large-scale Vue applications can be a challenge. In this article, Shawn Wildermuth dives into the pros and cons of approaches like factories, shared objects, and using Vuex. He also explains what is coming in Vuex 5.0 that might change how we all use shared state in Vue 3.]]></summary>
<author>
<name>hello@smashingmagazine.com (Shawn Wildermuth)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[How To Fix Cumulative Layout Shift (CLS) Issues]]></title>
<id>https://smashingmagazine.com/2021/06/how-to-fix-cumulative-layout-shift-issues/</id>
<link href="https://smashingmagazine.com/2021/06/how-to-fix-cumulative-layout-shift-issues/"/>
<updated>2021-06-02T12:30:00.000Z</updated>
<summary type="html"><![CDATA[Googles Core Web Vitals initiative has taken the SEO and Web Performance worlds by storm and many sites are busy optimizing their Page Experience to maximize the ranking factor. The Cumulative Layout Shift metric is causing trouble to a lot of sites, so lets have a look at ways of addressing any issues for that metric.]]></summary>
<author>
<name>hello@smashingmagazine.com (Barry Pollard)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Improving The Performance Of An Online Store (Case Study)]]></title>
<id>https://smashingmagazine.com/2021/06/front-end-performance-online-store-jewellerybox/</id>
<link href="https://smashingmagazine.com/2021/06/front-end-performance-online-store-jewellerybox/"/>
<updated>2021-06-02T10:30:00.000Z</updated>
<summary type="html"><![CDATA[Getting a good performance score from Google is hard for any website — but doing so for an online store is even harder. We achieved green scores — even several for mobile. Here is how we did it.]]></summary>
<author>
<name>hello@smashingmagazine.com (Jennifer Brehm)</name>
</author>
</entry>
<entry>
<title type="html"><![CDATA[Smashing Podcast Episode 38 With Ivan Akulov: Why Is My React App Slow?]]></title>
<id>https://smashingmagazine.com/2021/06/smashing-podcast-episode-38/</id>
<link href="https://smashingmagazine.com/2021/06/smashing-podcast-episode-38/"/>
<updated>2021-06-01T14:00:00.000Z</updated>
<summary type="html"><![CDATA[In this episode, were talking about React performance. What factors slow our React apps down, and how can we fix it? Drew McLellan talks to expert Ivan Akulov to find out.]]></summary>
<author>
<name>hello@smashingmagazine.com (Drew McLellan)</name>
</author>
</entry>
</feed>