un

Enhancing the operational stability of unencapsulated perovskite solar cells through Cu–Ag bilayer electrode incorporation

J. Mater. Chem. A, 2020, 8,8684-8691
DOI: 10.1039/D0TA01606C, Paper
Chieh-Ting Lin, Jonathan Ngiam, Bob Xu, Yu-Han Chang, Tian Du, Thomas J. Macdonald, James R. Durrant, Martyn A. McLachlan
Incorporation of bilayer electrodes (Cu:Ag) significantly reduces electrode corrosion and device degradation in perovskite solar cells operating in air. A symbiosis exists whereby Ag inhibits Cu oxidation and Cu prevents interfacial reactions between the perovskite (MAPbI3) and Ag.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Understanding the mechanism of byproduct formation with in operando synchrotron techniques and its effects on the electrochemical performance of VO2(B) nanoflakes in aqueous rechargeable zinc batteries

J. Mater. Chem. A, 2020, Advance Article
DOI: 10.1039/D0TA00858C, Paper
Qiang Pang, Hainan Zhao, Ruqian Lian, Qiang Fu, Yingjin Wei, Angelina Sarapulova, Junqi Sun, Chunzhong Wang, Gang Chen, Helmut Ehrenberg
The byproduct protects the vanadium-based positive electrode of ARZBs and facilitates Zn2+ insertion into the electrode.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

A universal cross-linking binding polymer composite for ultrahigh-loading Li-ion battery electrodes

J. Mater. Chem. A, 2020, Advance Article
DOI: 10.1039/D0TA00714E, Paper
Dong Wang, Qian Zhang, Jie Liu, Erying Zhao, Zhenwei Li, Yu Yang, Ziyang Guo, Lei Wang, Shanqing Zhang
A general, facile-operability, and sustainable strategy to achieve ultrahigh-loading electrodes has been proposed that is simply replacing the traditional PVDF binder with an eco-friendly and robust c-PAA-XG binder with a high-efficiency damper.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

The highly efficient collection of underwater oil droplets on an anisotropic porous cone surface via an electric field

J. Mater. Chem. A, 2020, 8,8605-8611
DOI: 10.1039/D0TA02055A, Paper
Yufeng Yan, Qiuya Zhang, Yan Li, Zhenyan Guo, Dongliang Tian, Xiaofang Zhang, Lei Jiang
The highly efficient collection of underwater oil droplets on an anisotropic porous cone surface via an electric field was demonstrated.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Reversible changes in the electronic structure of carbon nanotube-hybrids upon NO2 exposure under ambient conditions

J. Mater. Chem. A, 2020, Advance Article
DOI: 10.1039/D0TA02749A, Paper
Open Access
Filippo Fedi, Oleg Domanov, Hidetsugu Shiozawa, Kazuhiro Yanagi, Paolo Lacovig, Silvano Lizzit, Andrea Goldoni, Thomas Pichler, Paola Ayala
Single-walled carbon nanotubes have enormous potential for gas sensing. This study shows that cluster filling is a key to high sensitivity and it opens the possibility for a very high desorption at ambient temperature.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

The nature of the methylamine–MAPbI3 complex: fundamentals of gas-induced perovskite liquefaction and crystallization

J. Mater. Chem. A, 2020, Advance Article
DOI: 10.1039/D0TA02494E, Paper
Dmitry Bogachuk, Lukas Wagner, Simone Mastroianni, Michael Daub, Harald Hillebrecht, Andreas Hinsch
In this work we scrutinize the exact interaction mechanisms between methylamine and perovskite based on extensive experimental evidence.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Smart Porous Wood Supported Flower-like NiS/Ni Conjuction with Vitrimer Co-effect as Multifunctional Material with Reshaping, Shape-memory and Self-healing for High-Performance Supercapacitors, Catalysts and Sensors

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA03664A, Paper
Chuanyin Xiong, Bingbing Li, Heguang Liu, Wei Zhao, Chao Duan, Haiwei Wu, Yong Ni
Wood-based materials are attracting more and more attention for applications in energy storage, due to their environment friendly and numerous channels structure. However, the poor conductivity and flexibility of wood...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Flexible and transparent sensors for ultra-low NO2 detection at room temperature under visible lights

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA02934C, Paper
Xiao-Xue Wang, Hua-Yao Li, Xin Guo
Metal oxide based gas sensors should mostly work at high temperatures; the high working temperature possesses safety concerns and high energy consumption, which makes portable and wearable devices almost impossible,...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Polyimide/ZIF-7 Mixed-Matrix Membranes: Understanding in-situ Confined Formation of ZIF-7 Phases inside Polymer and Their Effects on Gas Separations

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA02761H, Paper
Sunghwan Park, Kie Yong Cho, Hae-Kwon Jeong
Polymer-modification-enabled in-situ metal-organic framework formation (PMMOF) is potentially a paradigm-shifting preparation method for polymer/MOF mixed-matrix membranes (MMMs). However, the actual reaction conditions of in-situ formation of MOF in the confined...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

The fabrication of IMo6@iPAF-1 as an enzyme mimic in heterogeneous catalysis for oxidative desulfurization under O2 or air

