osmosfeed-template/index.html
2021-05-27 01:01:14 +00:00

1083 lines
No EOL
66 KiB
HTML
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.

<!DOCTYPE html>
<html lang="en">
<head>
<title>osmos::feed</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="robots" content="noindex, nofollow" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="shortcut icon" type="image/x-icon" href="favicon.ico" />
<link rel="alternate" type="application/rss+xml" title="osmos::feed" href="feed.atom" />
<link href="index.css" rel="stylesheet" />
<!-- %before-head-end.html% -->
</head>
<body>
<!-- %after-body-begin.html% -->
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-26">2021-05-26</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://css-tricks.com">CSS-Tricks</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Awesome Standalone (Web Components)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/awesome-standalone-web-components/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(3 min)</span>
<span>In his last An Event Apart talk, Dave made a point that its really only just about right now that Web Components are becoming a practical choice for production web development. For example, it has only been about a year …
The post Awesome Standalone (Web Components) appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Links on Web Components</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/links-on-web-components/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(2 min)</span>
<span>How we use Web Components at GitHub — Kristján Oddsson talks about how GitHub is using web components. I remember they were very early adopters, and it says here they released a component in 2014! Now theyve got a
The post Links on Web Components appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">A Thorough Analysis of CSS-in-JS</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/a-thorough-analysis-of-css-in-js/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(11 min)</span>
<span>Wondering whats even more challenging than choosing a JavaScript framework? You guessed it: choosing a CSS-in-JS solution. Why? Because there are more than 50 libraries out there, each of them offering a unique set of features.
We tested 10 different …
The post A Thorough Analysis of CSS-in-JS appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.9.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.9.0">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Added: experimental support for iTunes podcast feed: Demo | Source. With this new release, you can render an audio control to play the mp3 file and display iTunes episode duration. It is &quot;experimental&quot; due to these caveats:
This feature is currently only available through custom template.
iTunes has no strict format requirement for duration. The unit is most likely seconds but can be &quot;hh:mm:ss&quot; or &quot;mm:ss&quot; for some sources. A future version may expose a human readable string to the template.
No image support yet. Some shows might have disabled CORS or use a relative URL for image, which forces osmosfeed to download the image during build. A future version may support it.
You can&#x27;t republish the podcast in the feed output. Supporting this goes beyond the scope of the project at the moment.
Fixed: the articles in template data were not sorted.
Thank you @Zenigata</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.freecodecamp.org/news">freeCodeCamp.org</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Giphy API Tutorial How to Generate Animated Text GIFs with ReactJS</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/giphy-api-tutorial/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>In this tutorial you will create an app that generates dynamic animated text using Giphy&#x27;s API with ReactJS. After that I&#x27;ll go over some of the other API features Giphy provides that you can use to make other interesting projects. You can find the code for the tutorial here. Video</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">How to Contribute to Open Source Projects A Beginner&#x27;s Guide</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/how-to-contribute-to-open-source-projects-beginners-guide/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(8 min)</span>
<span>If you&#x27;re a developer, you&#x27;ve probably come across the term &quot;open source.&quot; If you&#x27;ve ever wondered what it&#x27;s all about and how to contribute, you are in exactly the right place. I put aside all my fears about how and what to contribute during Hacktoberfest 2020, and made</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Learn Basic Terraform Syntax in 20 minutes</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/terraform-syntax-for-beginners/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(13 min)</span>
<span>In this article, I&#x27;ll give you a brief overview of the configuration syntax of Terraform. Terraform&#x27;s docs provide the most comprehensive look at its syntax. But this article should serve as a condensed quick start introduction that&#x27;ll give new users a simplified overview. We&#x27;ll focus on the basic structures without</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">How to Build a GraphQL API Using Laravel</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/build-a-graphql-api-using-laravel/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(10 min)</span>
<span>In this article, I&#x27;ll walk you through how to set up your own GraphQL API using PHP and Laravel. Two years ago, I started working professionally as a backend developer. And I was very intimidated by all the technology I didn&#x27;t yet know. Words like Docker, Kubernetes, and GraphQL seemed</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">How to Build Super Mario Bros, Zelda, and Space Invaders with Kaboom.js</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/how-to-build-mario-zelda-and-space-invaders-with-kaboom-js/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(4 min)</span>
<span>In this video course I show you how to build three popular games using the latest game development library for JavaScript called Kaboom.js. This course is exciting for two reasons: First of all, I am going to be introducing a new technology designed especially for game development in JavaScript.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Accessible SVGs: Perfect Patterns For Screen Reader Users</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/accessible-svg-patterns-comparison/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(5 min)</span>
<span>Discover which SVG patterns we should avoid and which patterns are the most inclusive when comparing different combinations of OSs, browsers, and screen readers.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-25">2021-05-25</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://css-tricks.com">CSS-Tricks</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">What I Learned Building a Word Game App With Nuxt on Google Play</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/what-i-learned-building-a-word-game-app-with-nuxt-on-google-play/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(25 min)</span>
<span>I fell in love with coding the moment I created my first CSS :hover effect. Years later, that initial bite into interactivity on the web led me to a new goal: making a game.
Table of contents
Whats the game
The post What I Learned Building a Word Game App With Nuxt on Google Play appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Creating Powerful Websites with Serverless-Driven CMS Development</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/creating-powerful-websites-with-serverless-driven-cms-development/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(5 min)</span>
<span>Choosing the right tools to build a website for your organization is essential, but it can be tough to find the right fit. Simple site builders like Wix and Squarespace are easy for marketers to use, but severely limit developers …
The post Creating Powerful Websites with Serverless-Driven CMS Development appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.freecodecamp.org/news">freeCodeCamp.org</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Keep Calm and Hack The Box Valentine</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/keep-calm-and-hack-the-box-valentine/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>Walkthrough for Hack The Box Valentine machine</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">How to Use React-Hook-Form to Build Beautiful Forms with Chakra UI</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/how-to-use-react-hook-form-with-chakra-ui/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>In HTML, its the default behavior for forms to redirect to a new page whenever they&#x27;re submitted. So in order to provide dynamic functionality, React uses a strategy called controlled components. If you have recently gone through a React course, you probably didn&#x27;t like this part, because there are</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Web Design Best Practices for New Developers How to Create Portfolio-Worthy Work</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/web-design-best-practices-for-new-developers/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>If you&#x27;re a beginner developer, it can be difficult to find ways to use your limited knowledge to support yourself. And at the same time, you won&#x27;t be able to hone your skills if you aren&#x27;t using them full time. It&#x27;s a precarious spot that I remember being in when</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">How to Use Node Environment Variables with a DotEnv File for Node.js and npm</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/how-to-use-node-environment-variables-with-a-dotenv-file-for-node-js-and-npm/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(2 min)</span>
<span>Environment variables are variables that are set outside of a program, often through a cloud provider or operating system. In Node, environment variables are a great way to securely and conveniently configure things that don&#x27;t change often, like URLs, authentication keys, and passwords. How to Create Environment VariablesEnvironment variables are</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Keep Calm and Hack The Box Nibbles</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.freecodecamp.org/news/keep-calm-and-hack-the-box-nibbles/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>Walkthrough for Hack The Box Nibbles machine</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">A Guide To Undoing Mistakes With Git (Part 2)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/undoing-mistakes-git-part2/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>Mistakes. These cruel villains do not even stop at the beautiful world of software development. But although we cannot avoid making mistakes, we can learn to undo them! This post will show the right tools for your daily work with Git.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">A New Way To Reduce Font Loading Impact: CSS Font Descriptors</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/reduce-font-loading-impact-css-descriptors/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>Web fonts are often terrible for web performance and none of the font loading strategies are particularly effective to address that. Upcoming font options may finally deliver on the promise of making it easier to align fallback fonts to the final fonts.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-24">2021-05-24</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://css-tricks.com">CSS-Tricks</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Links on Performance</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/links-on-performance/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(3 min)</span>
<span>Making GitHubs new homepage fast and performant — Tobias Ahlin describes how the scrolling effects are done more performantly thanks to IntersectionObserver and the fact that it avoids the use of methods that trigger reflows, like getBoundingClientRect. Also,
The post Links on Performance appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">proxy-www</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/justjavac/proxy-www">
<div class="article-summary-box-inner">
<span class="article-reading-time">(2 min)</span>
<span>I like a good trick. What if… a URL was… a promise… that fetched said URL?
www.codepen.io.then((response) &#x3D;{
console.log(response);
});
Thats what @justjavac did with JavaScript Proxys. A clever trick, that. Dont @ me about the practicality. Trick…
The post proxy-www appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Wrangling Control Over PDFs with the Adobe PDF Embed API</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/wrangling-control-over-pdfs-with-the-adobe-pdf-embed-api/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(10 min)</span>
<span>By our last estimate, there are now more PDFs in the world than atoms in the universe (not verified by outside sources) so chances are, from time to time, youre going to run into a PDF document or two. Browsers …
The post Wrangling Control Over PDFs with the Adobe PDF Embed API appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">CSS Container Queries: Use-Cases And Migration Strategies</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/css-container-queries-use-cases-migration-strategies/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(9 min)</span>
<span>CSS Container queries bring media queries closer to the target elements themselves and enables them to adapt to virtually any given container or layout. In this article, were going to cover CSS container query basics and how to use them today with progressive enhancement or polyfills.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-23">2021-05-23</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.8.1</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.8.1">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Fixed: UnhandledPromiseRejectionWarning: Error: At least one option must be a string</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.8.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.8.0">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Changed: Smart summary truncation. When there is no dedicated summary (only Atom feed has it, and many sites don&#x27;t use it) from the source, we check if the content/description (Both Atom and RSS) field is long enough to be full text. If so, it will be truncated into a &quot;pseudo&quot; summary. If not, we assume the source used the content field as summary, and it will be displayed in full length.
Thank you: @LooperXX.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-21">2021-05-21</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://css-tricks.com">CSS-Tricks</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Should DevTools teach the CSS cascade?</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.stefanjudis.com/blog/should-devtools-teach-the-css-cascade/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(4 min)</span>
<span>Stefan Judis, two days before I mouthed off about using (X, X, X, X) for talking about specificity, has a great blog post not only using that format, but advocating that browser DevTools should show us that value by …
The post Should DevTools teach the CSS cascade? appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Svelte for the Experienced React Dev</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/svelte-for-the-experienced-react-dev/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(12 min)</span>
<span>This post is an accelerated introduction to Svelte from the point of view of someone with solid experience with React. Ill provide a quick introduction, and then shift focus to things like state management and DOM interoperability, among other things. …
The post Svelte for the Experienced React Dev appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">CSS Hell</summary>
<a class="article-summary-link article-summary-box-outer" href="https://csshell.dev/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Collection of common CSS mistakes, and how to fix them
From Stefánia Péter.
Clever idea for a site! Some of them are little mind-twisters that could bite you, and some of them are honing in on best practices that …
The post CSS Hell appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Building A Rich Text Editor (WYSIWYG) From Scratch</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/building-wysiwyg-editor-javascript-slatejs/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(31 min)</span>
<span>Lets build a rich text, WYSIWYG-editor that supports rich text, images, links and some nuanced features from word processing apps. We will use SlateJS to build the shell of the editor and then add a toolbar and custom configurations.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-20">2021-05-20</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://css-tricks.com">CSS-Tricks</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">JSON in CSS</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/json-in-css/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(4 min)</span>
<span>Jonathan Neal tweeted a heck of a little CSS trick the other day, putting JSON inside CSS and plucking it out with JavaScript. Valid values for custom properties are quite liberal! So this looks for a CSS rule (e.g. a …
The post JSON in CSS appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Learn CSS!</summary>
<a class="article-summary-link article-summary-box-outer" href="https://web.dev/learn/css/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(3 min)</span>
<span>Ooo look at this mighty SEO flex from Google: Learn CSS! Well deservedthis is great content. Twenty-three chapters taking you through all the fundamentals of CSS with extra content, like relevant podcasts, interactive examples, and even quizzes to …
The post Learn CSS! appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Can We Create a “Resize Hack” With Container Queries?</summary>
<a class="article-summary-link article-summary-box-outer" href="https://css-tricks.com/can-we-create-a-resize-hack-with-container-queries/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>If you follow new developments in CSS, youve likely heard of the impending arrival of container queries. Were going to look at the basics here, but if youd like another look, check out Unas “Next Gen CSS: @container” article. …
The post Can We Create a “Resize Hack” With Container Queries? appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">fit-content and fit-content()</summary>
<a class="article-summary-link article-summary-box-outer" href="https://www.quirksmode.org/blog/archives/2021/04/fitcontent_and.html">
<div class="article-summary-box-inner">
<span class="article-reading-time">(4 min)</span>
<span>Heres some hardcore deep-dive CSS nerdery from PPK. If you can wrap your mind around min-content (the smallest an element can be based on the content it contains) and max-content (the largest the content of an element can push it) …
The post fit-content and fit-content() appeared first on CSS-Tricks.
You can support CSS-Tricks by being an MVP Supporter.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Boost Your Skills Online: Smashing Workshops On Front-End And Design</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/new-online-workshops-front-end-ux/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(3 min)</span>
<span>Front-end and design are remarkably complex these days. Thats why we invite kind, smart folks from the community to run 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.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">How To Implement Authentication In Next.js With Auth0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/implement-authentication-nextjs-auth0/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>A step-by-step tutorial on adding authentication and authorization to your Next.js apps, with Auth0. Well be using a Next.js SDK to connect our application to the Auth0 API and will create the dynamic API route for React.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-19">2021-05-19</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Frustrating Design Patterns: Mega-Dropdown Hover Menus</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/frustrating-design-patterns-mega-dropdown-hover-menus/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(17 min)</span>
<span>Everything to keep in mind when designing and building a mega-dropdown, common pitfalls, hover entry/exit delays, trajectory triangle technique and SVG path exit areas.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-18">2021-05-18</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">How To Create, Edit And Animate SVGs All In One Place With SVGator 3.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/create-edit-animate-svg-svgator3/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>Today, we are taking a closer look at [SVGator 3.0](https://www.svgator.com/?utm_source&#x3D;article&amp;utm_medium&#x3D;smashingmag&amp;utm_campaign&#x3D;svgator3_smashing), a new major release of the popular SVG application that lets you create, edit and animate SVG files and make the best out of what SVG has to offer — from start to finish.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Smashing Podcast Episode 37 With Adam Argyle: What Is VisBug?</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/smashing-podcast-episode-37/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(31 min)</span>
<span>In this episode, were talking about VisBug. What is it, and how is it different from the array of options already found in Chrome DevTools? Drew McLellan talks to its creator Adam Argyle to find out.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-17">2021-05-17</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.7.2</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.2">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>⚠ Deprecated: To accommodate the monorepo setup, the node version in all templates/demos/examples has changed from 14 to 16. This is not a breaking change as our compile target is still node 14, and node 16 is backward compatible. We still recommend you start using node-version: &quot;16&quot; in your .github/workflows/update-feed.yaml today to get the performance/security improvements from the newer node. See example
Chore: Reorganize to monorepo with npm workspace.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">How We Improved Our Core Web Vitals (Case Study)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/core-web-vitals-case-study/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(10 min)</span>
<span>Googles “Page Experience Update” will start rolling out in June. At first, sites that meet Core Web Vitals thresholds will have a minor ranking advantage in mobile search for all browsers. Search is important to any business, and this is the story of how Beau Hartshorne and his team at Instant Domain Search improved their Core Web Vitals scores.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-16">2021-05-16</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.7.1</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.1">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Fixed: static files were unnecessarily copied for custom templates.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.7.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.0">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Added: templating system. Demo | Source | Docs
Chore: rendering logic refactoring. Adopting functional paradigm.
Thank you @tianheg, @onnyyonn</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-14">2021-05-14</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Tree-Shaking: A Reference Guide</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/tree-shaking-reference-guide/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(8 min)</span>
<span>“Tree-shaking” is a must-have performance optimization when bundling JavaScript. In this article, we dive deeper on how exactly it works and how specs and practice intertwine to make bundles leaner and more performant. Plus, youll get a tree-shaking checklist to use for your projects.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-12">2021-05-12</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Frustrating Design Patterns That Need Fixing: Birthday Picker</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/frustrating-design-patterns-birthday-picker/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(12 min)</span>
<span>In this new series of articles on UX, we take a closer look at some frustrating design patterns and explore better alternatives, along with plenty of examples to keep in mind when building or designing one. Lets start with an infamous birthday picker.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Little Smashing Stories</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/little-smashing-stories/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>Today marks the day we sent out our 300th edition of the Smashing Newsletter. This article is a little celebration in which we share little Smashing stories from people working behind the scenes.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-11">2021-05-11</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">A Primer On CSS Container Queries</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/complete-guide-css-container-queries/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(16 min)</span>
<span>A prototype of the long-awaited CSS container queries has landed in Chrome Canary and is available for experimentation. Lets look at what problem is being solved, learn how container queries work, and see how they compare with and complement existing CSS features for layout.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">The Conference Platform We Use For Our Online Events: Hopin</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/smashingconf-conference-platform-hopin/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>At the beginning of 2020, the SmashingConf team was ready for a new year. We had so many things that excited us. New speakers, new workshops, new cities, new attendees, new experiences. And as we all know, 2020 had other ideas. With so many people working from home, we thought we would bring our [Smashing workshops](https://smashingconf.com/online-workshops/) from our home offices to yours — but how?</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-10">2021-05-10</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.4.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Added: Basic theme customization: Demo | Source | Docs.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.6.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.6.0">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Added: Link from the title of a subscription to its website.
Added: Store feedUrl and siteUrl for each source in cache.
Added: Semantic element () for timestamp on the UI.
Added: Semantic API for theming the default template. Demo | Source | Docs
Changed: Moved feed metadata from article level to feed level in cache.
Fixed: Any html-like text was stripped from title. Fixed with encoded text.
Removed: href for each source in cache. The value was never used so it&#x27;s not a breaking change.</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Get Started With React By Building A Whac-A-Mole Game</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/get-started-whac-a-mole-react-game/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(21 min)</span>
<span>Want to get started with React but struggling to find a good place to start? This article should have you covered. Well focus on some of the main concepts of React and then well be building a game from scratch!</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-08">2021-05-08</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.5.0</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.5.0">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Added: Atom feed generator
Added: Customizable site title
Added: Copy all files from static directory to the root of the site.
Changed: Favicon, css, and js assets now existing at site root level.
Chore: Excluded testing files from repo.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-07">2021-05-07</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">How To Organize Product-Related Assets And Collaborate Better</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/product-records-organization-collaboration-best-practices/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(14 min)</span>
<span>How do you organize your Google Drive assets? How do you name your Dropbox Paper documents? How do you deal with comments? Lets get it right.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-06">2021-05-06</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Improving The Performance Of Shopify Themes (Case Study)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/improving-performance-shopify-themes-case-study/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(9 min)</span>
<span>When dealing with themes for large platforms and CMS, legacy issues often become a bottleneck. In this article, Carson Shold discusses how his team improved the performance and organization of their Shopify themes, and improved maintainability along the way.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-05">2021-05-05</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://github.com/osmoscraft/osmosfeed/releases">Release notes from osmosfeed</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">v1.3.1</summary>
<a class="article-summary-link article-summary-box-outer" href="https://github.com/osmoscraft/osmosfeed/releases/tag/v1.3.1">
<div class="article-summary-box-inner">
<span class="article-reading-time">(1 min)</span>
<span>Fixed: Avoid crwalers.
Fixed: Error logging from XML parser.
Fixed: Typo in docs.
Thank you: @dym-sh, @tabokie, @cheese1</span>
</div>
</a>
</details>
</article>
</section>
</li>
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Reducing HTML Payload With Next.js (Case Study)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/reduce-data-sent-client-nextjs/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(8 min)</span>
<span>This article showcases a case study of Bookaways landing page performance. Well see how taking care of the props we send to Next.js pages can make loading times and Web Vitals better.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-04">2021-05-04</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">A Guide To Undoing Mistakes With Git (Part 1)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/undoing-mistakes-git-part1/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(6 min)</span>
<span>No matter how experienced you are, mistakes are an inevitable part of software development. But we can learn to repair them! And this is what we&#x27;ll be looking at in this two-part series: how to undo mistakes using Git.</span>
</div>
</a>
</details>
</article>
<article>
<details class="article-expander">
<summary class="article-expander__title">Smashing Podcast Episode 36 With Miriam Suzanne: What Is The Future Of CSS?</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/smashing-podcast-episode-36/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(23 min)</span>
<span>In this episode, were starting our new season of the Smashing Podcast with a look at the future of CSS. What new specs will be landing in browsers soon? Drew McLellan talks to expert Miriam Suzanne to find out.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-05-03">2021-05-03</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">The Evolution Of Jamstack</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/05/evolution-jamstack/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>Web-oriented databases, frameworks like Nuxt and Next.js, and even frameworkless approaches are evolving the Jamstack, but the core principles are more powerful than ever.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-04-30">2021-04-30</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">May Is In The Air (2021 Wallpapers Edition)</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/04/desktop-wallpaper-calendars-may-2021/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>Do you need a little inspiration boost? Well, then our new collection of wallpapers is for you. Designed with love by the community for the community, the wallpapers are available with and without a calendar for May 2021.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-04-29">2021-04-29</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">The Humble &#x60;&#x60; Element And Core Web Vitals</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/04/humble-img-element-core-web-vitals/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(18 min)</span>
<span>Images have also been a key part of the web. They communicate ideas instantly, but they are also a lot heavier than text to load. This means that its essential to get loading and displaying them right, if you want to give your users a fantastic first impression. An excerpt from [Addy&#x27;s new book](https://www.smashingmagazine.com/2021/04/image-optimization-pre-release/) (also, check a [free PDF preview](http://provide.smashingmagazine.com/eBooks/image-optimization-sample-chapter.pdf)).</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<section class="daily-content">
<h2 class="daily-heading"><time datatime="2021-04-28">2021-04-28</time></h2>
<ul class="sources card">
<li class="source">
<section>
<h3 class="source-name"><a class="source-name__link" href="https://www.smashingmagazine.com/">Articles on Smashing Magazine — For Web Designers And Developers</a></h3>
<section class="articles-per-source">
<article>
<details class="article-expander">
<summary class="article-expander__title">Meet Image Optimization, A New Smashing Book By Addy Osmani</summary>
<a class="article-summary-link article-summary-box-outer" href="https://smashingmagazine.com/2021/04/image-optimization-pre-release/">
<div class="article-summary-box-inner">
<span class="article-reading-time">(7 min)</span>
<span>The cat is out! 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 practical modern guide to delivering high-quality images on the web with the best performance.</span>
</div>
</a>
</details>
</article>
</section>
</li>
</ul>
</section>
<footer>
<time id="build-timestamp" datetime="2021-05-27T01:01:14.275Z">2021-05-27T01:01:14.275Z</time>
<span><a class="footer-link" href="https://github.com/osmoscraft/osmosfeed">osmosfeed 1.9.0</a></span>
</footer>
<script src="index.js"></script>
<!-- %before-body-end.html% -->
</body>
</html>