{ "sources": [ { "title": "Release notes from osmosfeed", "feedUrl": "https://github.com/osmoscraft/osmosfeed/releases.atom", "siteUrl": "https://github.com/osmoscraft/osmosfeed/releases", "articles": [ { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.11.0", "author": null, "description": "Added: support an experimental template for YouTube feed šŸ“ŗ Demo | Source\n\nAggregate content from any YouTube channel rss url https://www.youtube.com/feeds/videos.xml?channel_id=\nVideos are embedded via iframe and loading accelerated by youtube-lite-embed\nAds are reduced thanks to YouTube's policy for embedded videos šŸ™ƒ\nWorks on mobile devices with butter smooth horizontal scroll.\nCaveat: the template works only with YouTube content. You cannot mix textual RSS feed or other video sources such as Vimeo.\nChanged: Default HTML template meta tag adjusted to match convention\nChanged: sources in template data is now ordered by last update timestamp (as opposed to alphabetical)\nThank you @PiyushLosalka", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.11.0", "publishedOn": "2021-06-23T05:57:59.000Z", "wordCount": 370, "title": "v1.11.0" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.10.2", "author": null, "description": "Added: testing and CI/CD workflows", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.10.2", "publishedOn": "2021-06-01T04:39:30.000Z", "wordCount": 263, "title": "v1.10.2" } ] }, { "title": "CSS-Tricks", "feedUrl": "https://css-tricks.com/feed/", "siteUrl": "https://css-tricks.com", "articles": [ { "id": "https://css-tricks.com/?p=342818", "author": "Jay Hoffmann", "description": "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.\nWe have decided to discontinue the process of allowing new customers to sign up \n…\nThe post Chapter 9: Community appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/chapter-9-community/", "publishedOn": "2021-06-24T14:30:11.000Z", "wordCount": 6342, "title": "Chapter 9: Community" }, { "id": "https://css-tricks.com/?p=343076", "author": "Chris Coyier", "description": "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 s in Chrome as part of the TablesNG upgrade…\nThe post TablesNG — Improvements to table rendering in Chromium appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://www.bram.us/2021/06/21/tablesng-improvements-to-table-rendering-in-chromium/", "publishedOn": "2021-06-23T21:37:14.000Z", "wordCount": 1540, "title": "TablesNG — Improvements to table rendering in Chromium" }, { "id": "https://css-tricks.com/?p=342750", "author": "Ollie Williams", "description": "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. Let’s dive in and see what we can and can’t do today with image-set().…\nThe 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.", "link": "https://css-tricks.com/using-performant-next-gen-images-in-css-with-image-set/", "publishedOn": "2021-06-23T19:10:54.000Z", "wordCount": 1257, "title": "Using Performant Next-Gen Images in CSS with image-set" }, { "id": "https://css-tricks.com/?p=342669", "author": "Chris Coyier", "description": "PPK looks at aspect-ratio, a CSS property for layout that, for the most part, does exactly what you would think it does. It’s getting more interesting as it’s behind a flag in Firefox and Safari now, so we’ll have …\nThe post ā€œWeak declarationā€ appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/weak-declaration/", "publishedOn": "2021-06-23T14:27:14.000Z", "wordCount": 704, "title": "ā€œWeak declarationā€" }, { "id": "https://css-tricks.com/?p=342930", "author": "Chris Coyier", "description": "There are four keywords that are valid values for any CSS property (see the title). Of those, day to day, I’d say I see the inherit used the most. Perhaps because it’s been around the longest (I think?) but also …\nThe post inherit, initial, unset, revert appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/inherit-initial-unset-revert/", "publishedOn": "2021-06-22T21:20:20.000Z", "wordCount": 708, "title": "inherit, initial, unset, revert" }, { "id": "https://css-tricks.com/?p=342634", "author": "Geoff Rich", "description": "Svelte fully supports custom elements (e.g. ) without any custom configuration or wrapper components and has a perfect score on Custom Elements Everywhere. However, there are still a few quirks you need to watch out for, especially around …\nThe post Using Custom Elements in Svelte appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/using-custom-elements-in-svelte/", "publishedOn": "2021-06-22T14:37:50.000Z", "wordCount": 3090, "title": "Using Custom Elements in Svelte" }, { "id": "https://css-tricks.com/?p=342925", "author": "Chris Coyier", "description": "I’m not here to raise a shield protecting CSS utility frameworks. I don’t even particularly like the approach, myself, and nothing is above fair criticism. But fair is a key word there. I can’t tell you how many times I’ve …\nThe post If we’re gonna criticize utility-class frameworks, let’s be fair about it appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/if-were-gonna-criticize-utility-class-frameworks-lets-be-fair-about-it/", "publishedOn": "2021-06-22T14:33:41.000Z", "wordCount": 3488, "title": "If we’re gonna criticize utility-class frameworks, let’s be fair about it" }, { "id": "https://css-tricks.com/?p=342887", "author": "Chris Coyier", "description": "Una is calling it the new responsive. A nod to the era we were most certainly in, the era of responsive design. Where responsive design was fluid grids, flexible media, and media queries, the new responsive is those things …\nThe post Are we in a new era of web design? What do we call it? appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://web.dev/new-responsive/", "publishedOn": "2021-06-21T21:22:33.000Z", "wordCount": 2285, "title": "Are we in a new era of web design? What do we call it?" }, { "id": "https://css-tricks.com/?p=342448", "author": "Preethi", "description": "Let’s forego the usual circles and bars we typically see used in charts for more eccentric shapes. With online presentations more and more common today, a quick way to spruce up your web slides and make them stand out is …\nThe post How to Create CSS Charts With Interesting Shapes, Glyphs and Emoji appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/how-to-create-css-charts-with-interesting-shapes-glyphs-and-emoji/", "publishedOn": "2021-06-21T14:32:45.000Z", "wordCount": 1598, "title": "How to Create CSS Charts With Interesting Shapes, Glyphs and Emoji" }, { "id": "https://css-tricks.com/?p=341511", "author": "Carter Li", "description": "The outline property in CSS draws a line around the outside of an element. This is quite similar to the border property, the main exception being that outline isn’t a part of the box model. It is often used for …\nThe post Using the `outline` Property as a Collapsable Border appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/using-the-outline-property-as-a-collapsable-border/", "publishedOn": "2021-06-18T20:38:59.000Z", "wordCount": 1130, "title": "Using the `outline` Property as a Collapsable Border" }, { "id": "https://css-tricks.com/?p=342326", "author": "Chris Coyier", "description": "I studied the fonts of the top 1000 websites. Here’s what I learned. — Michael Li brings the data. San-serif has total dominance. ā€œ[…] it is rare to go below 10px or above 24px.ā€ And poor
always being the \n…\nThe post Links on Typography appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/links-on-typography-2/", "publishedOn": "2021-06-18T13:44:17.000Z", "wordCount": 815, "title": "Links on Typography" }, { "id": "https://css-tricks.com/?p=341948", "author": "Louis Hoebregts", "description": "Clipping and masking have been around for a while now in CSS and even have pretty decent browser support. I recently worked on a project that needed to use a clipping technique for tooltips showing above links in text.\nThose …\nThe post Perfect Tooltips With CSS Clipping and Masking appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/perfect-tooltips-with-css-clipping-and-masking/", "publishedOn": "2021-06-17T14:45:57.000Z", "wordCount": 1691, "title": "Perfect Tooltips With CSS Clipping and Masking" }, { "id": "https://css-tricks.com/?p=342257", "author": "ImageEngine", "description": "Images have become extremely important to the effectiveness of websites. They speak a 1000 words, attract attention, and stimulate emotions.\nHowever, web performance is also a growing problem for most websites. And images are at the heart of many web …\nThe post Start Serving Optimized Images in Vue appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/start-serving-optimized-images-in-vue/", "publishedOn": "2021-06-17T14:38:42.000Z", "wordCount": 1309, "title": "Start Serving Optimized Images in Vue" }, { "id": "https://css-tricks.com/?p=342358", "author": "Chris Coyier", "description": "If you’re abhorred by using inline styles, just move that style to the class attribute! And then make sure you have CSS in place that, ya know, does what it says on the box. \nI've revolutionized CSS. pic.twitter.com/1AWCldyCwP\n— Sam \n\n…\nThe post Inline Styles as Classes (lol) appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/inline-styles-as-classes-lol/", "publishedOn": "2021-06-16T21:11:02.000Z", "wordCount": 1584, "title": "Inline Styles as Classes (lol)" }, { "id": "https://css-tricks.com/?p=342630", "author": "Chris Coyier", "description": "Jim Nielsen: \nIf somebody says a comment isn’t adding any value, I would ask: to whom?\nPersonally, I’ve never liked the advice that writing obvious comments is bad practice—probably because I write obvious comments all the time.\nJim showed …\nThe post Useful and Useless Code Comments appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.", "link": "https://blog.jim-nielsen.com/2021/useful-and-usless-code-comments/", "publishedOn": "2021-06-16T19:08:33.000Z", "wordCount": 870, "title": "Useful and Useless Code Comments" } ] }, { "title": "Articles on Smashing Magazine — For Web Designers And Developers", "feedUrl": "https://www.smashingmagazine.com/feed/", "siteUrl": "https://www.smashingmagazine.com/", "articles": [ { "id": "https://smashingmagazine.com/2021/06/design-thinking-problem-solving-strategy/", "author": "hello@smashingmagazine.com (Josh Singer)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/design-thinking-problem-solving-strategy/", "publishedOn": "2021-06-24T14:00:00.000Z", "wordCount": 4170, "title": "The Rise Of Design Thinking As A Problem Solving Strategy", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/e5ea9274-2ff4-49d8-b259-a5f0904cec77/design-thinking-problem-solving-strategy.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/new-smashing-online-workshops-frontend-ux-design/", "author": "hello@smashingmagazine.com (Iris LjeÅ”njanin)", "description": "Frontend and design are remarkably complex these days. That’s 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 we’d like to kindly welcome you to join in.", "link": "https://smashingmagazine.com/2021/06/new-smashing-online-workshops-frontend-ux-design/", "publishedOn": "2021-06-23T13:30:00.000Z", "wordCount": 947, "title": "Smashing Online Workshops (July-October 2021)", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1a95c729-8b29-4b44-90b0-d38183b367c0/online-workshops-2021-opt.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/06/automating-screen-reader-testing-macos-autovo/", "author": "hello@smashingmagazine.com (Cameron Cundiff)", "description": "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 hadn’t seen this before, I set out to build Auto VO, a driver for the VoiceOver screen reader.", "link": "https://smashingmagazine.com/2021/06/automating-screen-reader-testing-macos-autovo/", "publishedOn": "2021-06-23T09:30:00.000Z", "wordCount": 1391, "title": "Automating Screen Reader Testing On macOS Using Auto VO", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/c81018b9-c45e-4c21-9762-dff84dd2682c/automating-screen-reader-testing-macos-autovo.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/design-code-modern-approach-development-challenges/", "author": "hello@smashingmagazine.com (Mikołaj Dobrucki)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/design-code-modern-approach-development-challenges/", "publishedOn": "2021-06-22T09:00:00.000Z", "wordCount": 2885, "title": "Designing With Code: A Modern Approach To Design (Development Challenges)", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/08546e48-5034-466a-a29c-08ce3827416e/uxpin-ui.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/06/image-text-conversion-react-tesseract-js-ocr/", "author": "hello@smashingmagazine.com (Ayobami Ogundiran)", "description": "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).", "link": "https://smashingmagazine.com/2021/06/image-text-conversion-react-tesseract-js-ocr/", "publishedOn": "2021-06-21T14:30:00.000Z", "wordCount": 5359, "title": "Image To Text Conversion With React And Tesseract.js (OCR)", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/012f3fbe-980a-44fc-b973-a459f6d9bf1a/image-text-conversion-react-tesseract-js-ocr.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/alternative-voice-ui-voice-assistants/", "author": "hello@smashingmagazine.com (Ottomatias Peura)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/alternative-voice-ui-voice-assistants/", "publishedOn": "2021-06-18T15:00:00.000Z", "wordCount": 3415, "title": "An Alternative Voice UI To Voice Assistants", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8ebd2c76-ebe5-4885-be3e-f9acc3608072/alternative-voice-ui-voice-assistants.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/client-side-routing-next-js/", "author": "hello@smashingmagazine.com (Adebiyi Adedotun)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/client-side-routing-next-js/", "publishedOn": "2021-06-18T13:00:00.000Z", "wordCount": 3966, "title": "Client-Side Routing In Next.js", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/a51f6c83-5e1a-4535-b28a-2018310ffc3b/client-side-routing-next-js.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/img-alt-attribute-alternate-description-decorative/", "author": "hello@smashingmagazine.com (Eric Bailey)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/img-alt-attribute-alternate-description-decorative/", "publishedOn": "2021-06-17T10:30:00.000Z", "wordCount": 1638, "title": "Your Image Is Probably Not Decorative", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/95585fe9-52b8-4bd4-adac-a3580ef87b98/img-alt-attribute-alternate-description-decorative.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/complete-guide-accessibility-tooling/", "author": "hello@smashingmagazine.com (Nic Chan)", "description": "In a new short series of posts, we highlight some of the useful tools and techniques for developers and designers. Recently we’ve covered HTML Emails and SVG Generators. This time we look into different kinds of tools to help you streamline your accessibility testing process. Don’t miss the next one.", "link": "https://smashingmagazine.com/2021/06/complete-guide-accessibility-tooling/", "publishedOn": "2021-06-16T10:30:00.000Z", "wordCount": 4105, "title": "A Complete Guide To Accessibility Tooling", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/0e0ea8e6-a4ad-489c-b062-749a22d5e38e/complete-guide-accessibility-tooling.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/multiple-wordpress-sites-locally-devkinsta/", "author": "hello@smashingmagazine.com (Leonardo Losoviz)", "description": "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?", "link": "https://smashingmagazine.com/2021/06/multiple-wordpress-sites-locally-devkinsta/", "publishedOn": "2021-06-15T10:15:00.000Z", "wordCount": 2381, "title": "Spinning Up Multiple WordPress Sites Locally With DevKinsta", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/2798d879-8878-49e3-bc0f-a1b2008210c0/devkinsta-frontpage.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/06/smashing-podcast-episode-39/", "author": "hello@smashingmagazine.com (Drew McLellan)", "description": "In this episode of the Smashing Podcast, we’re talking about image optimization. What steps should we follow for performant images in 2021? We talk to expert Addy Osmani to find out.", "link": "https://smashingmagazine.com/2021/06/smashing-podcast-episode-39/", "publishedOn": "2021-06-15T07:00:00.000Z", "wordCount": 10715, "title": "Smashing Podcast Episode 39 With Addy Osmani: Image Optimization", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/bf1aeccc-a603-4cb3-b716-69bd0c86d33a/smashing-podcast-episode-39.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/css-javascript-requirements-accessible-components/", "author": "hello@smashingmagazine.com (Stephanie Eckles)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/css-javascript-requirements-accessible-components/", "publishedOn": "2021-06-14T10:30:00.000Z", "wordCount": 3672, "title": "When CSS Isn’t Enough: JavaScript Requirements For Accessible Components", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/9982fa1e-806c-4343-9de1-eb804a48451e/css-javascript-requirements-accessible-components.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/web-design-done-well-audio/", "author": "hello@smashingmagazine.com (Frederick O’Brien)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/web-design-done-well-audio/", "publishedOn": "2021-06-11T15:00:00.000Z", "wordCount": 1754, "title": "Web Design Done Well: Making Use Of Audio", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/bf0cbb26-546e-43b7-9b9a-9077259ea84b/making-use-of-audio.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/useful-frontend-boilerplates-starter-kits/", "author": "hello@smashingmagazine.com (Cosima Mielke)", "description": "We don’t 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.", "link": "https://smashingmagazine.com/2021/06/useful-frontend-boilerplates-starter-kits/", "publishedOn": "2021-06-10T15:00:00.000Z", "wordCount": 5113, "title": "Useful Front-End Boilerplates And Starter Kits", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/598e7f3e-9dca-4922-b17d-76089efab46f/25-frontend-boilerplates-starter-kits.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/06/three-frontend-auditing-tools/", "author": "hello@smashingmagazine.com (Stefan Judis)", "description": "Building a faster website can be a rocket task these days. There are so many things to consider, so it’s challenging to get everything right. Here are some less-known tools that might help you get there.", "link": "https://smashingmagazine.com/2021/06/three-frontend-auditing-tools/", "publishedOn": "2021-06-10T11:15:00.000Z", "wordCount": 867, "title": "Three Front-End Auditing Tools I Discovered Recently", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/e21066b1-baa0-4a85-90ee-8074029d0a32/three-frontend-auditing-tools.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/has-native-css-parent-selector/", "author": "hello@smashingmagazine.com (Adrian Bece)", "description": "What makes relational selector one of the most requested features and how are we, as developers, working around not having it? In this article, we’re going to check the early spec of the :has selector, and see how it should improve the CSS workflow once it’s released.", "link": "https://smashingmagazine.com/2021/06/has-native-css-parent-selector/", "publishedOn": "2021-06-09T10:30:00.000Z", "wordCount": 2782, "title": "Meet :has, A Native CSS Parent Selector (And More)", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/89aef48d-9be9-45df-a7f4-775168deb8dd/has-native-css-parent-selector.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/image-optimization-book-release/", "author": "hello@smashingmagazine.com (Vitaly Friedman)", "description": "It’s here! For the last year, we’ve been working with Addy Osmani on a new Smashing Book all around image optimization. And now it’s here. Meet ā€œImage Optimizationā€, our deep-dive guide to understand how to deliver high-quality images on the web fast.", "link": "https://smashingmagazine.com/2021/06/image-optimization-book-release/", "publishedOn": "2021-06-08T12:00:00.000Z", "wordCount": 2347, "title": "From AVIF to WebP: A New Smashing Book By Addy Osmani", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b41ae541-7618-44f2-81cd-cc681c64d0d0/image-optimization-header.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/06/building-geocoding-app-vue-mapbox/", "author": "hello@smashingmagazine.com (Prince Chukwudire)", "description": "In this guide, we’ll 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.", "link": "https://smashingmagazine.com/2021/06/building-geocoding-app-vue-mapbox/", "publishedOn": "2021-06-07T11:00:00.000Z", "wordCount": 2429, "title": "How To Build A Geocoding App In Vue.js Using Mapbox", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/20dc2361-e5a5-4a78-b380-2f5942ecfba8/building-geocoding-app-vue-mapbox.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/getting-started-webpack/", "author": "hello@smashingmagazine.com (Nwani Victory)", "description": "Modern browsers provide good support for JavaScript modules, but module bundlers such as webpack stay a critical part of the JavaScript toolchain. Let’s take a deep dive into what webpack is and how to use it in your development workflow.", "link": "https://smashingmagazine.com/2021/06/getting-started-webpack/", "publishedOn": "2021-06-04T10:00:00.000Z", "wordCount": 4413, "title": "Getting Started With Webpack", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/66ba7a41-2a37-471b-9c60-66a3162d8f05/webpack-dependency-graph-opt.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/06/managing-shared-state-vue3/", "author": "hello@smashingmagazine.com (Shawn Wildermuth)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/managing-shared-state-vue3/", "publishedOn": "2021-06-03T10:30:00.000Z", "wordCount": 3713, "title": "Managing Shared State In Vue 3", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/0a70815d-28e5-44af-8306-0e992e99593a/managing-shared-state-vue3.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/how-to-fix-cumulative-layout-shift-issues/", "author": "hello@smashingmagazine.com (Barry Pollard)", "description": "Google’s 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 let’s have a look at ways of addressing any issues for that metric.", "link": "https://smashingmagazine.com/2021/06/how-to-fix-cumulative-layout-shift-issues/", "publishedOn": "2021-06-02T12:30:00.000Z", "wordCount": 4584, "title": "How To Fix Cumulative Layout Shift (CLS) Issues", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/87fbe5f9-d311-4542-a3f0-14e860415946/cumulative-layout-shift-issues.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/front-end-performance-online-store-jewellerybox/", "author": "hello@smashingmagazine.com (Jennifer Brehm)", "description": "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.", "link": "https://smashingmagazine.com/2021/06/front-end-performance-online-store-jewellerybox/", "publishedOn": "2021-06-02T10:30:00.000Z", "wordCount": 5613, "title": "Improving The Performance Of An Online Store (Case Study)", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/8a350bf5-9114-420c-b587-fee03ea4acb6/jewellerybox-uk-online-store-scipioerp.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/smashing-podcast-episode-38/", "author": "hello@smashingmagazine.com (Drew McLellan)", "description": "In this episode, we’re 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.", "link": "https://smashingmagazine.com/2021/06/smashing-podcast-episode-38/", "publishedOn": "2021-06-01T14:00:00.000Z", "wordCount": 7321, "title": "Smashing Podcast Episode 38 With Ivan Akulov: Why Is My React App Slow?", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/6db8029d-7039-4beb-b787-f3a0df852f12/smashing-podcast-episode-38.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/06/currency-convertor-exchangeratesapi/", "author": "hello@smashingmagazine.com (Leonardo Losoviz)", "description": "Amazon allows visitors to display prices in their own currency. Thanks to *ExchangeRatesApi.io*, we can do the same for our online shops, providing a better experience to our customers. Let’s find out how.", "link": "https://smashingmagazine.com/2021/06/currency-convertor-exchangeratesapi/", "publishedOn": "2021-06-01T09:00:00.000Z", "wordCount": 1513, "title": "Setting Up A Currency Convertor With ExchangeRatesApi.io", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/3ce4b3b1-3ae6-4371-8aaf-d72da3b69fc5/4-exchange-rate-api-bsa.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/05/desktop-wallpaper-calendars-june-2021/", "author": "hello@smashingmagazine.com (Cosima Mielke)", "description": "What could be a better way to welcome June than with some colorful inspiration? Well, we might have something for you: wallpapers created with love by artists and designers from across the globe.", "link": "https://smashingmagazine.com/2021/05/desktop-wallpaper-calendars-june-2021/", "publishedOn": "2021-05-31T11:30:00.000Z", "wordCount": 2723, "title": "Happy June Vibes For Your Screen (2021 Desktop Wallpapers Edition)", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/374464b5-093e-4ca2-9397-6f26c83756d4/june-20-summer-coziness-preview-opt.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/05/commenting-system-wysiwyg-editor/", "author": "hello@smashingmagazine.com (Shalabh Vyas)", "description": "In this article, we’ll be re-using the foundational WYSIWYG Editor built in the first article to build a commenting system for a WYSIWYG Editor that enables users to select text inside a document and share their comments on it. Let’s dig in!", "link": "https://smashingmagazine.com/2021/05/commenting-system-wysiwyg-editor/", "publishedOn": "2021-05-28T11:00:00.000Z", "wordCount": 10597, "title": "Adding A Commenting System To A WYSIWYG Editor", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/ec39e154-d3d3-4a12-91fd-f0c068cd5247/commenting-system-wysiwyg-editor.jpg", "length": "0", "type": "image/jpg" } }, { "id": "https://smashingmagazine.com/2021/05/useful-vs-code-extensions-web-developers/", "author": "hello@smashingmagazine.com (Cosima Mielke)", "description": "Meet useful Visual Studio Code extensions for web developers: little helpers to minimize slow-downs and frustrations, and boost developer’s workflow along the way. With auto log messages, auto code formatting, file utils, file labels, code snippets, highlight brackets, tags, indents and workspaces, onboarding and remote SSH.", "link": "https://smashingmagazine.com/2021/05/useful-vs-code-extensions-web-developers/", "publishedOn": "2021-05-27T13:30:00.000Z", "wordCount": 4061, "title": "Useful VS Code Extensions For Front-End Developers", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/2c5dbb73-94e1-486f-9daa-351699faaa2d/peacock-extension.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/05/build-launch-responsive-websites-editorx/", "author": "hello@smashingmagazine.com (Miroslav Bekyarov)", "description": "While web builders have been around for a long time, it wasn’t until recently that they became practical for professional use. Closing the gap between design and code has become the north star for many companies and we are seeing a wave of tools that deliver on this promise.", "link": "https://smashingmagazine.com/2021/05/build-launch-responsive-websites-editorx/", "publishedOn": "2021-05-27T09:30:00.000Z", "wordCount": 2842, "title": "How To Build And Launch Powerful Responsive Websites With Editor X", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/e3eaf20c-08e9-4f1c-829b-f0bbd7309e0d/21-build-launch-responsive-websites-editorx.png", "length": "0", "type": "image/png" } }, { "id": "https://smashingmagazine.com/2021/05/accessible-svg-patterns-comparison/", "author": "hello@smashingmagazine.com (Carie Fisher)", "description": "Discover which SVG patterns we should avoid and which patterns are the most inclusive when comparing different combinations of OSs, browsers, and screen readers.", "link": "https://smashingmagazine.com/2021/05/accessible-svg-patterns-comparison/", "publishedOn": "2021-05-26T13:20:00.000Z", "wordCount": 1749, "title": "Accessible SVGs: Perfect Patterns For Screen Reader Users", "enclosure": { "url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/35bf2e3a-ae5b-49a3-843a-318b4c81f5af/accessible-svg-patterns.jpg", "length": "0", "type": "image/jpg" } } ] }, { "title": "freeCodeCamp.org", "feedUrl": "https://www.freecodecamp.org/news/rss/", "siteUrl": "https://www.freecodecamp.org/news", "articles": [ { "id": "60d3ee396e1a1407b6b0b6ef", "author": null, "description": "Let's go over the most common mistakes you might be making in your React code right now, plus how to fix them. If you want to create amazing React applications, it's essential to avoid many common errors along the way. In this article, we'll not only cover how to fix", "link": "https://www.freecodecamp.org/news/common-react-mistakes-and-how-to-fix-them/", "publishedOn": "2021-06-24T17:01:44.000Z", "wordCount": 1511, "title": "4 Common React Mistakes You Might Be Making – And How to Fix Them" }, { "id": "60d4b5e96e1a1407b6b0bac4", "author": null, "description": "If you want good performance in your application, you need to collect data to figure out where to make improvements. That's where OpenTelemetry comes in. OpenTelemetry offers a single set of APIs and libraries that standardize how you collect and transfer telemetry data. OpenTelemetry provides a specification for instrumentation so", "link": "https://www.freecodecamp.org/news/how-to-use-opentelemetry/", "publishedOn": "2021-06-24T16:50:36.000Z", "wordCount": 9777, "title": "How to Use OpenTelemetry to Understand Software Performance" }, { "id": "605abca5687d62084bf6b7cd", "author": null, "description": "Data Analysis is the process of exploring, investigating, and gathering insights from data using statistical measures and visualizations. The objective of data analysis is to develop an understanding of data by uncovering trends, relationships, and patterns. Data analysis is both a science and an art. On the one hand it", "link": "https://www.freecodecamp.org/news/exploratory-data-analysis-with-numpy-pandas-matplotlib-seaborn/", "publishedOn": "2021-06-24T00:11:01.000Z", "wordCount": 8363, "title": "What is Data Analysis? How to Visualize Data with Python, Numpy, Pandas, Matplotlib & Seaborn Tutorial" }, { "id": "6072ffd4d5756f080ba98b27", "author": null, "description": "Over the last few years, microservices have gone from an overhyped buzzword to something you should understand as a software engineer. According to an O'Reilly developer survey in 2020: 61% of companies have been using microservices in the last year29% say at least half of their company systems are built", "link": "https://www.freecodecamp.org/news/microservices-architecture-for-humans/", "publishedOn": "2021-06-23T21:52:08.000Z", "wordCount": 2975, "title": "Microservices Architecture – Explained in Plain English" }, { "id": "60d36eb66e1a1407b6b0b16d", "author": null, "description": ".NET is a popular software framework developed by Microsoft. We just released a course on the freeCodeCamp.org YouTube channel that will teach you how to create a REST API end-to-end from scratch using the latest .NET 5 innovations and Visual Studio Code. The course uses the C# programming language.", "link": "https://www.freecodecamp.org/news/create-a-rest-api-with-dot-net-5-and-c-sharp/", "publishedOn": "2021-06-23T18:08:14.000Z", "wordCount": 60402, "title": "Create a REST API with .NET 5 and C#" }, { "id": "60a406bd906c5207e3a7dfcb", "author": null, "description": "In this article you will learn how to create a great technical video course. I run the freeCodeCamp.org YouTube channel where we post technical courses from a variety of contributors. Video courses that follow the guidelines in this article are often a good fit for freeCodeCamp's channel. How to", "link": "https://www.freecodecamp.org/news/how-to-create-a-great-technical-course/", "publishedOn": "2021-06-23T17:19:24.000Z", "wordCount": 2330, "title": "How to Create a Great Technical Course" }, { "id": "607f5fafdd38b9088c2bd0c9", "author": null, "description": "When you're debating someone, you want to use all the resources at your disposal to convince them you're right. And that's great – but you should be careful that you don't end up using a logical fallacy to help you make your point. What is a Logical Fallacy?A logical fallacy", "link": "https://www.freecodecamp.org/news/logical-fallacies-definition-fallacy-examples/", "publishedOn": "2021-06-23T04:19:00.000Z", "wordCount": 6255, "title": "Logical Fallacies – Definition and Fallacy Examples" }, { "id": "60d2323d6e1a1407b6b0ac4f", "author": null, "description": "Web scraping lets you collect data from web pages across the internet. It's also called web crawling or web data extraction. PHP is a widely used back-end scripting language for creating dynamic websites and web applications. And you can implement a web scraper using plain PHP code. But since we", "link": "https://www.freecodecamp.org/news/web-scraping-with-php-crawl-web-pages/", "publishedOn": "2021-06-22T21:11:53.000Z", "wordCount": 2770, "title": "Web Scraping with PHP – How to Crawl Web Pages Using Open Source Tools" }, { "id": "60cac8ff4dc1a607ed7b4592", "author": null, "description": "There’s a special syntax you can use in JavaScript that makes working with promises easier. It's called ā€œasync/await\", and it’s surprisingly straightforward to understand and use. In this article, we'll discuss: What are asynchronus functions? How promises work in JavaScript Async/Await basics How to use", "link": "https://www.freecodecamp.org/news/how-to-use-async-await-write-better-javascript/", "publishedOn": "2021-06-22T16:24:37.000Z", "wordCount": 1432, "title": "How to Use Async/Await to Write Better JavaScript Code" }, { "id": "60c13e71d3126007592d5be2", "author": null, "description": "The 100 Days of Code challenge is very popular among new coders and developers looking to level up their skills. It's so popular that our Discord server has an entire channel dedicated to it. By popular demand, we recently built a Discord bot that helps people track their progress in", "link": "https://www.freecodecamp.org/news/how-to-build-a-100-days-of-code-bot-for-discord-using-typescript-and-mongodb/", "publishedOn": "2021-06-22T16:20:36.000Z", "wordCount": 7385, "title": "How to Use TypeScript and MongoDB to Build a 100 Days of Code Discord Bot" } ] } ], "cliVersion": "1.11.0" }