J. Mater. Chem. A, 2020, Advance Article
DOI: 10.1039/C9TA14066B, Paper
Yue Li, Jian Song, Mengting Jiang, Mbage Bawa, Xiaohong Wang, Yuyang Tian, Guangshan Zhu
Na5[IMo6O24]·3H2O and a porous aromatic framework (iPAF-1) were used to build an off-the-shelf building material (IMo6@iPAF-1) to realize the highly efficient oxidation of organic sulfurs like oxygenase.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Understanding the structural phase transitions in lithium vanadium phosphate cathode for lithium-ion batteries

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/C9TA12435G, Paper
Woong Oh, Hyunyoung Park, Bong-Soo Jin, Ranjith Thangavel, Won-Sub Yoon
Developing high-energy lithium-ion batteries with long stability is critical for realizing sustainable energy applications; however, it remains highly challenging. Exploring multi-redox based electrode materials can help to achieve high capacity...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Highly efficient removal of uranium from highly acidic media achieved on a phosphine oxide and amino functionalized superparamagnetic composite polymer adsorbent

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA01633K, Paper
Shiao Zhang, Dingzhong Yuan, Qinghua Zhang, Yun Wang, Yan Liu, Jizhou Zhao, Bibo Chen
It is very necessary to develop the magnetic adsorbents for the efficient extraction of uranium from highly acidic media. In this work, a novel magnetic adsorbent Fe3O4/P (DMAA-DMP) functionalized with...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Surface-Functionalized Palladium Catalysts for Electrochemical CO2 Reduction

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA03427D, Paper
Rong Xia, Sheng Zhang, Xinbin Ma, Feng Jiao
Rational design and synthesis of efficient catalysts for electrochemical CO2 reduction is a critical step towards practical CO2 electrolyzer systems. In this work, we report a strategy to tune the...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Hydrophilic ultrafiltration membranes with surface-bound eosin Y for an integrated synthesis-separation system of aqueous RAFT photopolymerization

J. Mater. Chem. A, 2020, Advance Article
DOI: 10.1039/D0TA03112G, Paper
Yujie Zhao, Senlin Shao, Jiangbin Xia, Ya Huang, Yu Chi Zhang, Xue Li, Tao Cai
The photocatalyst-based ultrafiltration membrane fitted integrated synthesis–separation system holds the promises to bridge the gap between the precision of PET-RAFT polymerization and the efficiency of membrane separation process.
To cite this article before page numbers are assigned, use the DOI form of citation above.
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Aliovalent Fluorine Doping and Anodization-Induced Amorphization Enable Bifunctional Catalysts for Efficient Water Splitting

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA00876A, Paper
Chenglin Zhong, Zhen Han, Tongtong Wang, Qin-chao Wang, Zihan Shen, Qingwen Zhou, Jiaao Wang, Shuo Zhang, Xin Jin, Shengwen Li, Peng Wang, Daqiang Gao, Yong-Ning Zhou, Huigang Zhang
High-efficiency non-precious electrocatalysts are urgently demanded in hydrogen evolution reaction (HER) and oxygen evolution reaction (OER). Transition metal oxides catalysts have shown high activity for the OER in alkaline medium,...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Rational Understanding of the Catalytic Mechanism of Molybdenum Carbide on Polysulfide Conversion in Lithium-Sulfur Battery

J. Mater. Chem. A, 2020, Accepted Manuscript
DOI: 10.1039/D0TA01217C, Paper
Mingzhu Sun, Zhao Wang, Xue Li, Haibo Li, Hongsheng Jia, Xiangxin Xue, Ming Jin, Jiaqi Li, Yu Xie, Ming Feng
Lithium-sulfur (Li-S) batteries are promising candidates for next-generation energy storage devices due to its high theoretical energy density, whose practical applications are mainly hampered by the shuttle effect of intermediate...
The content of this RSS Feed (c) The Royal Society of Chemistry




un

Samsung Galaxy S20 Plus review: Wholesome package justifies premium pricing

Several major upgrades to predecessor Galaxy S10 Plus but the same price tag of Rs 73,999 make the Galaxy 20 Plus a worthy premium smartphone




un

Latest News: Reynolds New Ambassador for Young People's Literature

Jason Reynolds has been appointed as the seventh National Ambassador for Young People’s Literature for 2020-2021. The Newbery Honor recipient succeeds Jacqueline Woodson, who served as National Ambassador in 2018-2019.

Reynolds is the author of 13 books for young people including his most recent, “Look Both Ways: A Tale Told in Ten Blocks,” a National Book Award finalist, which was named a Best Book of 2019 by NPR, The New York Times, The Washington Post and TIME. 

Click here for more information.




un

Upcoming Events: Library Announces Annual Cherry Blossom Festival Events

 

The Library of Congress announces two cultural events during the 2020 National Cherry Blossom Festival, an annual commemoration of Japan’s 1912 gift to the U.S. of 3,020 cherry trees. An artwork display and book launch for “Cherry Blossoms: Sakura Collections from the Library of Congress” will kick off the Library’s celebration on Thursday, April 9. The gift book visualizes the fascinating history of cherry blossoms through original works of art from the Library of Congress collections.

Click here for more information.

Request ADA accommodations five business days in advance at (202) 707-6362 or ADA@loc.gov.




