osmosfeed-template/cache.json
2021-06-07 01:04:33 +00:00

717 lines
No EOL
50 KiB
JSON
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.

{
"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.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": 268,
"title": "v1.10.2"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.9.0",
"author": null,
"description": "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 \"experimental\" due to these caveats:\n\nThis feature is currently only available through custom template.\niTunes has no strict format requirement for duration. The unit is most likely seconds but can be \"hh:mm:ss\" or \"mm:ss\" for some sources. A future version may expose a human readable string to the template.\nNo 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.\nYou can't republish the podcast in the feed output. Supporting this goes beyond the scope of the project at the moment.\nFixed: the articles in template data were not sorted.\nThank you @Zenigata",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.9.0",
"publishedOn": "2021-05-26T06:02:55.000Z",
"wordCount": 413,
"title": "v1.9.0"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.8.1",
"author": null,
"description": "Fixed: UnhandledPromiseRejectionWarning: Error: At least one option must be a string",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.8.1",
"publishedOn": "2021-05-23T05:40:12.000Z",
"wordCount": 278,
"title": "v1.8.1"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.8.0",
"author": null,
"description": "Changed: Smart summary truncation. When there is no dedicated summary (only Atom feed has it, and many sites don'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 \"pseudo\" summary. If not, we assume the source used the content field as summary, and it will be displayed in full length.\nThank you: @LooperXX.",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.8.0",
"publishedOn": "2021-05-23T05:12:08.000Z",
"wordCount": 341,
"title": "v1.8.0"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.2",
"author": null,
"description": "⚠ 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: \"16\" in your .github/workflows/update-feed.yaml today to get the performance/security improvements from the newer node. See example\nChore: Reorganize to monorepo with npm workspace.",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.2",
"publishedOn": "2021-05-17T05:32:19.000Z",
"wordCount": 336,
"title": "v1.7.2"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.1",
"author": null,
"description": "Fixed: static files were unnecessarily copied for custom templates.",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.1",
"publishedOn": "2021-05-16T02:33:58.000Z",
"wordCount": 276,
"title": "v1.7.1"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.0",
"author": null,
"description": "Added: templating system. Demo | Source | Docs\nChore: rendering logic refactoring. Adopting functional paradigm.\nThank you @tianheg, @onnyyonn",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.7.0",
"publishedOn": "2021-05-16T01:42:24.000Z",
"wordCount": 286,
"title": "v1.7.0"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0",
"author": null,
"description": "Added: Basic theme customization: Demo | Source | Docs.",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0",
"publishedOn": "2021-05-10T08:55:42.000Z",
"wordCount": 276,
"title": "v1.4.0"
},
{
"id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.6.0",
"author": null,
"description": "Added: Link from the title of a subscription to its website.\nAdded: Store feedUrl and siteUrl for each source in cache.\nAdded: Semantic element (<time>) for timestamp on the UI.\nAdded: Semantic API for theming the default template. Demo | Source | Docs\nChanged: Moved feed metadata from article level to feed level in cache.\nFixed: Any html-like text was stripped from title. Fixed with encoded text.\nRemoved: href for each source in cache. The value was never used so it's not a breaking change.",
"link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.6.0",
"publishedOn": "2021-05-10T08:15:20.000Z",
"wordCount": 352,
"title": "v1.6.0"
}
]
},
{
"title": "CSS-Tricks",
"feedUrl": "https://css-tricks.com/feed/",
"siteUrl": "https://css-tricks.com",
"articles": [
{
"id": "https://css-tricks.com/?p=341793",
"author": "Chris Coyier",
"description": "Colin Oakley:\n• Accessible — Use semantic HTML, and make sure we meet the WCAG 2.1 AA standard as a minimum and it works with assisted technologies (this sits alongside the DWP Accessibility Manual)\n• Agnostic — Build \n…\nThe post Principles for user-centered front-end development appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://colinoakley.medium.com/the-web-we-choose-to-build-e921510e3f1b",
"publishedOn": "2021-06-04T20:36:46.000Z",
"wordCount": 1035,
"title": "Principles for user-centered front-end development"
},
{
"id": "https://css-tricks.com/?p=341968",
"author": "Chris Coyier",
"description": "I just joked that were basically getting everything we want in CSS super fast (mostly referring to container queries, my gosh, can you imagine they are actually coming?). Now we might actually get parent selectors?! As in .parent:has(.child) { …\nThe post Can I :has() appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://bkardell.com/blog/canihas.html",
"publishedOn": "2021-06-04T14:37:59.000Z",
"wordCount": 1327,
"title": "Can I :has()"
},
{
"id": "https://css-tricks.com/?p=341584",
"author": "Temani Afif",
"description": "A little while back, Chris shared this nice hexagonal grid. And true to its name, its using—wait for itCSS Grid to form that layout. Its a neat trick! Combining grid columns, grid gaps, and creative clipping …\nThe post Hexagons and Beyond: Flexible, Responsive Grid Patterns, Sans Media Queries appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/hexagons-and-beyond-flexible-responsive-grid-patterns-sans-media-queries/",
"publishedOn": "2021-06-03T14:25:57.000Z",
"wordCount": 5032,
"title": "Hexagons and Beyond: Flexible, Responsive Grid Patterns, Sans Media Queries"
},
{
"id": "https://css-tricks.com/?p=341494",
"author": "Chris Coyier",
"description": "DebugBear takes just a few seconds to start using. You literally point it at a URL you want to watch, and itll start watching it. You install nothing.\nItll start running tests, and youve immediately got performance charts you can …\nThe post Monitoring Lighthouse Scores and Core Web Vitals with DebugBear appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/monitoring-lighthouse-scores-and-core-web-vitals-with-debugbear/",
"publishedOn": "2021-06-03T14:25:19.000Z",
"wordCount": 955,
"title": "Monitoring Lighthouse Scores and Core Web Vitals with DebugBear"
},
{
"id": "https://css-tricks.com/?p=341724",
"author": "Chris Coyier",
"description": "How do I debug Safari on iOS?\nThese are my general steps, starting with not even using iOS Safari.\n1. Is this just a small-screen problem?\nLemme just use the device mode in Chrome quick.\nNote that this does a …\nThe post Debugging iOS Safari appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/debugging-ios-safari/",
"publishedOn": "2021-06-02T21:15:28.000Z",
"wordCount": 1066,
"title": "Debugging iOS Safari"
},
{
"id": "https://css-tricks.com/?p=341442",
"author": "Dmitry Mayorov",
"description": "Blocks in WordPress are great. Drop some into the page, arrange them how you like, and youve got a pretty sweet landing page with little effort. But what if the default blocks in WordPress need a little tweaking? Like, what …\nThe post A Crash Course in WordPress Block Filters appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/a-crash-course-in-wordpress-block-filters/",
"publishedOn": "2021-06-02T13:35:53.000Z",
"wordCount": 4168,
"title": "A Crash Course in WordPress Block Filters"
},
{
"id": "https://css-tricks.com/?p=341572",
"author": "Chris Coyier",
"description": "PPK laid out an interesting situation in “Two options for using custom properties” where he and Stefan Judis had two different approaches for doing the same thing with custom properties. In one approach, hover and focus styles for a …\nThe post Are Custom Properties a “Menu of What Will Change”? appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/are-custom-properties-a-menu-of-what-will-change/",
"publishedOn": "2021-06-02T13:35:40.000Z",
"wordCount": 1057,
"title": "Are Custom Properties a “Menu of What Will Change”?"
},
{
"id": "https://css-tricks.com/?p=341720",
"author": "Chris Coyier",
"description": "Pedro Duarte made a wishlist for styled code blocks in blog posts and documentation, then hand-rolls a perfect solution for that wishlist. For example, a feature to be able to highlight certain lines or words within the code block. The …\nThe post Code blocks, but better appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://ped.ro/blog/code-blocks-but-better",
"publishedOn": "2021-06-01T22:08:48.000Z",
"wordCount": 3202,
"title": "Code blocks, but better"
},
{
"id": "https://css-tricks.com/?p=341342",
"author": "Evgeny Klimenchenko",
"description": "Testing is one of those things that you either get super excited about or kinda close your eyes and walk away. Whichever camp you fall into, Im here to tell you that front-end testing is for everyone. In fact, …\nThe post Front-End Testing is For Everyone appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/front-end-testing-is-for-everyone/",
"publishedOn": "2021-06-01T14:17:43.000Z",
"wordCount": 4076,
"title": "Front-End Testing is For Everyone"
},
{
"id": "https://css-tricks.com/?p=341296",
"author": "Geoff Graham",
"description": "Critical CSS is one of those things I see in my performance reports but always seem to ignore. I know what it means. It means to put only the CSS required to render things immediately visible in a <style>…\nThe post Jetpack Boost Handles Critical CSS For You appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/jetpack-boost-handles-critical-css-for-you/",
"publishedOn": "2021-06-01T14:16:55.000Z",
"wordCount": 926,
"title": "Jetpack Boost Handles Critical CSS For You"
},
{
"id": "https://css-tricks.com/?p=340465",
"author": "Jason Lengstorf",
"description": "Modern apps place high demands on front-end developers. Web apps require complex functionality, and the lions share of that work is falling to front-end devs:\nbuilding modern, accessible user interfaces\ncreating interactive elements and complex animations\nmanaging complex application state\n…\nThe post Serverless Functions: The Secret to Ultra-Productive Front-End Teams appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/serverless-functions-the-secret-to-ultra-productive-front-end-teams/",
"publishedOn": "2021-05-31T17:16:22.000Z",
"wordCount": 2068,
"title": "Serverless Functions: The Secret to Ultra-Productive Front-End Teams"
},
{
"id": "https://css-tricks.com/?p=341482",
"author": "Chris Coyier",
"description": "Ive been using Local for ages. Four years ago, I wrote about how I got all my WordPress sites running locally on it. I just wanted to give it another high five because its still here and still great. In …\nThe post Local: Always Getting Better appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/local-always-getting-better/",
"publishedOn": "2021-05-31T17:13:02.000Z",
"wordCount": 1242,
"title": "Local: Always Getting Better"
},
{
"id": "https://css-tricks.com/?p=341163",
"author": "Thomas Park",
"description": "Typically, a single favicon is used across a whole domain. But there are times you wanna step it up with different favicons depending on context. A website might change the favicon to match the content being viewed. Or a site …\nThe post Dynamic Favicons for WordPress appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/dynamic-favicons-for-wordpress/",
"publishedOn": "2021-05-28T14:36:47.000Z",
"wordCount": 1837,
"title": "Dynamic Favicons for WordPress"
},
{
"id": "https://css-tricks.com/?p=341298",
"author": "Chris Coyier",
"description": "Its very popular to put a $ on lines that are intended to be a command in code documentation that involves the terminal (i.e. the command line).\nLike this:\n$ brew install somepackage\nThe point of that is that it …\nThe post To $ or Not to $: Displaying Terminal Code Snippets appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/to-or-not-to-displaying-terminal-code-snippets/",
"publishedOn": "2021-05-27T18:22:11.000Z",
"wordCount": 1580,
"title": "To $ or Not to $: Displaying Terminal Code Snippets"
},
{
"id": "https://css-tricks.com/?p=341020",
"author": "Robin Rendle",
"description": "Most images on the web are superfluous. If I might be a jerk for a bit, 99% of them arent even that helpful at all (although there are rare exceptions). Thats because images dont often complement the text theyre …\nThe post How to Show Images on Click appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.",
"link": "https://css-tricks.com/how-to-show-images-on-click/",
"publishedOn": "2021-05-27T14:25:29.000Z",
"wordCount": 1724,
"title": "How to Show Images on Click"
}
]
},
{
"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/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. Lets 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": 4128,
"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": 3510,
"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": "Googles Core Web Vitals initiative has taken the SEO and Web Performance worlds by storm and many sites are busy optimizing their Page Experience to maximize the ranking factor. The Cumulative Layout Shift metric is causing trouble to a lot of sites, so lets have a look at ways of addressing any issues for that metric.",
"link": "https://smashingmagazine.com/2021/06/how-to-fix-cumulative-layout-shift-issues/",
"publishedOn": "2021-06-02T12:30:00.000Z",
"wordCount": 4347,
"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": 5342,
"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, were talking about React performance. What factors slow our React apps down, and how can we fix it? Drew McLellan talks to expert Ivan Akulov to find out.",
"link": "https://smashingmagazine.com/2021/06/smashing-podcast-episode-38/",
"publishedOn": "2021-06-01T14:00:00.000Z",
"wordCount": 7115,
"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. Lets find out how.",
"link": "https://smashingmagazine.com/2021/06/currency-convertor-exchangeratesapi/",
"publishedOn": "2021-06-01T09:00:00.000Z",
"wordCount": 1362,
"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": 2482,
"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, well 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. Lets dig in!",
"link": "https://smashingmagazine.com/2021/05/commenting-system-wysiwyg-editor/",
"publishedOn": "2021-05-28T11:00:00.000Z",
"wordCount": 10214,
"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 developers 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": 3735,
"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 wasnt 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": 2676,
"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": 1547,
"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"
}
},
{
"id": "https://smashingmagazine.com/2021/05/undoing-mistakes-git-part2/",
"author": "hello@smashingmagazine.com (Tobias Günther)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/undoing-mistakes-git-part2/",
"publishedOn": "2021-05-25T14:00:00.000Z",
"wordCount": 2126,
"title": "A Guide To Undoing Mistakes With Git (Part 2)",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/211042ae-7a72-42ba-804e-9f8132815200/undoing-mistakes-git-part1.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/reduce-font-loading-impact-css-descriptors/",
"author": "hello@smashingmagazine.com (Barry Pollard)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/reduce-font-loading-impact-css-descriptors/",
"publishedOn": "2021-05-25T09:30:00.000Z",
"wordCount": 2077,
"title": "A New Way To Reduce Font Loading Impact: CSS Font Descriptors",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/f0c69413-365e-4c39-9ee8-ad1d2b44e56b/reduce-font-loading-impact-css-descriptors.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/css-container-queries-use-cases-migration-strategies/",
"author": "hello@smashingmagazine.com (Adrian Bece)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/css-container-queries-use-cases-migration-strategies/",
"publishedOn": "2021-05-24T11:30:00.000Z",
"wordCount": 2707,
"title": "CSS Container Queries: Use-Cases And Migration Strategies",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/4d6d809b-0c1a-4074-9eeb-8509dc4d383f/css-container-queries-use-cases-migration-strategies.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/building-wysiwyg-editor-javascript-slatejs/",
"author": "hello@smashingmagazine.com (Shalabh Vyas)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/building-wysiwyg-editor-javascript-slatejs/",
"publishedOn": "2021-05-21T11:30:00.000Z",
"wordCount": 9436,
"title": "Building A Rich Text Editor (WYSIWYG)",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/bafdd817-038e-4e70-a830-de0f5da659c4/building-wysiwyg-editor-javascript-slatejs.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/new-online-workshops-front-end-ux/",
"author": "hello@smashingmagazine.com (Iris Lješnjanin)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/new-online-workshops-front-end-ux/",
"publishedOn": "2021-05-20T14:20:00.000Z",
"wordCount": 831,
"title": "Boost Your Skills Online: Smashing Workshops On Front-End And Design",
"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/05/implement-authentication-nextjs-auth0/",
"author": "hello@smashingmagazine.com (Facundo Giuliani)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/implement-authentication-nextjs-auth0/",
"publishedOn": "2021-05-20T11:00:00.000Z",
"wordCount": 1961,
"title": "How To Implement Authentication In Next.js With Auth0",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/3e905cbf-b17b-47da-aec4-15c9701bf4bf/implement-authentication-nextjs-auth0.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/frustrating-design-patterns-mega-dropdown-hover-menus/",
"author": "hello@smashingmagazine.com (Vitaly Friedman)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/frustrating-design-patterns-mega-dropdown-hover-menus/",
"publishedOn": "2021-05-19T11:40:00.000Z",
"wordCount": 5028,
"title": "Frustrating Design Patterns: Mega-Dropdown Hover Menus",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/7c233470-63c3-4557-93c0-a8cc6709b6dd/13-mega-dropdown-hover-menus.png",
"length": "0",
"type": "image/png"
}
},
{
"id": "https://smashingmagazine.com/2021/05/create-edit-animate-svg-svgator3/",
"author": "hello@smashingmagazine.com (Mikołaj Dobrucki)",
"description": "Today, we are taking a closer look at [SVGator 3.0](https://www.svgator.com/?utm_source=article&utm_medium=smashingmag&utm_campaign=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.",
"link": "https://smashingmagazine.com/2021/05/create-edit-animate-svg-svgator3/",
"publishedOn": "2021-05-18T10:30:00.000Z",
"wordCount": 1796,
"title": "How To Create, Edit And Animate SVGs All In One Place With SVGator 3.0",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/1e69194b-9e57-4713-bed2-d2f18dd6c914/create-animate-svg-graphics-svgator3-image-7.png",
"length": "0",
"type": "image/png"
}
},
{
"id": "https://smashingmagazine.com/2021/05/smashing-podcast-episode-37/",
"author": "hello@smashingmagazine.com (Drew McLellan)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/smashing-podcast-episode-37/",
"publishedOn": "2021-05-18T05:00:00.000Z",
"wordCount": 9250,
"title": "Smashing Podcast Episode 37 With Adam Argyle: What Is VisBug?",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/e26ce3b7-49e1-45d7-8411-ecc5b2d696cd/smashing-podcast-episode-37.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/core-web-vitals-case-study/",
"author": "hello@smashingmagazine.com (Beau Hartshorne)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/core-web-vitals-case-study/",
"publishedOn": "2021-05-17T11:30:00.000Z",
"wordCount": 2951,
"title": "How We Improved Our Core Web Vitals (Case Study)",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b68aa1ba-94b7-4e70-83e5-5f58b37bf7cd/core-web-vitals-case-study.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/tree-shaking-reference-guide/",
"author": "hello@smashingmagazine.com (Átila Fassina)",
"description": "“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.",
"link": "https://smashingmagazine.com/2021/05/tree-shaking-reference-guide/",
"publishedOn": "2021-05-14T10:30:00.000Z",
"wordCount": 2438,
"title": "Tree-Shaking: A Reference Guide",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/0e27a101-d2e0-4661-9e12-b53b68051dbf/tree-shaking-reference-guide.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/frustrating-design-patterns-birthday-picker/",
"author": "hello@smashingmagazine.com (Vitaly Friedman)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/frustrating-design-patterns-birthday-picker/",
"publishedOn": "2021-05-12T12:42:00.000Z",
"wordCount": 3485,
"title": "Frustrating Design Patterns That Need Fixing: Birthday Picker",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/f773d7bb-df56-409f-a3fb-aa1e6e0eea09/4-birthday-picker.jpg",
"length": "0",
"type": "image/jpg"
}
},
{
"id": "https://smashingmagazine.com/2021/05/little-smashing-stories/",
"author": "hello@smashingmagazine.com (Vitaly Friedman)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/little-smashing-stories/",
"publishedOn": "2021-05-12T08:00:00.000Z",
"wordCount": 1993,
"title": "Little Smashing Stories",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/b820c735-621c-4e60-8a3f-accb3f66d312/smashing-newsletter-banner.png",
"length": "0",
"type": "image/png"
}
},
{
"id": "https://smashingmagazine.com/2021/05/complete-guide-css-container-queries/",
"author": "hello@smashingmagazine.com (Stephanie Eckles)",
"description": "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.",
"link": "https://smashingmagazine.com/2021/05/complete-guide-css-container-queries/",
"publishedOn": "2021-05-11T13:30:00.000Z",
"wordCount": 4874,
"title": "A Primer On CSS Container Queries",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/a2c88b2c-ef73-44e3-885c-2c5c322fb781/smashing-articles-original.png",
"length": "0",
"type": "image/png"
}
},
{
"id": "https://smashingmagazine.com/2021/05/smashingconf-conference-platform-hopin/",
"author": "hello@smashingmagazine.com (Amanda Annandale)",
"description": "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?",
"link": "https://smashingmagazine.com/2021/05/smashingconf-conference-platform-hopin/",
"publishedOn": "2021-05-11T10:00:00.000Z",
"wordCount": 1958,
"title": "The Conference Platform We Use For Our Online Events: Hopin",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/cabbfe1a-8bcd-4ed3-9442-3ce8e51cc53e/hopin.png",
"length": "0",
"type": "image/png"
}
},
{
"id": "https://smashingmagazine.com/2021/05/get-started-whac-a-mole-react-game/",
"author": "hello@smashingmagazine.com (Jhey Tompkins)",
"description": "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!",
"link": "https://smashingmagazine.com/2021/05/get-started-whac-a-mole-react-game/",
"publishedOn": "2021-05-10T11:00:00.000Z",
"wordCount": 6361,
"title": "Get Started With React By Building A Whac-A-Mole Game",
"enclosure": {
"url": "http://cloud.netlifyusercontent.com/assets/344dbf88-fdf9-42bb-adb4-46f01eedd629/7a9db037-1a8d-42ad-b0c3-1c885e456693/get-started-whac-a-mole-react-game.jpg",
"length": "0",
"type": "image/jpg"
}
}
]
},
{
"title": "freeCodeCamp.org",
"feedUrl": "https://www.freecodecamp.org/news/rss/",
"siteUrl": "https://www.freecodecamp.org/news",
"articles": [
{
"id": "60b3480c11ffb70827ef9a88",
"author": null,
"description": "If you're building a React app, you want your users to be able to search and get exact results. And if you are getting tons of items from an API, then you need to create a way for users to be able to find various items easily.",
"link": "https://www.freecodecamp.org/news/search-and-filter-component-in-reactjs/",
"publishedOn": "2021-06-04T21:34:33.000Z",
"wordCount": 2174,
"title": "How to Search and Filter Components in React"
},
{
"id": "60ba33d7acb62507dd1d9050",
"author": null,
"description": "Scikit-learn is one of the most popular open-source and free machine learning libraries for Python. The scikit-learn library contains a lot of efficient tools for machine learning and statistical modeling including classification, regression, clustering, and dimensionality reduction. Many data scientists, machine learning engineers, and researchers rely on this library for",
"link": "https://www.freecodecamp.org/news/machine-learning-python-new-scikit-learn-features-you-should-know/",
"publishedOn": "2021-06-04T20:58:07.000Z",
"wordCount": 1544,
"title": "Machine Learning in Python The Top New Scikit-Learn 0.24 Features You Should Know"
},
{
"id": "60b8f5c7acb62507dd1d8500",
"author": null,
"description": "I deployed a Discord bot to a 1000+ user server. In the first hour, Deployment Hell struck and my bot crashed. In the next hour, I brought it back, surviving and even thriving in Deployment Hell. In this post, I'll show you how.",
"link": "https://www.freecodecamp.org/news/recovering-from-deployment-hell-what-i-learned-from-deploying-my-discord-bot-to-a-1000-user-server/",
"publishedOn": "2021-06-04T20:41:29.000Z",
"wordCount": 2159,
"title": "How to Recover from Deployment Hell What I Learned After My Discord Bot Crashed on a 1000+ User Server"
},
{
"id": "60b2a4c611ffb70827ef9842",
"author": null,
"description": "TypeScript has taken the development world by storm. No wonder it has over 15 million weekly downloads on npm. But what is TypeScript, and what do you need to know about it? In this article, I am going answer those questions. By the end you'll have a grasp of the",
"link": "https://www.freecodecamp.org/news/learn-typescript-basics/",
"publishedOn": "2021-06-04T18:01:00.000Z",
"wordCount": 2225,
"title": "Learn TypeScript Basics in this Beginner&#x27;s Guide"
},
{
"id": "60b98ebfacb62507dd1d8ec4",
"author": null,
"description": "Are you looking for a way to apply Python and machine learning to a real-world application? You should consider Bioinformatics. Bioinformatics is an interdisciplinary field that develops methods and software tools for understanding biological data, in particular when the data sets are large and complex. We just released a course",
"link": "https://www.freecodecamp.org/news/python-for-bioinformatics-use-machine-learning-and-data-analysis-for-drug-discovery/",
"publishedOn": "2021-06-04T02:32:22.000Z",
"wordCount": 390,
"title": "Python for Bioinformatics: Use Machine Learning and Data Analysis for Drug Discovery"
},
{
"id": "60b11ff811ffb70827ef8f94",
"author": null,
"description": "Lets say you plan to build a website. Before you start, you want to set up a few tools to make your life easier. But which tools should you have? The JavaScript ecosystem is changing so fast that it can be overwhelming to pick the best tools to use.",
"link": "https://www.freecodecamp.org/news/how-to-set-up-a-front-end-development-project/",
"publishedOn": "2021-06-03T21:44:03.000Z",
"wordCount": 3978,
"title": "JavaScript Tutorial How to Set Up a Front End Development Project"
},
{
"id": "60afd68611ffb70827ef86d8",
"author": null,
"description": "Schofield's Laws of Computing are principles that anyone who works with computers should know. They're focused on data portability, integrity, and security. Jack Schofield was a prolific journalist who wrote for The Guardian and covered technology for nearly four decades. During that time, he wrote three particular articles called \"Schofield's",
"link": "https://www.freecodecamp.org/news/schofields-laws-of-computing/",
"publishedOn": "2021-06-03T18:46:12.000Z",
"wordCount": 1595,
"title": "Schofield&#x27;s Laws of Computing What they Are and Why You Should Know Them"
},
{
"id": "60b7c02cacb62507dd1d7b80",
"author": null,
"description": "Lets suppose youre planning to visit your neighborhood store to stock up on essentials. What is the first thing youd do? Have the answer already? Yes, you'd probably write down a shopping list! Python also has a built-in data structure called List thats very similar to",
"link": "https://www.freecodecamp.org/news/lists-in-python-comprehensive-guide/",
"publishedOn": "2021-06-03T18:42:20.000Z",
"wordCount": 1748,
"title": "Lists in Python A Comprehensive Guide"
},
{
"id": "60affbe411ffb70827ef8951",
"author": null,
"description": "A Hackintosh is a non-Mac computer system, made with PC parts, that runs the macOS operating system. In this tutorial, you will learn how to create a Hackintosh. You will learn how to install macOS Big Sur (or any other version of macOS) using OpenCore. The main benefit of a",
"link": "https://www.freecodecamp.org/news/build-a-hackintosh/",
"publishedOn": "2021-06-03T18:07:17.000Z",
"wordCount": 2708,
"title": "How to Build a Hackintosh - Install MacOS Big Sur on a PC Using OpenCore"
},
{
"id": "60aa708711ffb70827ef5f4b",
"author": null,
"description": "If you're new to cloud technologies, you might be confused about the difference between serverless technologies and managed services. So in this article you'll learn what these terms mean and what the main differences are. What Are Managed Services? A managed service let the end-user focus on using a service",
"link": "https://www.freecodecamp.org/news/serverless-fully-managed-service-difference/",
"publishedOn": "2021-06-03T16:51:37.000Z",
"wordCount": 1453,
"title": "Serverless vs Fully Managed Services: What&#x27;s the Difference?"
}
]
}
],
"cliVersion": "1.10.2"
}