Welcome to my Weekly Digest #14 🌱
This weekly digest contains a lot of interesting and inspiring articles, videos, tweets, podcasts, and designs I consumed during this week.
Interesting articles to read
Top-level await is available in Node.js modules
Node.js' top-level is available in ES modules. Find out about three ways to enable it and untangle your code.
Top-level await is available in Node.js modules
From Express to Fastify in Node.js
It has been almost two years since Express has been updated, and a lot of new great tools came around since then. I recently tried Fastify for the first time, and it took me no longer than a few minutes to decide to make a switch. Let me share with you a few main reasons.
Sass Guidelines improvements
Kitty Giraudel recently came back to Sass Guidelines. Not to update the content, but to work on the site itself. It turns out they learned a lot in the last few years and found many improvements worth doing. They thought it would be interesting to discuss them in this post. Here are the different topics we’ll go through.
Dark mode in 5 minutes, with inverted lightness variables
By now, you probably know that you can use custom properties for individual color components, to avoid repeating the same color coordinates multiple times throughout your theme. You may even know that you can use the same variable for multiple components, e.g. HSL hue and lightness
Dark mode in 5 minutes, with inverted lightness variables
Top React toast libraries compared
The top React toast libraries for when it's more trouble than it's worth to create your own custom toast components.
Top React toast libraries compared - LogRocket Blog
Some great videos I watched this week
Fix Your Mistakes, Don't Commit Them! Pre-Commit Git Hook Checks with Husky and Lint Staged.
It's time to stop committing broken tests, ugly code, type errors and lint errors to your git repository. With Husky, we can hook into git's pre-commit hook to only allow code into our git repository that passes all of those above checks. Using lint-staged we can make it more efficient to focus our energy on the changed files.
5 Quick Tips about TypeScript
In this lesson we look at 5 simple ways TypeScript can describe your JavaScript code.
The examples are taken from https://typescript-exercises.github.io/ and you can use this website to play around with the code yourself
by Basarat Ali
Responsible JavaScript
While the performance of JavaScript engines in browsers have seen continued improvement, the amount of JavaScript we serve increases unabated. We need to use JavaScript more responsibly, which means we must rely on native browser features where prudent, use HTML and CSS when appropriate, and know when too much JavaScript is just that: Too much.
10 CSS Pro Tips - Code this, NOT that!
Top 10 CSS Pro Tips to make your life as a web developer more productive. Some of the best programmers say CSS is too hard… but you might be surprised at how modern techniques can dramatically improve your code.
by Fireship
Chrome 90 - What’s New in DevTools
Debugging support for CSS Flexbox, performance heads-up display on page, issues tab updates and more.
Useful GitHub repositories
forgit
💤 A utility tool powered by fzf for using git interactively.
💤 forgit
Utility tool for using git interactively. Powered by junegunn/fzf.
This tool is designed to help you use git more efficiently It's lightweight and easy to use.
📥 Installation
Make sure you have fzf
installed.
# for zplug
zplug 'wfxr/forgit'
# for zgen
zgen load 'wfxr/forgit'
# for antigen
antigen bundle 'wfxr/forgit'
# for fisher
fisher install wfxr/forgit
# for omf
omf install https://github.com/wfxr/forgit
# for zinit
zinit load wfxr/forgit
# manually
# Clone the repository and source it in your shell's rc file.
You can run the following command to try forgit
without installing:
# for bash / zsh
source <(curl -sSL git.io/forgit)
# for fish
source (curl -sSL git.io/forgit-fish | psub)
📝 Features
-
Interactive
git add
selector (ga
)
-
Interactive
git log
viewer (glo
)
The log graph can be disabled by option FORGIT_LOG_GRAPH_ENABLE
(see…
Vite
Vite is a new breed of frontend build tool that significantly improves the frontend development experience.
Vite ⚡
Next Generation Frontend Tooling
-
💡 Instant Server Start -
⚡️ Lightning Fast HMR -
🛠️ Rich Features -
📦 Optimized Build -
🔩 Universal Plugin Interface -
🔑 Fully Typed APIs
Vite (French word for "quick", pronounced /vit/
, like "veet") is a new breed of frontend build tool that significantly improves the frontend development experience. It consists of two major parts:
-
A dev server that serves your source files over native ES modules, with rich built-in features and astonishingly fast Hot Module Replacement (HMR).
-
A build command that bundles your code with Rollup, pre-configured to output highly optimized static assets for production.
In addition, Vite is highly extensible via its Plugin API and JavaScript API with full typing support.
Migrating from 1.x
Check out the Migration Guide if you are upgrading from 1.x.
Packages
Package | Version (click for changelogs) |
---|---|
vite | |
@vitejs/plugin-vue | |
@vitejs/plugin-vue-jsx |
Photopea
Photopea.com is a free online tool for editing raster and vector graphics with support for PSD, AI, and Sketch files.
Photopea.com is a free online tool for editing raster and vector graphics with support for PSD, AI, and Sketch files.
Since Photopea is not fully open-source, this repository serves as a place for bug reports, feature requests, and general discussion.
Supported Formats
- Complex: PSD, AI, XCF, Sketch, XD, FIG, PXD, CDR, SVG, EPS, PDF, PDN, WMF, EMF.
- Raster: PNG (APNG), JPG, GIF, WebP, ICO, BMP, PPM/PGM/PBM, TIFF, DDS, IFF, TGA.
- Raw: DNG, NEF, CR2, ARW, RAF, GPR, 3FR, FFF.
Where You Can Find Us
-
✉️ support@photopea.com -
👍 facebook.com/photopea -
🐦 twitter.com/photopeacom -
📙 reddit.com/r/photopea -
🎉 photopea.com
Other
- API, Blog, Learn, Translations
You Don't Need GUI
Graphical user interfaces are super friendly to computer users. They were introduced in reaction to the perceived steep learning curve of command-line interfaces (CLIs).
you-dont-need / You-Dont-Need-GUI
Stop relying on GUI; CLI **ROCKS**
You Don't Need GUI
Graphical user interfaces are super friendly to computer users. They were introduced in reaction to the perceived steep learning curve of command-line interfaces (CLIs).
However, they often require more resources, are less powerful and hard to automate via scripting.
As a computer expert, we want to be more efficient and do our jobs better. We know that command words may not be easily discoverable or mnemonic, so we try to list some common tasks that you might be tempted to do in GUI.
Quick links
- copy a file
- duplicate a file
- copy a directory
- duplicate a directory
- move a file
- rename a file
- move a directory
- rename a directory
- merge directories
- create a new file
- create a new directory
- show file/directory size
- show file/directory info
- open a file with the default program
- open a file in any application
- zip a directory
- …
dribbble shots
Campus - Meetup App
by Jabel
Dompet - Wallet app design
by voxy St
Job Finder App
Ven.
Tweets
Are you planning to learn React? If yes, these 35 tweets can make the process easier for you👇🏻
Long Thread🧵09:31 AM - 06 Apr 2021
Sneak Preview: JPEG XL decoding working in Chrome - 65% smaller than a JPEG at comparable quality.
JXL aims to offer better image quality at low sizes, progressive decoding, lossless JPEG recompression and more: goo.gle/jxl-cl16:59 PM - 07 Apr 2021
Dan 👨🏻💻@web_dev_dan15:46 PM - 08 Apr 2021
Picked Pens
Smash to submit button
by Aaron Iker
Cool Text
by Christine Banlawi
Podcasts worth listening
Hasty Treat - VSCode Extensions and Tips
In this Hasty Treat, Scott and Wes talk about their favorite VSCode extensions, tips, and workflows!
Cursors and Pointers
What do mouse pointers, potatoes, and your fingers have in common? They can all interact with a screen! With CSS we can define how active our web boxes are, which areas are interactive, and what style the cursor should be. Maybe that means your mouse arrow becomes an animated magic wand, or maybe not.
Front-End Monorepo
We talked about our transition to a monorepo back in episode 305. This move has all sorts of advantages for us, like the simplicity of having a single repo to pull and be up to date with and linting/formatting code in a consistent way across the entire code base of CodePen.
Thank you for reading, talk to you next week, and stay safe! 👋
Top comments (0)