un

Live! At the Library Event Series Launched

The Library of Congress is extending its public hours on Thursday evenings and will feature regular live programming for visitors as part of a new initiative, Live! At the Library, beginning April 2 to showcase the broad range of literature, poetry, art, music, digital collections and other holdings at the national library.

The Library’s Thomas Jefferson Building and all exhibitions at the Library – currently featuring the long fight for women’s voting rights and Rosa Parks’ groundbreaking role in civil rights – will be open for extended hours on Thursday evenings from 5 to 8 p.m. every week. Exhibitions and programs will remain free and open to everyone. The Main Reading Room will be open for research during this time, and visitors and researchers will have the opportunity to register for reader cards. Other selected reading rooms may also be open on Thursday nights as a part of evening programming.

Click here for more information.

Request ADA accommodations five business days in advance at (202) 707-6362 or ADA@loc.gov.




un

NEWS: Library Limits Building Access Until April 1

Out of an abundance of caution, the Library of Congress announced today that all Library of Congress buildings and facilities will be closed to the public starting at 5 p.m. today until Thursday, April 1, 2020 at 8 a.m. to reduce the risk of transmitting COVID-19 coronavirus.

Library employees, contractors, authorized visitors and other credentialed Capitol Hill staff will continue to have access to the buildings. During the closure, all Library-sponsored public programs are postponed or cancelled through the end of March.

Click here for more information.




un

NEWS: Library of Congress Cancels Events Until May 11

The Library of Congress announced today that all public events at the Library are canceled until May 11 to reduce the risk of transmitting COVID-19 coronavirus. Whenever possible, the Library will reschedule the public programs that have been canceled. We will also provide regular public updates on the operating status of Library facilities. Library of Congress buildings and facilities remain closed to the public until Wednesday, April 1, 2020 at 8 a.m.

Click here for more information.




un

NEWS: Library Buildings Closed Until Further Notice

Out of an abundance of caution, all Library of Congress buildings and facilities will be closed to the public, including researchers and others with reader identification cards, until further notice to reduce the risk of transmitting COVID-19 coronavirus. The Library has reduced the number of people in Library buildings to a very small number of necessary individuals.

Click here for more information.




un

UPDATE: Library Cancels Public Events Until July 1

The Library of Congress announced today that it will cancel all scheduled public events at the Library until July 1 as part of its ongoing efforts to reduce the risk of transmitting COVID-19 coronavirus. Whenever possible, the Library will reschedule the public programs that have been canceled. We will also provide regular public updates on the operating status of Library facilities.

Click here for more information.




un

WordPress Breadcrumbs: How to Use This Function?

Unfortunely, WordPress doesn’t have a default function to display a breadcrumb. We’ll see how to create this navigation technique, and display it on our posts, pages and categories archives. Breadcrumb…What’s that?!? Wikipedia says: Breadcrumbs or breadcrumb trail are a navigation technique used in user interfaces. Its purpose is to give users a way to keep …

WordPress Breadcrumbs: How to Use This Function? Read More »




un

Gilead under gun to mass-produce virus drug or risk exclusivity

All of that could add up to market wins if remdesivir lives up to expectations and Gilead can ramp up to sufficiently respond to Covid-driven demand. But if it can’t, Gilead could be “very vulnerable” to the federal government using its powers to compel the licensure of remdesivir patents, Roth said.




un

Zydus Cadila launches generic prostate cancer drug at nearly 70% less price in India

"Our aim is to make a preferred choice of therapy like Obynx available and more accessible to people suffering from cancer. Bridging these unmet gaps comes from our patient-first approach," Zydus Cadila MD Sharvil Patel told .




un

Untitled #0 / Flat Earth Society

MEDIA PhonCD J F616 unt




un

Prog: Lunar sea.

MEDIA PhonCD ML5.P76 v.90




un

Breaking ground: a celebration of women composers / Natalie Mannix, Stephanie Bruning

MEDIA PhonCD M316 bre




un

Anasa: True colors ; Unforgettable / George Tsontakis

MEDIA PhonCD T789 orcmu




un

Unanswered love / Aribert Reimann, Hans Werner Henze, Wolfgang Rihm

MEDIA PhonCD B227 una




un

Tun-tu: chamber music renewed / Ying Wang

MEDIA PhonCD Y16 insmu




un

Sanguine regum / Anu Sun

MEDIA PhonCD P Sun71 san




un

Near East Quartet / Sungjae Son

MEDIA PhonCD J N27 nea




un

Double concertos: Brahms, Rihm, Harbison / Mira Wang, Jan Vogler, Royal Scottish National Orchestra, Peter Oundjian

MEDIA PhonCD W18412 dou




un

The greatest showman: original motion picture soundtrack / original songs by Benj Pasek & Justin Paul

MEDIA PhonCD P263 gre




un

Concertos: Sunburst / David Gompper

MEDIA PhonCD G587 orcmu a




un

Speak, be silent / Chaya Czernowin, Anna Thorvaldsdóttir, Mirela Ivičević, Liza Lim, Rebecca Saunders

MEDIA PhonCD R479 spe




un

Blossoms and cannons: a birthday collage: for piano and pre-recorded sounds / Elliott Schwartz

