From a50143dfdd76a5136ee18b29c659ab2ea32e811f Mon Sep 17 00:00:00 2001 From: chuanqisun Date: Tue, 11 May 2021 00:36:33 +0000 Subject: [PATCH] deploy: f25fe2fce936010274b84035a04484a21fd3f2d1 --- cache.json | 281 +++----- feed.atom | 160 ++--- index.html | 1818 ++++++++++++++++++++++++++++++---------------------- styles.css | 217 +++++-- 4 files changed, 1367 insertions(+), 1109 deletions(-) diff --git a/cache.json b/cache.json index 487281e..826d4f9 100644 --- a/cache.json +++ b/cache.json @@ -1,132 +1,141 @@ { "sources": [ { - "href": "https://github.com/osmoscraft/osmosfeed/releases.atom", + "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.5.0", - "author": "Release notes from osmosfeed", - "description": "Added: Atom feed generator\nAdded: Customizable site title\nAdded: Copy all files from static directory to the root of the site.\nChanged: Favicon, css, and js assets now existing at site root level.\nChore: Excluded testing files from repo.", - "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.5.0", - "publishedOn": "2021-05-08T05:16:47.000Z", - "wordCount": 310, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", - "title": "v1.5.0" - }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0", - "author": "Release notes from osmosfeed", - "description": "Added: Basic theme customization: Demo | Source. See documentation.", + "author": null, + "description": "Added: Basic theme customization: Demo | Source | Docs.", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0", - "publishedOn": "2021-05-05T07:20:50.000Z", + "publishedOn": "2021-05-10T08:55:42.000Z", "wordCount": 276, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "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": 356, + "title": "v1.6.0" + }, + { + "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.5.0", + "author": null, + "description": "Added: Atom feed generator\nAdded: Customizable site title\nAdded: Copy all files from static directory to the root of the site.\nChanged: Favicon, css, and js assets now existing at site root level.\nChore: Excluded testing files from repo.", + "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.5.0", + "publishedOn": "2021-05-08T05:16:47.000Z", + "wordCount": 306, + "title": "v1.5.0" + }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.3.1", - "author": "Release notes from osmosfeed", + "author": null, "description": "Fixed: Avoid crwalers.\nFixed: Error logging from XML parser.\nFixed: Typo in docs.\nThank you: @dym-sh, @tabokie, @cheese1", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.3.1", "publishedOn": "2021-05-05T05:19:57.000Z", "wordCount": 285, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.3.1" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.3.0", - "author": "Release notes from osmosfeed", + "author": null, "description": "Added: Customize cache lifespan with cacheMaxDays property in osmosfeed.yaml.\nAdded: Documentation for osmosfeed.yaml.\nFixed: More intuitive logging during build.\nChore: Refactored parameter passing for enrich step.", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.3.0", "publishedOn": "2021-05-05T05:19:26.000Z", "wordCount": 293, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.3.0" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.2.3", - "author": "Release notes from osmosfeed", + "author": null, "description": "Changed: favicon update.", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.2.3", "publishedOn": "2021-05-05T05:19:03.000Z", "wordCount": 270, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.2.3" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.2.1", - "author": "Release notes from osmosfeed", + "author": null, "description": "Added: Display CLI version in footer.", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.2.1", "publishedOn": "2021-05-05T05:18:52.000Z", "wordCount": 273, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.2.1" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.1.6", - "author": "Release notes from osmosfeed", + "author": null, "description": "Fixed: The output website didn't have favicon.", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.1.6", "publishedOn": "2021-05-05T05:18:40.000Z", "wordCount": 274, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.1.6" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.1.1", - "author": "Release notes from osmosfeed", + "author": null, "description": "Fixed: Item description didn't use the description property from feed item.", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.1.1", "publishedOn": "2021-05-05T05:18:27.000Z", "wordCount": 278, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.1.1" }, { "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.1.0", - "author": "Release notes from osmosfeed", + "author": null, "description": "Added: MIT license\nAdded: cache.json is stamped with the version of the builder. This allows future builder with breaking change to ignore incompatible cache.\nAdded: Feed source retry on fetch error (3 times total, 15 seconds timeout).\nAdded: Item enrichment retry on fetch error (3 times total, 15 seconds timeout).\nAdded: Console log for cache restore and update behavior.\nAdded: npx command: npx osmosfeed\nChanged: Improved console log that breaks down rendered item count into \"new\" and \"cached\".\nFixed: Item…", "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.1.0", "publishedOn": "2021-05-05T05:17:37.000Z", "wordCount": 353, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", "title": "v1.1.0" - }, - { - "id": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.0.1", - "author": "Release notes from osmosfeed", - "description": "Changed: Runtime dependencies are moved out of devDependencies. This is not a breaking change, but to receive performance benefit, you need to make sure @osmoscraft/osmosfeed is listed as dependencies instead of devDependencies in the package.json of your rss reader site.\nChanged: Build target from node12 to node14.\nChanged: Switched to a more robust rss parser: rss-parser\nFixed: RSS 1.0 feed <dc:date> was not parsed as publish date.\nChore: npm dependencies version updates.", - "link": "https://github.com/osmoscraft/osmosfeed/releases/tag/v1.0.1", - "publishedOn": "2021-05-05T05:16:07.000Z", - "wordCount": 339, - "sourceHref": "https://github.com/osmoscraft/osmosfeed/releases.atom", - "sourceTitle": "Release notes from osmosfeed", - "title": "v1.0.1" } ] }, { - "href": "https://css-tricks.com/feed/", + "title": "CSS-Tricks", + "feedUrl": "https://css-tricks.com/feed/", + "siteUrl": "https://css-tricks.com", "articles": [ + { + "id": "https://css-tricks.com/?p=340020", + "author": "Chris Coyier", + "description": "This is extremely fun. Jeff Lindsay has created Topframe, and writes:\nAnybody that knows how to mess around with HTML can now mess around with their desktop computing experience. Topframe is an open source tool that lets you \n…\nThe post Topframe appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", + "link": "https://css-tricks.com/topframe/", + "publishedOn": "2021-05-10T21:14:15.000Z", + "wordCount": 568, + "title": "Topframe" + }, + { + "id": "https://css-tricks.com/?p=340208", + "author": "Chris Coyier", + "description": "I find build tooling endlessly interesting, especially right now as we’re in a juicy next-gen transitional period with players like Vite, wmr, Snowpack, and esbuild. Hugh Haworth has a good run-down of the new players, and we’ve chatted on …\nThe post Migrating from Parcel to Snowpack appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", + "link": "https://benfrain.com/migrating-from-parcel-to-snowpack-build-tool-comparison/", + "publishedOn": "2021-05-10T21:13:23.000Z", + "wordCount": 2948, + "title": "Migrating from Parcel to Snowpack" + }, + { + "id": "https://css-tricks.com/?p=339203", + "author": "Ana Tudor", + "description": "I recently came across an interesting problem. I had to implement a grid of cards with a variable (user-set) aspect ratio that was stored in a --ratio custom property. Boxes with a certain aspect ratio are a classic problem in …\nThe post Variable Aspect Ratio Card With Conic Gradients Meeting Along the Diagonal appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", + "link": "https://css-tricks.com/variable-aspect-ratio-card-with-conic-gradients-meeting-along-the-diagonal/", + "publishedOn": "2021-05-10T14:13:12.000Z", + "wordCount": 2838, + "title": "Variable Aspect Ratio Card With Conic Gradients Meeting Along the Diagonal" + }, { "id": "https://css-tricks.com/?p=339781", "author": "Chris Coyier", "description": "I have a real distaste for this question. It might seem like a fun question to dig into on the surface, but the way it enters public discourse rarely seems to be in good faith. There are ulterior motives at …\nThe post Is CSS a Programming Language? appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/is-css-a-programming-language/", "publishedOn": "2021-05-07T13:56:17.000Z", - "wordCount": 2031, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", + "wordCount": 3313, "title": "Is CSS a Programming Language?" }, { @@ -136,8 +145,6 @@ "link": "https://css-tricks.com/links-on-typography/", "publishedOn": "2021-05-07T13:54:01.000Z", "wordCount": 952, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Links on Typography" }, { @@ -147,8 +154,6 @@ "link": "https://www.caniemail.com/", "publishedOn": "2021-05-07T02:38:56.000Z", "wordCount": 324, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Can I Email…" }, { @@ -157,9 +162,7 @@ "description": "Route53 is DNS management service by AWS. DNS is absolutely not a database, and yet here’s Nicholas Martin writing up some very clever trickery originally done by Corey Quinn:\nWhen you think about it, DNS configuration is actually a \n…\nThe post Apparently, You Can Use Route53 as a Blazingly Fast Database appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", "link": "https://betterprogramming.pub/apparently-you-can-use-route53-as-a-blazingly-fast-database-dd416b56b005", "publishedOn": "2021-05-06T20:03:26.000Z", - "wordCount": 1547, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", + "wordCount": 1523, "title": "Apparently, You Can Use Route53 as a Blazingly Fast Database" }, { @@ -168,9 +171,7 @@ "description": "It’s easy to forget that, as a search engine, Google doesn’t just compare keywords to generate search results. Google knows that if people don’t enjoy their experience on a web page, they won’t stay on the page long enough to …\nThe post What Google’s New Page Experience Update Means for Images on Your Website appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/what-googles-new-page-experience-update-means-for-images-on-your-website/", "publishedOn": "2021-05-06T19:57:40.000Z", - "wordCount": 2518, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", + "wordCount": 2599, "title": "What Google’s New Page Experience Update Means for Images on Your Website" }, { @@ -180,8 +181,6 @@ "link": "https://css-tricks.com/custom-state-pseudo-classes-in-chrome/", "publishedOn": "2021-05-06T14:28:53.000Z", "wordCount": 1025, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Custom State Pseudo-Classes in Chrome" }, { @@ -191,8 +190,6 @@ "link": "https://css-tricks.com/astro/", "publishedOn": "2021-05-05T21:49:23.000Z", "wordCount": 920, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Astro" }, { @@ -202,8 +199,6 @@ "link": "https://infrequently.org/2021/04/progress-delayed/", "publishedOn": "2021-05-05T16:51:23.000Z", "wordCount": 6686, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Progress Delayed Is Progress Denied" }, { @@ -212,9 +207,7 @@ "description": "Let‘s take a quick stroll down memory-lane to revisit how vendor prefixing CSS properties came to be. I hope I don’t trigger PTSD for anyone!\nIt‘s not clear who started prefixing, or when it began exactly. What is clear, is …\nThe post Is Vendor Prefixing Dead? appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/is-vendor-prefixing-dead/", "publishedOn": "2021-05-05T14:18:28.000Z", - "wordCount": 3101, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", + "wordCount": 3140, "title": "Is Vendor Prefixing Dead?" }, { @@ -223,9 +216,7 @@ "description": "This was a great “Today I Learned” for me from Josh W. Comeau. If the font-size of an <input> is 16px or larger, Safari on iOS will focus into the input normally. But as soon as the font-size is …\nThe post 16px or Larger Text Prevents iOS Form Zoom appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", "link": "https://css-tricks.com/16px-or-larger-text-prevents-ios-form-zoom/", "publishedOn": "2021-05-04T21:16:04.000Z", - "wordCount": 676, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", + "wordCount": 758, "title": "16px or Larger Text Prevents iOS Form Zoom" }, { @@ -235,8 +226,6 @@ "link": "https://css-tricks.com/jetpack-backup-roll-back-your-woocommerce-site-without-losing-orders/", "publishedOn": "2021-05-04T21:15:57.000Z", "wordCount": 450, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Jetpack Backup: Roll Back Your WooCommerce Site Without Losing Orders" }, { @@ -246,48 +235,24 @@ "link": "https://css-tricks.com/lets-use-x-x-x-x-for-talking-about-specificity/", "publishedOn": "2021-05-04T14:19:55.000Z", "wordCount": 970, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", "title": "Let’s use (X, X, X, X) for talking about specificity" - }, - { - "id": "https://css-tricks.com/?p=339742", - "author": "Chris Coyier", - "description": "A bona fide CSS trick from Kirupa Chinnathambi here. To match a colored shadow with the colors in the background-image of an element, you inherit the background in a pseudo-element, kick it behind the original, then blur and filter it. …\nThe post Creating Colorful, Smart Shadows appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", - "link": "https://www.kirupa.com/html5/creating_colorful_smart_shadows.htm", - "publishedOn": "2021-05-04T14:19:48.000Z", - "wordCount": 1276, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", - "title": "Creating Colorful, Smart Shadows" - }, - { - "id": "https://css-tricks.com/?p=339419", - "author": "Jay Hoffmann", - "description": "In June of 2006, web developers and designers from around the world came to London for the second annual @media conference. The first had been a huge success, and @media 2006 had even more promise. Its speaker lineup was pulled …\nThe post Chapter 8: CSS appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", - "link": "https://css-tricks.com/chapter-8-css/", - "publishedOn": "2021-05-03T21:52:08.000Z", - "wordCount": 6672, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", - "title": "Chapter 8: CSS" - }, - { - "id": "https://css-tricks.com/?p=339384", - "author": "Chris Coyier", - "description": "I hope people think of SVG as a vector format that is good for drawing things. There is plenty more to know, but here’s one more: SVG is good for composition. You draw things at very specific coordinates …\nThe post Swipey Image Grids appeared first on CSS-Tricks.\nYou can support CSS-Tricks by being an MVP Supporter.", - "link": "https://www.cassie.codes/posts/swipey-image-grids/", - "publishedOn": "2021-05-03T14:35:07.000Z", - "wordCount": 908, - "sourceHref": "https://css-tricks.com/feed/", - "sourceTitle": "CSS-Tricks", - "title": "Swipey Image Grids" } ] }, { - "href": "https://www.smashingmagazine.com/feed/", + "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/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. We’ll focus on some of the main concepts of React and then we’ll 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": 6310, + "title": "Get Started With React By Building A Whac-A-Mole Game" + }, { "id": "https://smashingmagazine.com/2021/05/product-records-organization-collaboration-best-practices/", "author": "hello@smashingmagazine.com (Valeriia Panina)", @@ -295,8 +260,6 @@ "link": "https://smashingmagazine.com/2021/05/product-records-organization-collaboration-best-practices/", "publishedOn": "2021-05-07T10:00:00.000Z", "wordCount": 4127, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "How To Organize Product-Related Assets And Collaborate Better" }, { @@ -306,8 +269,6 @@ "link": "https://smashingmagazine.com/2021/05/improving-performance-shopify-themes-case-study/", "publishedOn": "2021-05-06T11:00:00.000Z", "wordCount": 2617, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Improving The Performance Of Shopify Themes (Case Study)" }, { @@ -317,8 +278,6 @@ "link": "https://smashingmagazine.com/2021/05/reduce-data-sent-client-nextjs/", "publishedOn": "2021-05-05T10:30:00.000Z", "wordCount": 2296, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Reducing HTML Payload With Next.js (Case Study)" }, { @@ -328,8 +287,6 @@ "link": "https://smashingmagazine.com/2021/05/undoing-mistakes-git-part1/", "publishedOn": "2021-05-04T14:30:00.000Z", "wordCount": 1791, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "A Guide To Undoing Mistakes With Git" }, { @@ -339,8 +296,6 @@ "link": "https://smashingmagazine.com/2021/05/smashing-podcast-episode-36/", "publishedOn": "2021-05-04T05:00:00.000Z", "wordCount": 6993, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Smashing Podcast Episode 36 With Miriam Suzanne: What Is The Future Of CSS?" }, { @@ -350,8 +305,6 @@ "link": "https://smashingmagazine.com/2021/05/evolution-jamstack/", "publishedOn": "2021-05-03T07:00:00.000Z", "wordCount": 2141, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "The Evolution Of Jamstack" }, { @@ -361,8 +314,6 @@ "link": "https://smashingmagazine.com/2021/04/desktop-wallpaper-calendars-may-2021/", "publishedOn": "2021-04-30T09:00:00.000Z", "wordCount": 2139, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "May Is In The Air (2021 Wallpapers Edition)" }, { @@ -372,8 +323,6 @@ "link": "https://smashingmagazine.com/2021/04/humble-img-element-core-web-vitals/", "publishedOn": "2021-04-29T12:15:00.000Z", "wordCount": 5325, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "The Humble `` Element And Core Web Vitals" }, { @@ -383,8 +332,6 @@ "link": "https://smashingmagazine.com/2021/04/image-optimization-pre-release/", "publishedOn": "2021-04-28T13:20:00.000Z", "wordCount": 2130, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Meet Image Optimization, A New Smashing Book By Addy Osmani" }, { @@ -394,8 +341,6 @@ "link": "https://smashingmagazine.com/2021/04/easing-functions-css-animations-transitions/", "publishedOn": "2021-04-27T12:00:00.000Z", "wordCount": 2623, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Understanding Easing Functions For CSS Animations And Transitions" }, { @@ -405,8 +350,6 @@ "link": "https://smashingmagazine.com/2021/04/bake-layers-accessibility-testing-process/", "publishedOn": "2021-04-26T11:00:00.000Z", "wordCount": 3279, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "How To Bake Layers Of Accessibility Testing Into Your Process" }, { @@ -416,8 +359,6 @@ "link": "https://smashingmagazine.com/2021/04/guide-supported-modern-css-pseudo-class-selectors/", "publishedOn": "2021-04-23T08:30:00.000Z", "wordCount": 2431, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "A Guide To Newly Supported, Modern CSS Pseudo-Class Selectors" }, { @@ -427,8 +368,6 @@ "link": "https://smashingmagazine.com/2021/04/web-design-done-well-part1/", "publishedOn": "2021-04-22T14:00:00.000Z", "wordCount": 1764, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Web Design Done Well: The Ordinary Made Extraordinary (Part 1)" }, { @@ -438,8 +377,6 @@ "link": "https://smashingmagazine.com/2021/04/incremental-static-regeneration-nextjs/", "publishedOn": "2021-04-21T13:55:00.000Z", "wordCount": 1929, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "A Complete Guide To Incremental Static Regeneration (ISR) With Next.js" }, { @@ -449,8 +386,6 @@ "link": "https://smashingmagazine.com/2021/04/content-fundamental-part-web-design-process/", "publishedOn": "2021-04-21T08:30:00.000Z", "wordCount": 2998, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Why Content Is Such A Fundamental Part Of The Web Design Process" }, { @@ -460,8 +395,6 @@ "link": "https://smashingmagazine.com/2021/04/making-graphql-work-in-wordpress/", "publishedOn": "2021-04-20T09:00:00.000Z", "wordCount": 3482, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Making GraphQL Work In WordPress" }, { @@ -471,8 +404,6 @@ "link": "https://smashingmagazine.com/2021/04/complete-guide-measure-core-web-vitals/", "publishedOn": "2021-04-19T08:30:00.000Z", "wordCount": 7206, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "An In-Depth Guide To Measuring Core Web Vitals" }, { @@ -482,8 +413,6 @@ "link": "https://smashingmagazine.com/2021/04/mistakes-technical-interviews/", "publishedOn": "2021-04-16T09:00:00.000Z", "wordCount": 2912, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Seven Mistakes To Avoid In Your Technical Interviews" }, { @@ -493,8 +422,6 @@ "link": "https://smashingmagazine.com/2021/04/web-design-clients-fast-part2/", "publishedOn": "2021-04-15T11:00:00.000Z", "wordCount": 3522, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "How To Get Web Design Clients Fast (Part 2)" }, { @@ -504,8 +431,6 @@ "link": "https://smashingmagazine.com/2021/04/from-cats-with-love-navigation-guides-workshops/", "publishedOn": "2021-04-15T10:30:00.000Z", "wordCount": 967, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "From Cats With Love: New Navigation, Guides And Workshops" }, { @@ -515,8 +440,6 @@ "link": "https://smashingmagazine.com/2021/04/css-overflow-issues/", "publishedOn": "2021-04-14T11:00:00.000Z", "wordCount": 1917, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Overflow Issues In CSS" }, { @@ -526,8 +449,6 @@ "link": "https://smashingmagazine.com/2021/04/building-video-streaming-app-nuxtjs-node-express/", "publishedOn": "2021-04-13T14:00:00.000Z", "wordCount": 3154, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "Building A Video Streaming App With Nuxt.js, Node And Express" }, { @@ -537,15 +458,24 @@ "link": "https://smashingmagazine.com/2021/04/complete-guide-html-email-templates-tools/", "publishedOn": "2021-04-12T12:30:00.000Z", "wordCount": 3142, - "sourceHref": "https://www.smashingmagazine.com/feed/", - "sourceTitle": "Articles on Smashing Magazine — For Web Designers And Developers", "title": "A Complete Guide To HTML Email" } ] }, { - "href": "https://www.freecodecamp.org/news/rss/", + "title": "freeCodeCamp.org", + "feedUrl": "https://www.freecodecamp.org/news/rss/", + "siteUrl": "https://www.freecodecamp.org/news", "articles": [ + { + "id": "60953e202cd0545b5e943a8b", + "author": "", + "description": "Technical interviews are one of the most stressful parts of landing a job in tech. You don't know what questions the interviewer is going to ask. What if you have no idea how to solve the problem in front of you? What if you freeze up and look like you", + "link": "https://www.freecodecamp.org/news/how-to-acing-your-coding-interview-advice-from-senior-software-engineer/", + "publishedOn": "2021-05-10T17:04:31.000Z", + "wordCount": 1254, + "title": "How to Ace Your Coding Interview – Advice from a Senior Software Engineer" + }, { "id": "609558382cd0545b5e943c6f", "author": "", @@ -553,8 +483,6 @@ "link": "https://www.freecodecamp.org/news/machine-learning-systems-book-recommendations/", "publishedOn": "2021-05-07T21:07:57.000Z", "wordCount": 1065, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Machine Learning Systems Book Recommendations – Learn How to Build and Understand ML Systems" }, { @@ -564,8 +492,6 @@ "link": "https://www.freecodecamp.org/news/recursion-doesnt-have-to-be-scary/", "publishedOn": "2021-05-07T16:59:53.000Z", "wordCount": 1278, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Recursion Might Seem Scary – But it Doesn't Have to Be" }, { @@ -575,8 +501,6 @@ "link": "https://www.freecodecamp.org/news/what-is-lifting-state-up-in-react/", "publishedOn": "2021-05-06T21:41:34.000Z", "wordCount": 1349, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "What Is "Lifting State Up" in React?" }, { @@ -586,8 +510,6 @@ "link": "https://www.freecodecamp.org/news/learn-how-to-use-the-chrome-devtools-to-troubleshoot-websites/", "publishedOn": "2021-05-06T16:26:08.000Z", "wordCount": 426, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Learn How to Use the Chrome DevTools to Troubleshoot Websites" }, { @@ -597,8 +519,6 @@ "link": "https://www.freecodecamp.org/news/optional-types-in-swift/", "publishedOn": "2021-05-06T16:06:35.000Z", "wordCount": 1775, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Optional Types in Swift – How to Use and Unwrap Optionals" }, { @@ -608,8 +528,6 @@ "link": "https://www.freecodecamp.org/news/create-computer-vision-apps-in-the-cloud-with-opencv-and-python/", "publishedOn": "2021-05-05T21:11:40.000Z", "wordCount": 352, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Python and OpenCV Course –Create Computer Vision Apps in the Cloud" }, { @@ -619,8 +537,6 @@ "link": "https://www.freecodecamp.org/news/node-js-async-await-tutorial-with-asynchronous-javascript-examples/", "publishedOn": "2021-05-04T16:07:17.000Z", "wordCount": 2241, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Node.js Async Await Tutorial – With Asynchronous JavaScript Examples" }, { @@ -630,8 +546,6 @@ "link": "https://www.freecodecamp.org/news/copy-a-directory-in-linux-how-to-cp-a-folder-in-the-command-line-in-linux-and-unix-macos/", "publishedOn": "2021-05-04T15:33:12.000Z", "wordCount": 1018, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "Copy a Directory in Linux – How to cp a Folder in the Command Line in Linux and Unix (MacOS)" }, { @@ -641,23 +555,10 @@ "link": "https://www.freecodecamp.org/news/5-ways-to-fetch-data-react-graphql/", "publishedOn": "2021-05-03T17:20:56.000Z", "wordCount": 2501, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", "title": "How to Fetch Data in React from a GraphQL API" - }, - { - "id": "608f553c8eb3fb07cf099da7", - "author": "", - "description": "In this article, we'll see some of the common mistakes that React developers make, and how you can avoid them. So let's get started. Don't Forget that Every Route Change Mounts and Unmounts a ComponentWhenever you're using routing in a React application, you declare routes inside the Switch component. This", - "link": "https://www.freecodecamp.org/news/common-mistakes-react-developers-make-and-how-to-fix-them/", - "publishedOn": "2021-05-03T16:40:08.000Z", - "wordCount": 1164, - "sourceHref": "https://www.freecodecamp.org/news/rss/", - "sourceTitle": "freeCodeCamp.org", - "title": "Common Mistakes React Developers Make – And How to Fix Them" } ] } ], - "cliVersion": "1.5.0" + "cliVersion": "1.6.0" } \ No newline at end of file diff --git a/feed.atom b/feed.atom index 0da586d..689e932 100644 --- a/feed.atom +++ b/feed.atom @@ -1,10 +1,94 @@ - urn:2021-05-10T00:36:39.066Z + urn:2021-05-11T00:36:32.705Z osmos::feed - 2021-05-10T00:36:39.066Z - osmosfeed 1.5.0 + 2021-05-11T00:36:32.705Z + osmosfeed 1.6.0 + + <![CDATA[Topframe]]> + https://css-tricks.com/?p=340020 + + 2021-05-10T21:14:15.000Z + + + Chris Coyier + + + + <![CDATA[Migrating from Parcel to Snowpack]]> + https://css-tricks.com/?p=340208 + + 2021-05-10T21:13:23.000Z + + + Chris Coyier + + + + <![CDATA[How to Ace Your Coding Interview – Advice from a Senior Software Engineer]]> + 60953e202cd0545b5e943a8b + + 2021-05-10T17:04:31.000Z + + + + + + + <![CDATA[Variable Aspect Ratio Card With Conic Gradients Meeting Along the Diagonal]]> + https://css-tricks.com/?p=339203 + + 2021-05-10T14:13:12.000Z + + + Ana Tudor + + + + <![CDATA[Get Started With React By Building A Whac-A-Mole Game]]> + https://smashingmagazine.com/2021/05/get-started-whac-a-mole-react-game/ + + 2021-05-10T11:00:00.000Z + + + hello@smashingmagazine.com (Jhey Tompkins) + + + + <![CDATA[v1.4.0]]> + https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0 + + 2021-05-10T08:55:42.000Z + + + Release notes from osmosfeed + + + + <![CDATA[v1.6.0]]> + https://github.com/osmoscraft/osmosfeed/releases/tag/v1.6.0 + + 2021-05-10T08:15:20.000Z + + + Release notes from osmosfeed + + <![CDATA[v1.5.0]]> https://github.com/osmoscraft/osmosfeed/releases/tag/v1.5.0 @@ -221,16 +305,6 @@ You can support CSS-Tricks by being an MVP Supporter.]]> hello@smashingmagazine.com (Liran Cohen) - - <![CDATA[v1.4.0]]> - https://github.com/osmoscraft/osmosfeed/releases/tag/v1.4.0 - - 2021-05-05T07:20:50.000Z - - - Release notes from osmosfeed - - <![CDATA[v1.3.1]]> https://github.com/osmoscraft/osmosfeed/releases/tag/v1.3.1 @@ -314,20 +388,6 @@ Fixed: Item…]]> Release notes from osmosfeed - - <![CDATA[v1.0.1]]> - https://github.com/osmoscraft/osmosfeed/releases/tag/v1.0.1 - - 2021-05-05T05:16:07.000Z - - - Release notes from osmosfeed - - <![CDATA[16px or Larger Text Prevents iOS Form Zoom]]> https://css-tricks.com/?p=339455 @@ -389,18 +449,6 @@ You can support CSS-Tricks by being an MVP Supporter.]]> 2021-05-04T14:19:55.000Z - - Chris Coyier - - - - <![CDATA[Creating Colorful, Smart Shadows]]> - https://css-tricks.com/?p=339742 - - 2021-05-04T14:19:48.000Z - Chris Coyier @@ -416,18 +464,6 @@ You can support CSS-Tricks by being an MVP Supporter.]]> hello@smashingmagazine.com (Drew McLellan) - - <![CDATA[Chapter 8: CSS]]> - https://css-tricks.com/?p=339419 - - 2021-05-03T21:52:08.000Z - - - Jay Hoffmann - - <![CDATA[How to Fetch Data in React from a GraphQL API]]> 6090187c8eb3fb07cf09a060 @@ -438,28 +474,6 @@ You can support CSS-Tricks by being an MVP Supporter.]]> - - <![CDATA[Common Mistakes React Developers Make – And How to Fix Them]]> - 608f553c8eb3fb07cf099da7 - - 2021-05-03T16:40:08.000Z - - - - - - - <![CDATA[Swipey Image Grids]]> - https://css-tricks.com/?p=339384 - - 2021-05-03T14:35:07.000Z - - - Chris Coyier - - <![CDATA[The Evolution Of Jamstack]]> https://smashingmagazine.com/2021/05/evolution-jamstack/ diff --git a/index.html b/index.html index e489969..bc508cc 100644 --- a/index.html +++ b/index.html @@ -14,908 +14,1174 @@ -
-

2021-05-08

- -

Release notes from osmosfeed

-
+
+

+ +
+ + +
+

+
+ + +
-
-

2021-05-07

- -

freeCodeCamp.org

-
- -
-
- Machine Learning Systems Book Recommendations – Learn How to Build and Understand ML Systems -
-

“Good friends, good books, and a sleepy conscience: this is the ideal life.” ― Mark TwainI hope you’re reading this blog in your pjs looking forward to a rejuvenating and healthy weekend. I have been working on multiple projects lately, from creating Machine Learing Engineering and Machine Learning Operations courses

- Read · 4 min -
-
-
- -
-
- Recursion Might Seem Scary – But it Doesn't Have to Be -
-

Any concept that we don't fully understand can be scary at first. Recursion is a topic that programming students don't learn right away. But that doesn't mean it needs to be scary or cause anxiety. In fact, recursion is a concept that we can define rather simply. According to Wikipedia:

- Read · 4 min -
-
-
-
- - -

CSS-Tricks

-
- -
-
- Is CSS a Programming Language? -
-

I have a real distaste for this question. It might seem like a fun question to dig into on the surface, but the way it enters public discourse rarely seems to be in good faith. There are ulterior motives at … +

+

+
+ +
+
-
-
- Links on Typography -
-

These are a few great links about typography that have been burning a hole in my saved bookmarks folder that I'm just now getting around to sharing. There's good stuff in there, from how to choose typefaces for app design to ideas for how to fix the concept of font sizing in CSS. +

+You can support CSS-Tricks by being an MVP Supporter. +
+ +
+
-
-
- Can I Email… -
-

While I’m 85% certain you’ve seen and used Can I Use…, I bet there is only a 13% chance that you’ve seen and used Can I Email…. It’s the same vibe—detailed support information for web platform features—except instead … +

-
- - -

Articles on Smashing Magazine — For Web Designers And Developers

-
+You can support CSS-Tricks by being an MVP Supporter. + + + + +
+ -
-
- How To Organize Product-Related Assets And Collaborate Better -
-

How do you organize your Google Drive assets? How do you name your Dropbox Paper documents? How do you deal with comments? Let’s get it right.

- Read · 14 min -
-
-
-
- + +
  • +

    Articles on Smashing Magazine — For Web Designers And Developers

    +
    + + +
    +
  • + + +
  • +

    freeCodeCamp.org

    +
    + + + + +
    +
  • + +
    -
    -

    2021-05-06

    - -

    freeCodeCamp.org

    -
    - -
    -
    - What Is "Lifting State Up" in React? -
    -

    Here is a simple and practical example what it means to "lift state up" in React, and how it can help you build your applications. Lifting state up is a common pattern that is essential for React developers to know. It helps you avoid more complex (and often unnecessary) patterns

    - Read · 4 min -
    -
    -
    - -
    -
    - Learn How to Use the Chrome DevTools to Troubleshoot Websites -
    -

    Chrome DevTools is a set of web developer tools built directly into the Google Chrome browser. They can be super helpful for web developers. We just published a crash course that will teach you how to use Chrome DevTools to improve your productivity as a web developer. You will learn

    - Read · 1 min -
    -
    -
    - -
    -
    - Optional Types in Swift – How to Use and Unwrap Optionals -
    -

    If you're coming from Java, C++, or other object-oriented languages, chances are that you've never come across optional types or "optionals". And you might be quite surprised to know that such a concept exists in Swift. Optionals are a fundamental topic that you need to thoroughly understand to code in

    - Read · 6 min -
    -
    -
    -
    - - -

    CSS-Tricks

    -
    - -
    -
    - Apparently, You Can Use Route53 as a Blazingly Fast Database -
    -

    Route53 is DNS management service by AWS. DNS is absolutely not a database, and yet here’s Nicholas Martin writing up some very clever trickery originally done by Corey Quinn: +

    +

    +
    + +
    +
    -
    -
    - What Google’s New Page Experience Update Means for Images on Your Website -
    -

    It’s easy to forget that, as a search engine, Google doesn’t just compare keywords to generate search results. Google knows that if people don’t enjoy their experience on a web page, they won’t stay on the page long enough to … +

    +
    + What Google’s New Page Experience Update Means for Images on Your Website + +
    + ( 9 min ) + It’s easy to forget that, as a search engine, Google doesn’t just compare keywords to generate search results. Google knows that if people don’t enjoy their experience on a web page, they won’t stay on the page long enough to … The post What Google’s New Page Experience Update Means for Images on Your Website appeared first on CSS-Tricks. -You can support CSS-Tricks by being an MVP Supporter.

    -
    Read · 8 min -
    -
    -
    +You can support CSS-Tricks by being an MVP Supporter. +
    + +
    +
    -
    -
    - Custom State Pseudo-Classes in Chrome -
    -

    There is an increasing number of “custom” features on the web platform. We have custom properties (--my-property), custom elements (<my-element>), and custom events (new CustomEvent('myEvent')). At one point, we might even get custom media … +

    -
    - - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +You can support CSS-Tricks by being an MVP Supporter. + + + + +
    + -
    -
    - Improving The Performance Of Shopify Themes (Case Study) -
    -

    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.

    - Read · 9 min -
    -
    -
    -
    - + +
  • +

    Articles on Smashing Magazine — For Web Designers And Developers

    +
    + + +
    +
  • + + +
  • +

    freeCodeCamp.org

    +
    + + + + + + +
    +
  • + + -
    -

    2021-05-05

    - -

    CSS-Tricks

    -
    - -
    -
    - Astro -
    -

    You can’t even look at code or documentation for Astro (publicly) yet — it’s an in-progress idea — but you can watch a video of Fred showing it off to Feross. -I gotta admit: it looks awesome. I’m bullish … -The post Astro appeared first on CSS-Tricks. -You can support CSS-Tricks by being an MVP Supporter.

    - Read · 3 min -
    -
    -
    - -
    -
    - Progress Delayed Is Progress Denied -
    -

    The bombshell article of the week is from Alex Russell of Google/Chrome. Alex has long been super critical of Apple, particularly about how there is literally no option to run any other browser than Safari on iOS. This article isn’t … -The post Progress Delayed Is Progress Denied appeared first on CSS-Tricks. -You can support CSS-Tricks by being an MVP Supporter.

    - Read · 22 min -
    -
    -
    - -
    -
    - Is Vendor Prefixing Dead? -
    -

    Let‘s take a quick stroll down memory-lane to revisit how vendor prefixing CSS properties came to be. I hope I don’t trigger PTSD for anyone! -It‘s not clear who started prefixing, or when it began exactly. What is clear, is … -The post Is Vendor Prefixing Dead? appeared first on CSS-Tricks. -You can support CSS-Tricks by being an MVP Supporter.

    - Read · 10 min -
    -
    -
    -
    - - -

    freeCodeCamp.org

    -
    - -
    -
    - Python and OpenCV Course –Create Computer Vision Apps in the Cloud -
    -

    OpenCV is a library of programming functions mainly aimed at real-time computer vision. We just published a course on the freeCodeCamp.org YouTube channel that will teach you how to use OpenCV in the cloud with Python. Misbah Mohammed created this course. He has a lot of experience with machine

    - Read · 1 min -
    -
    -
    -
    - - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    - -
    -
    - Reducing HTML Payload With Next.js (Case Study) -
    -

    This article showcases a case study of Bookaway’s landing page performance. We’ll see how taking care of the props we send to Next.js pages can make loading times and Web Vitals better.

    - Read · 8 min -
    -
    -
    -
    - - -

    Release notes from osmosfeed

    -
    - -
    -
    - v1.4.0 -
    -

    Added: Basic theme customization: Demo | Source. See documentation.

    - Read · 1 min -
    -
    -
    - - - - + -
    -
    - v1.2.1 -
    -

    Added: Display CLI version in footer.

    - Read · 1 min -
    -
    -
    + -
    -
    - v1.1.6 -
    -

    Fixed: The output website didn't have favicon.

    - Read · 1 min -
    -
    -
    + -
    -
    - v1.1.1 -
    -

    Fixed: Item description didn't use the description property from feed item.

    - Read · 1 min -
    -
    -
    + -
    -
    - v1.1.0 - + +
    +
    +
    + + -
    -
    - v1.0.1 -
    -

    Changed: Runtime dependencies are moved out of devDependencies. This is not a breaking change, but to receive performance benefit, you need to make sure @osmoscraft/osmosfeed is listed as dependencies instead of devDependencies in the package.json of your rss reader site. -Changed: Build target from node12 to node14. -Changed: Switched to a more robust rss parser: rss-parser -Fixed: RSS 1.0 feed <dc:date> was not parsed as publish date. -Chore: npm dependencies version updates.

    - Read · 1 min -
    -
    -
    -
    - +
  • +

    CSS-Tricks

    +
    + + + + + + +
    +
  • + + +
  • +

    Articles on Smashing Magazine — For Web Designers And Developers

    +
    + + +
    +
  • + + +
  • +

    freeCodeCamp.org

    +
    + + +
    +
  • + + -
    -

    2021-05-04

    - -

    CSS-Tricks

    -
    - -
    -
    - 16px or Larger Text Prevents iOS Form Zoom -
    -

    This was a great “Today I Learned” for me from Josh W. Comeau. If the font-size of an <input> is 16px or larger, Safari on iOS will focus into the input normally. But as soon as the font-size is … +

    +

    +
    + +
    +
    -
    -
    - Jetpack Backup: Roll Back Your WooCommerce Site Without Losing Orders -
    -

    Here’s a dilemma: what happens if your WooCommerce site has a problem and the quickest and best way to fix it is to roll back to a previous version? The dilemma is, if you roll back the database, you would … +

    +You can support CSS-Tricks by being an MVP Supporter. +
    + +
    +
    -
    -
    - Let’s use (X, X, X, X) for talking about specificity -
    -

    I was just chatting with Eric Meyer the other day and I remembered an Eric Meyer story from my formative years. I wrote a blog post about CSS specificity, and Eric took the time to point out the misleading nature … +

    - -
    -
    - Creating Colorful, Smart Shadows -
    -

    A bona fide CSS trick from Kirupa Chinnathambi here. To match a colored shadow with the colors in the background-image of an element, you inherit the background in a pseudo-element, kick it behind the original, then blur and filter it. … -The post Creating Colorful, Smart Shadows appeared first on CSS-Tricks. -You can support CSS-Tricks by being an MVP Supporter.

    - Read · 4 min -
    -
    -
    -
    - - -

    freeCodeCamp.org

    -
    +You can support CSS-Tricks by being an MVP Supporter. + + + + +
    + -
    -
    - Node.js Async Await Tutorial – With Asynchronous JavaScript Examples -
    -

    A complete guide to Node.js async await

    - Read · 7 min -
    -
    -
    -
    -
    - Copy a Directory in Linux – How to cp a Folder in the Command Line in Linux and Unix (MacOS) -
    -

    To copy files or directories in Unix-based operating systems (Linux and MacOS), you use the cp command. The cp command is a relatively simple command, but its behavior changes slightly depending on the inputs (files vs directories) and the options you pass to it. To view the documentation or manual

    - Read · 3 min -
    -
    -
    -
    - +
  • +

    Articles on Smashing Magazine — For Web Designers And Developers

    +
    + + -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    + +
    +
  • -
    -
    - A Guide To Undoing Mistakes With Git -
    -

    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'll be looking at in this two-part series: how to undo mistakes using Git.

    - Read · 6 min -
    -
    -
    -
    -
    - Smashing Podcast Episode 36 With Miriam Suzanne: What Is The Future Of CSS? -
    -

    In this episode, we’re 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.

    - Read · 23 min -
    -
    -
    - - +
  • +

    freeCodeCamp.org

    +
    + + + + +
    +
  • + + -
    -

    2021-05-03

    - -

    CSS-Tricks

    -
    +
    +

    +
    - - -

    freeCodeCamp.org

    -
    +
  • +

    freeCodeCamp.org

    +
    + + +
    +
  • -
    -
    - How to Fetch Data in React from a GraphQL API -
    -

    Let's go through the five best ways that you can fetch data with React from a GraphQL API. While there are a couple of popular libraries which are made to interact with GraphQL APIs from a React application, there are many different ways to fetch data with GraphQL. I've included

    - Read · 8 min -
    -
    -
    - -
    -
    - Common Mistakes React Developers Make – And How to Fix Them -
    -

    In this article, we'll see some of the common mistakes that React developers make, and how you can avoid them. So let's get started. Don't Forget that Every Route Change Mounts and Unmounts a ComponentWhenever you're using routing in a React application, you declare routes inside the Switch component. This

    - Read · 4 min -
    -
    -
    -
    - - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    - -
    -
    - The Evolution Of Jamstack -
    -

    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.

    - Read · 7 min -
    -
    -
    -
    - +
    -
    -

    2021-04-30

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-29

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-28

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-27

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-26

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-23

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-22

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-21

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    - -
    -
    - A Complete Guide To Incremental Static Regeneration (ISR) With Next.js -
    -

    Incremental Static Regeneration (ISR) is a new evolution of the Jamstack, allowing you to update static content instantly without needing a full rebuild of your site. The hybrid approach of Next.js allows you to use ISR for e-commerce, marketing pages, blog posts, ad-backed media, and more.

    - Read · 6 min -
    -
    -
    +
    +

    +
    + + +
    -
    -

    2021-04-20

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-19

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-16

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-15

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    - -
    -
    - How To Get Web Design Clients Fast (Part 2) -
    -

    Selling is key to growing your web design business, but it doesn’t have to be complicated! With clear goals, customer research, and proven closing techniques, anyone can find new clients.

    - Read · 12 min -
    -
    -
    +
    +

    +
    + + +
    -
    -

    2021-04-14

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-13

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    -
    -

    2021-04-12

    - -

    Articles on Smashing Magazine — For Web Designers And Developers

    -
    +
    +

    +
    - +
    diff --git a/styles.css b/styles.css index f2524d0..779ac5c 100644 --- a/styles.css +++ b/styles.css @@ -1,6 +1,9 @@ :root { - /* scheme: "Gruvbox dark, medium" - author: "Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox)" */ + /** + * Palette + * Gruvbox dark, medium + * Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox) + */ --base00: #282828; /* ---- */ --base01: #3c3836; /* --- */ --base02: #504945; /* -- */ @@ -17,101 +20,175 @@ --base0D: #83a598; /* blue */ --base0E: #d3869b; /* purple */ --base0F: #d65d0e; /* brown */ + + /** + * Typograph + */ + --font-family-default: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, + "Helvetica Neue", sans-serif; + --font-size-scaler: 62.5%; /* 1rem = 10px */ + --font-size-m: 1.4rem; + --font-size-s: 1.2rem; + + /** + * Components + */ + --body-color: var(--base04); + --body-bg: var(--base00); + + --daily-heading-color: var(--base04); + + --source-name-color: var(--base0A); + --source-name-hover-color: var(--base0A); + + --article-title-color: var(--base05); + --article-title-hover-color: var(--base07); + --article-summary-color: var(--base04); + --article-summary-hover-color: var(--base07); + + --accordion-content-rail-color: var(--base03); + --accordion-content-hover-rail-color: var(--base04); + --accordion-title-marker-color: var(--base03); + --accordion-title-hover-marker-color: var(--base04); + + --card-shadow: 0px 2px 1px -1px rgb(0 0 0 / 20%), 0px 1px 1px 0px rgb(0 0 0 / 14%), 0px 1px 3px 0px rgb(0 0 0 / 12%); + --card-bg: var(--base01); + --card-radius: 4px; + + --footer-color: var(--base04); + --footer-link-hover-color: var(--base07); +} + +/** + * Internals below + * + * If you can't create a specific look and feel with the configuration above, + * you might have reached the customization limit of the template. + * + * Options: + * 1. File an issue with the template. + * 2. Target specific elements and write your own CSS. A future change in HTML may break your style. + * 3. (Coming soon...) Write your own template with Template Extensibility API. + */ +html { + font-size: var(--font-size-scaler); } body { - background-color: var(--base00); - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", - sans-serif; - color: var(--base06); + background-color: var(--body-bg); + font-family: var(--font-family-default); + color: var(--body-color); margin: 0; + gap: 24px; padding: 16px; + display: grid; } :not(:focus-visible) { outline: none; } -.day-container { - padding: 16px 16px 16px 16px; - background: var(--base01); - margin-bottom: 16px; +.card { + border-radius: var(--card-radius); + box-shadow: var(--card-shadow); + background: var(--card-bg); } -h2 { - font-size: 12px; - margin: 0; - color: var(--base0A); -} - -h3 { - color: var(--base04); - font-size: 12px; - line-height: 16px; - font-weight: 400; - margin: 12px 0px 4px; -} - -p { - margin: 0; -} - -summary { - font-weight: 600; -} - -summary:hover { - text-decoration: underline; - cursor: pointer; - color: var(--base0D); -} - -details { - --border-color: transparent; - - padding: 2px 4px; - font-size: 14px; - border: 1px solid var(--border-color); - border-radius: 4px; -} -details[open] { - background-color: var(--base02); -} -.details-content { - display: grid; +.sources { padding: 12px 16px; + list-style: none; + margin: 0; + display: grid; gap: 16px; } -details a { - font-size: 14px; - text-decoration: none; - border: 1px solid var(--base04); - color: var(--base04); - display: inline-block; - padding: 2px 8px; - border-radius: 4px; - justify-self: start; +.daily-heading { + font-size: var(--font-size-s); + font-weight: 600; + margin: 0 0 8px 0; + padding-left: 16px; + color: var(--daily-heading-color); } -details a:hover { - background-color: var(--base0D); - border-color: var(--base0D); - color: var(--base01); +.source { + display: grid; + gap: 4px; +} + +.source-name { + font-size: var(--font-size-s); + font-weight: 400; + margin: 0; +} +.source-name__link { + color: var(--source-name-color); + text-decoration: none; +} +.source-name__link:hover { + color: var(--source-name-hover-color); + text-decoration: underline; +} + +.article-expander { + padding: 2px 4px; + border-radius: 4px; +} + +.article-expander__title { + color: var(--article-title-color); + font-size: var(--font-size-m); + font-weight: 600; +} +.article-expander__title:hover { + cursor: pointer; + color: var(--article-title-hover-color); +} +.article-expander__title::marker { + color: var(--accordion-title-marker-color); +} +.article-expander__title:hover::marker { + color: var(--accordion-title-hover-marker-color); +} + +.article-summary-link { + color: var(--article-summary-color); + font-size: var(--font-size-m); + text-decoration: none; +} + +.article-summary-link:hover { + color: var(--article-summary-hover-color); + --accordion-content-rail-color: var(--accordion-content-hover-rail-color); +} + +.article-summary-box-outer { + display: block; + padding: 4px 8px 8px 4px; +} + +.article-summary-box-inner { + padding-left: 8px; + border-left: 1px solid var(--accordion-content-rail-color); +} + +.article-reading-time { + font-weight: 600; } footer { - color: var(--base04); - font-size: 12px; + color: var(--footer-color); + font-size: var(--font-size-s); display: flex; + padding: 0 16px; justify-content: space-between; } -footer a { - color: inherit; +.footer-link { + color: var(--footer-link-text); text-decoration: none; } -footer a:hover { - color: var(--base0D); +.footer-link:hover { + color: var(--footer-link-hover-color); + text-decoration: underline; }