MEDIA CD Mu pts Sch94.6 blo




un

Messe C-Moll KV 427 mit Werkeinführung / Mozart

MEDIA PhonCD M877 ma427 e




un

Piano works / Charles Gounod

MEDIA PhonCD G741 piamu




un

Palm Sunday / Stuart Saunders Smith

MEDIA PhonCD Sm66 piamu




un

Soundpieces 1-7 / John J. Becker

MEDIA PhonCD B3878 insmu




un

Protobilly: the minstrel & Tin Pan Alley DNA of country music, 1892-2017.

MEDIA PhonCD P P946




un

Chinese fantasies / Fangye Sun, violin

MEDIA PhonCD Sun71 chi




un

Web Tools #347 - JS Testing, Media Tools, Git/CLI Tools, Uncats

Web Tools Weekly

Issue #347 • March 12, 2020

The following intro is a paid product review for Wallaby, a developer productivity tool that runs your JavaScript and TypeScript tests immediately as you type.

Code testing is a huge part of the current JavaScript landscape, so if it's crucial that you run tests on your code base regularly, you'll love Wallaby. Wallaby is available as an extension for VS Code, JetBrains Editors, Visual Studio, Sublime Text, and Atom. I'll demonstrate here how powerful Wallaby is by showing you how it works within VS Code.

Once you've installed and configured Wallaby, you can open any project and run it via its Command Palette, shown here:

 
Wallaby's Command Palette in VS Code


When you choose the Start command, you can open any JavaScript or TypeScript file and you'll see something like the following:

 
Wallaby's code coverage and logs


Notice a few things:
 

  • The colored squares on the left indicate code coverage. These squares can be grey, yellow, green, pink, or red, indicating various levels of coverage from your tests.
  • The lines that contain console.logs have their outputs displayed to the right. These get updated in real time as you write or edit your code (similar to Quokka.js, another tool by the same developers that I've reviewed previously)


As you can see, if you're accustomed to using a lot of console.logs and adding breakpoints to your code, Wallaby is going to dramatically increase your productivity. You get that feedback immediately within the code, without actually executing it in a browser or other environment. In other words, your code editor is the console, with the bonus of everything displaying in its immediate code context.

When it's running, Wallaby displays the number of failed and passed tests in the status bar:
 

Wallaby displays passed/failed tests in the status bar


Clicking on the failed and passed tests in the status bar will open Wallaby's Output Channel, with a little more detail on what's happening with your tests:

 
Wallaby's Output Panel


One of the features that has caught the attention of many developers is Wallaby's Time Travel Debugger, which was added to Wallaby in December. This feature allows you to move forward or backwards through your code to understand what led to a specific bug.

 
Wallaby's Debugger View


You can start the debugger on a line of code where your test begins, or on any line executed by one of your tests. Once begun, you can run a number of different commands to get to the root of a particular issue. This is helped out by the Debugger View that opens in the left panel. Pretty powerful! And again, part of the power is that this is all available right inside your code base – no need to open up a separate environment like the developer tools in your browser.

There's a lot more to Wallaby that I haven't mentioned here, but this should be enough to give you a taste of some of the primary features of the tool, which is free to try. Check out the docs for more on what I've only briefly touched on here.

Now on to this week's tools!

 

Media Tools (SVG, Video, etc)

Iconset
Free, cross-platform SVG icon organizer app for designers, developers or product teams. Works on both Mac and Windows.

Open Peeps
A hand-drawn illustration library to create scenes of people, each drawing available in PNG or SVG format.

Cosha
JavaScript utility to add colored shadows to your images. Use via defaults or customize via the API.

Filmage Screen
Screen recorder and video editor for Mac. All-in-one video toolbox that lets you record HD video, edit video, make animated GIFs, convert video, and more.

Biteable
Video making platform with ready templates for creating marketing videos for different social platforms, industries, etc.

Unscreen
Online tool that uses AI to remove the background from an uploaded video.

SequenceDiagram.org
Online tool to build sequence diagrams using a drag-and-drop interface, useful for presentations.

Faux Code Generator
Input real code via a Gist URL and this tool will produce an SVG version of the code in a mock format, for possible use in slides, etc.

Smithsonian Open Access
Download, share, and reuse millions of the Smithsonian’s images. Use in commercial projects without attribution or written permission (although you should read the FAQ for copyright considerations).

Panolens.js
Flexible, event-driven, WebGL-based JavaScript panorama viewer built on Three.js.

Fontice.com
Fastest browser-based WebP converter. Free JPG/PNG to WebP conversion without uploading to any other servers.

Heroicons
A set of free MIT-licensed high-quality SVG icons for UI development

Git, GitHub, and CLI Tools

React Chat Tutorial
Quickly build chat leveraging Stream's Chat API. Our comprehensive React components will get you up and running fast.  sponsored

CLUI
A collection of JavaScript libraries for building command-line interfaces with context-aware autocomplete.

actions-comment-run
GitHub action to execute any script in an issue or pull request comment.

tickgit
Allows you to do project management in your codebase with TODO comments.

grep.app
Search across a half million Git repos, with options for case sensitivity, regex, and whole words only.

GitHub Data
Populate data from GitHub into Figma mockups.

GitHub CLI
In case you missed it, this is GitHub's official command line tool.

Octomments
GitHub issues as a comment plugin.

Gitpod
Launches ready-to-code dev environments for your GitHub or GitLab project with a single click.

GistPad
VS Code extension for managing and sharing code snippets, notes and interactive samples using GitHub Gists.

paint-github
This is kind of humourous. It's a Chrome or Firefox extension that adds a feature to GitHub comments that lets you "draw" your comment.

The Uncategorizables

React Chat Tutorial
Quickly build chat leveraging Stream's Chat API. Our comprehensive React components will get you up and running fast.  sponsored

Outgrow
Platform to build interactive content like calculators, quizzes, chatbots, surveys, and more, for marketing purposes.

unavatar
API that searches common social media platforms to get a user's avatar image by means of a username.

Voiceflow
Design, prototype and build voice apps. Collaboratively design, prototype, and build Alexa Skills and Google Actions, without coding.

Limio
Sell subscriptions and recurring products, build landing pages, checkouts, self-service portals, and more, with no code.

ResponseVault
Alpha. Create a database application with a drag and drop form builder. Import your own JavaScript UI widgets.

Awesome JS
A visual tool to look for popular JavaScript packages, categorized.

Advanced App Development Cost Calculator
Seems to be mainly for large corporate apps because the estimated prices are fairly high.

Nots.io
Documentation tool for development teams. Access docs from your code and always know if something is obsolete.

Opensource Buiders
Find open-source alternatives for your favorite apps.

damnshort
Short dot-com names, suitable for branding, available for sale for $195 each.

A Tweet for Thought

I think it's safe to say many of us are punk rock programmers.
 

Send Me Your Tools!

Made something? Send links via Direct Message on Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
 

Before I Go...

If you love numbers and Math, you'll adore MetaNumbers. It's an encyclopedia providing all sorts of super-boring info on any positive integer you enter. To me this is kind of like Brian Regan's comedy bit on refrigerators, but I know a lot of you might find it interesting.

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
webtoolsweekly.com
@WebToolsWeekly
PayPal.me/WebToolsWeekly




un

Web Tools #349 - DOM Snippets, Front-end Frameworks, Media, Uncats

Web Tools Weekly

Issue #349 • March 26, 2020

Advertisement via Syndicate
Have Happier, More Productive Video Meetings
Team.video makes it easier and faster for remote teams to work together by offering user friendly video meetings with agendas, collaborative notes, and emoji responses. No download required and it’s free to use.
Try Team.video for FREE!

Although I often include quick DOM scripting tips in the intro of this newsletter, for this week, I'm just going to point you to a great little resource that was sent to me by reader Phuoc Nguyen:

It's more or less a repository of basic, intermediate, and advanced native DOM scripting snippets.
 
HTML DOM: A resource of native DOM snippets

Here are some of the advanced and intermediate examples:
  • Make a draggable element
  • Resize columns of a table
  • Sort a table by clicking its headers
  • Calculate the size of the scrollbar
  • Communicate between an iframe and parent window
There are more than 80 tips currently listed and I'm sure he'll add more later. Even if you don't necessarily use any of the snippets in a real project right away, there are plenty of little coding tidbits you can glean form the example code, which is all just vanilla JavaScript with no library or framework involved.

So check out HTML DOM, I'm sure you'll have lots to investigate!
 

Now on to this week's tools!
 

Front-end Frameworks

Have Happier, More Productive Video Meetings
Team.video makes it easier and faster for remote teams to work together by offering user friendly video meetings with agendas, collaborative notes, and emoji responses. No download required and it’s free to use.   via Syndicate

chakra-ui-vue
A set of accessible and composable Vue components that you can use to build your favourite applications and sites.

Pixel Lite
A beautifully crafted, responsive UI kit based on Bootstrap 4 that includes 100 components, 3 plugins, and 3 example pages.

next-typescript-materialui-jest-starter
Very opinionated starter boilerplate for projects based on Next.js, setup with Typescript, Material-UI, and Jest.

React SaaS Template
Template for building a SaaS app or admin website using React + Material-UI.

web3-react
A simple, extensible, dependency-minimized framework for building modern Ethereum decentralized apps.

Tailwind UI
A UI components library, crafted by the creators of Tailwind CSS.

neo.mjs
A Web Workers-driven UI framework.

LitElement
A simple base class for creating fast, lightweight web components. Makes it easy to define web components – ideal for building a UI design system.

Ionic React
React version of Ionic Framework. 100+ mobile optimized React UI components. Standard React tooling with react-dom.

Accessible Components
Scott O'Hara's repo that lists all the accessible widgets and components he's built.

StarAdmin
A free responsive admin template built with Bootstrap 4.

Media Tools

Tech Productivity Newsletter
A brief newsletter featuring tools and articles for remote work, work culture, learning science, and more – all to help you be more productive.   promoted 

Croppola
Upload a photo and this tool will use AI to crop the photo for you automatically, or you can crop it manually and download the result.

Image to Colors
Online tool that extracts colors from any photo on upload.

Nuxt Optimized Images
Automatically optimizes images used in Nuxt.js projects (JPEG, PNG, SVG, WebP and GIF).

Twilio Video React App
Demonstrates a multi-party video application built with twilio-video.js and Create React App.

react-particle-image
React component to render images as interactive particles. There's an interactive demo using the React logo that's pretty cool.

CoreUI Icons
Premium designed free icon for web and mobile, available in SVG, webfont, and raster formats.

DotMatrix.js
A small, performant class-based, dot matrix library with animated movements that respond to mouse/touch events.

react-calendar-heatmap
A calendar heatmap component built on SVG, inspired by GitHub’s commit calendar graph.

Chessboard Image
Modify chess pieces on a virtual chess board, to create chess positions, then download the image for use wherever you want. Might be cool for a chess tutorial website or blog.

Video Language
A language for making movies. Combines the power of a traditional video editor with the capabilities of a full programming language.

The Uncategorizables

Tech Productivity Newsletter
A brief newsletter featuring tools and articles for remote work, work culture, learning science, and more – all to help you be more productive.   promoted 

Mailcoach
A self-hosted email list manager. It integrates with services like Amazon SES, Mailgun, Postmark, or Sendgrid to send out mailings affordably.

Backstage
Open-source developer portal that puts the developer experience first by means of a a unified front end for all your infrastructure tooling.

dstack.ai
Collaborative data exploration. Enables individual data scientists and their teams to publish, share, and track data visualizations.

TAGX
Allows you to create video highlights and annotate the interesting parts of a video. Enter a YouTube, Vimeo, or direct video link to start annotating.

cs.opensource.google
A search engine to search Google's open source projects (Angular, Dart, Flutter, Go, etc).

Cotter
One-click secure phone number login for your apps.

Phrase
Automate localization processes. Edit language files online with your team of translators or order translations into more than 60 languages.

It's a Live
Lets you mimic a live coding presentation by prerecording the presentation, which gets triggered by random keystrokes as if you were really coding.

EasyCSV
Import spreadsheets into your App, Zapier, Google Sheets, Salesforce, or any public API in minutes.

Pico
Platform to create paywalled content, subscriptions, newsletters, etc.

A Tweet for Thought

This underappreciated Tweet by Adam Greenough should be the dev-related Tweet of the year.
 

Send Me Your Tools!

Made something? Send links via Direct Message on Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
 

Before I Go...

If you've got a lot of extra time at home (and you should!) you might like Codepip. There you'll find a number of different interactive online games that teach you various aspects of front-end development.

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
webtoolsweekly.com
@WebToolsWeekly
PayPal.me/WebToolsWeekly




un

Web Tools #351 - JS Utilities, Media Tools, Uncategorizables

Web Tools Weekly

Issue #351 • April 9, 2020

Advertisement via Syndicate
Working From Home? Try Team.Video
Team.video makes it easier and faster for remote teams to work together by offering user friendly video meetings with agendas, collaborative notes, and emoji responses. No download required and it’s free to use.
Try Team.video for FREE!

Last week I covered a really simple introduction to the HTML Drag and Drop API, for those of you who have never used it before. The demo has the minimum code required to produce a drag and drop example. Let's take that a little further and incorporate the dataTransfer object, which has methods and properties that can be used in the midst of a drag and drop operation.

First, I can use the setData() method of the dataTransfer object, which I'll incorporate in the midst of my event listener when listening for a dragstart event (an event I didn't need to use in the previous demo). The relevant line looks something like this (where "e" is the event object):

e.dataTransfer.setData('text/html', box.innerHTML)

As you can see, the setData() method takes two arguments: The data type and the data itself. In this case, the data is simply the innerHTML of the dragged element. This is the first step in transferring data: Setting the data, which happens when the element is initially dragged.

The next key line in my code will be using the getData() method. In this case, I'll use it when the drop event is triggered on my drop area element:

this.style.background = e.dataTransfer.getData('text/html')

The data that I'll be grabbing is text that represents a valid CSS color keyword, which will be inside each draggable element. The data could be a lot of things, but in this case I'm just using some text for demo purposes. And as you can see, the text sets the background color of the drop area element.

See the full working demo here

There's naturally a lot more code there, but it's fairly straightforward. I'm looping over the draggable boxes to add the event listeners to each one. The setData() and getData() methods are used within that loop to obtain and apply the color info.

Try dragging any of the boxes into the drop area to see the background of the drop area change. You can even try changing the HTML to use different colors (any valid CSS color value will work). As long as the color is valid, the background of the drop area element will change to that color.

And that's a basic way to use the dataTransfer object when working with the Drag and Drop API.
 

Now on to this week's tools!
 

JavaScript Utilities

Working From Home? Try Team.Video
Team.video makes it easier and faster for remote teams to work together by offering user friendly video meetings with agendas, collaborative notes, and emoji responses. No download required and it’s free to use.   via Syndicate

Van11y
Bit of an older project that I just discovered. A collection of customizable, accessible scripts for rich interface elements, built using progressive enhancement.

Rsup Progress
A simple progress bar with promises support.

Heapify
A very fast JavaScript priority queue, implemented using a binary heap, with no dependencies.

Nano Events
Simple and tiny (72 bytes) event emitter library for JavaScript.

Chardin.js
Simple overlay instructions for your apps. Kind of like those 'app tour' plugins, but just a single overlay pointing stuff out.

Serialize JavaScript
Serialize JavaScript to a superset of JSON that includes regular expressions and functions.

FullCalendar
A JavaScript calendar plugin, great for displaying events with drag-and-drop capabilities and an API for extending its functionality.

defu
Utility to recursively assign default properties.

Clack
A modern keyboard shortcut library written in Typescript.

Sharect.js
A lightweight (2.9Kb gzipped and minified) JavaScript library to let users share text selections to social networks in desktop browsers (like Medium).

Uppload
A better JavaScript image uploader. Highly customizable with 30+ plugins, open-source, and can be used with any file uploading back end.

Media Tools (SVG, Video, Audio, etc.)

Beginner JavaScript by Wes Bos is 50% Off!
The master package includes 88 HD videos, part of 15 modules – and course updates are free forever.   promoted 

mediasoup
Cutting-edge WebRTC video conferencing. The perfect choice for building multi-party video conferencing and real-time streaming apps.

gifcap
Create animated GIFs in your browser from a screen recording. Client-side only, no data is uploaded.

Tabler Icons
A set of over 400 free MIT-licensed high-quality SVG icons for you to use in your web projects. Each icon is designed on a 24x24 grid and a 2px stroke.

Video Puppet
Using a markdown file, create a video (with captions) from a chosen set of images, audio files and smaller video clips.

Exifr
The fastest and most versatile JavaScript EXIF reading library.

Seamless Pattern Generator
Create seamless, repeatable royalty free patterns for your website, or to download as SVG, JPEG or PNG.

Resoundly
Produce a podcast simply by typing the content and this app will convert it to speech.

Spline
Easily create 3D web experiences without coding. Build and iterate fast with production-ready results.

Photo Stream
Self-hosted, super simple photo stream. Built with Ruby and seems to require either Netlify or Jekyll.

Ionicons
Premium designed icons for use in web, iOS, Android, and desktop apps. Support for SVG and web font.

The Uncategorizables

Advanced React & GraphQL by Wes Bos is 50% Off!
The master package includes 68 HD videos, part of 10 modules – and course updates are free forever.   promoted 

Brim
Desktop application to efficiently search large packet captures and logs from Zeek (the network security monitoring tool).

StartNames
Produces brandable ideas for domain names in a Twitter stream, based on actual domains that are for sale.

WMS Everywhere
Chrome extension to help you research search volume, advertising cost per click, and related keywords inside Google search results – free and on-demand.

PDF.js Express
Add a PDF.js viewer with out-of-the-box annotation, PDF form fill, and signing. Based on Mozilla's PDF.js (for parsing and rendering PDFs).

AsyncAPI
Open source tools to easily build and maintain your event-driven architecture. All powered by the AsyncAPI specification, the industry standard for defining asynchronous APIs.

Weglot
Allows you to make your website multilingual in minutes and to manage all your translations effortlessly.

Our Site Updates
An easy way to post updates to your website (e.g. via easy to install banners) and keep visitors informed.

RightFont
An innovative, beautiful and professional font manager app for Mac, helping designers preview, install, sync, and manage their font files.

PingPong
Remote user interviews and user tests made simple.

Extract Article Text
Lets you easily extract boilerplate-free text from news articles, blogs, press releases, and company pages with a single API request.

Commerce
Drop‑in e‑commerce for any website with a single line of code. Serverless, real‑time, and API‑first.

A Tweet for Thought

When you're living in a tech bubble like many of us are, it's hard to believe there are people this naive.
 

Send Me Your Tools!

Made something? Send links via Direct Message on Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
 

Before I Go...

This is amazing: Open and Shut lets you send messages in Morse code by repeatedly slamming your laptop shut. So if you've been kidnapped and forced to give up all your passwords or something...?

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
webtoolsweekly.com
@WebToolsWeekly
PayPal.me/WebToolsWeekly




un

Web Tools #354 - React Tools, Image/Video Tools, Uncats

Web Tools Weekly

Issue #354 • April 30, 2020

>&campaign_id=02f2bef915&device=desktop&v=0.14" style="width: 100%;max-width: 600px;border: 0;height: auto;line-height: 100%;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;" width="600">

In previous tips I introduced a basic HTML Drag and Drop API example along with some things you can do with the dataTransfer() object. This tip will focus on the different events you can listen for during a drag operation.

There are 7 drag events that are supported across all modern browsers. They are:

  • dragstart - A dragging operation begins (on dragged item)
  • drag - A drag operation is in process (on dragged item)
  • dragenter - A dragged item enters a valid drop target (on drop target)
  • dragover - A valid drop target is dragged over (on drop target)
  • dragleave - A dragged item leaves a valid drop target (on drop target)
  • drop - A dragged item is dropped on a valid drop target (on drop target)
  • dragend - A drag operation ends (on dragged item)
The notes in parentheses next to each bullet point indicate where the event listener would be placed when listening for the event.

As usual, this is always more interesting with an interactive example, so here's a CodePen demo that illustrates all 7 drag events by printing each one on the page as the event occurs. Some events, of course, occur simultaneously. Also, in order to see the dragleave event, you have to 'leave' the drop target before entering it again to complete the drop.

The demo displays each message once but it should be noted that the drag and dragover events fire continuously while the item is dragged or while the drop target is being dragged over. The rest of the events occur one time each then won't occur again until another drag operation is initiated, ended, or another drop target is accessed, etc.

It should also be noted that MDN's article that lists the different events also lists a dragexit event that has some browser support. But it's recommended to use the dragleave event (which is apparently the equivalent) instead.
 

Now on to this week's tools!

React Tools

>&campaign_id=02f2bef915&device=desktop&v=0.14" style="padding-bottom: 12px;max-width: 568px;border: 0;height: auto;line-height: 100%;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;" width="568">
Enform
Handle React forms with joy. Helps you manage form validation, dirty form submission and reset, field values and changes, and error messages.

react-letter
A React component that allows for an easy display of HTML e-mail content with automatic sanitization. Support for features should match what is supported by Gmail.

useCustomHook
A starter template for creating a new React Hook.

react-easy-state
Simple React state management made with ES6 Proxies.

Crank.js
Write JSX-driven components with functions, promises, and generators. uses the same JSX syntax and diffing algorithm popularized by React, allowing you to write HTML-like code directly in your JavaScript.

use-scroll-to-bottom
React Hook that uses IntersectionObserver to detect when the user has scrolled to the bottom of the page.

React Cool Portal
A React hook for Portals that helps you render children (e.g. modals, dropdowns, tooltips, etc) into a DOM node that exists outside the DOM hierarchy of the parent component.

React State Selector
Performant, type safe and easy to use React global state manager.

React Table
Now at version 7+. Hooks for building lightweight, fast and extendable data grids for React.

react-curved-arrow
Use nice curvy arrows in your React project. Great for interactive tutorials and product tours.

react-enroute
Now at version 4+. React router with a small footprint for modern browsers.

codelift
A "No Code" GUI for your React app.
50% Off Courses by Wes Bos (Master Packages!):
 
 

Media Tools (SVG, Audio, Video, etc.)

British Museum Collection
The British Museum has released 1.9 million images, most with a CC 4.0 license.

Rickshaw
A JavaScript toolkit for creating interactive time series graphs.

Trianglify
Algorithmically generated triangle art that you can render in a project using a simple API, or generate and download using the online tool.

Plotly.js
Built on top of D3.js and stack.gl, a high-level, declarative charting library with over 40 chart types, including scientific charts, 3D graphs, statistical charts, SVG maps, financial charts, and more.

Image Cropper
A quick and easy way to resize any image (PNG, JPG, SVG, GIF, and WEBP supported).

PicsArt Photo Editor
More than a dozen online photo editing tools including duotone effects, overlays, filters, background editing, and more.

BlurHash
A compact representation of a placeholder for an image. Replace boring grey boxes with beautiful states for your placeholders.

Image Compare Viewer
A vanilla JavaScript, dependency-free component that adds an interactive image diff viewer to any page. The on page demos are pretty cool!

OpenJSCAD.org
A set of modular, browser and command line tools for creating parametric 2D & 3D designs with JavaScript code.

Vime
Open source video player library focused on giving users and developers the best possible media player experience. Supports HTML5, Dash, YouTube, Vimeo, and Dailymotion.

Mixkit Music
Free stock music clips that are royalty-free for commercial projects.

The Uncategorizables

Exchange Rates API
A simple and lightweight free service for current and historical foreign exchange rates.

Amazon AppFlow
A fully managed integration service that enables you to securely transfer data between SaaS apps like Salesforce, Marketo, Slack, and ServiceNow, and AWS services like Amazon S3, in just a few clicks.

Digital Brain
Auto-generates your basic documentation and then provides a beautiful, fast, and collaborative interface for your team to complete your documentation process.

Permanent.org
A new non-profit, secure cloud storage service with a focus on privacy that offers a free gigabyte to start.

Flow
A fast, secure, and developer-friendly blockchain built to support the next generation of games, apps, and the digital assets that power them.

Phelia
A reactive Slack application framework. Build interactive Slack apps without webhooks or JSON headache. If you know React, you know how to make a Slack app.

hCaptcha
A drop-in replacement for reCAPTCHA (you can switch within minutes) that protects user privacy, rewards websites, and helps companies get their data labeled.

markmap-lib
Visualize your Markdown with mindmaps.

Plausible
Simple and privacy-friendly alternative to Google Analytics. A lightweight and open-source site analytics tool that doesn’t use cookies and is fully compliant with GDPR, CCPA, and PECR.

Public APIs
A collection of free public APIs for software developers, categorized.

A Tweet for Thought

Technology has changed the way we behave, as this thread demonstrates.
 

Got a Tool Suggestion?

Made something? Send links via Direct Message on Twitter @WebToolsWeekly (details here). No tutorials or articles, please. If you have any suggestions for improvement or corrections, feel free to reply to this email.
 

Before I Go...

If you're a big Seinfeld fan like I am, you'll love this: Seinfeld Adventure. Right now it's just a pitch for a game. I seriously doubt Jerry and his producers will approve this, but it's pretty cool to see what it would be like to play "a game about nothing".

Thanks to everyone for subscribing and reading!

Keep tooling,
Louis
webtoolsweekly.com
@WebToolsWeekly
PayPal.me/WebToolsWeekly
WTW on YouTube