Resources:
- https://www.w3.org/TR/WCAG21/
- https://webaim.org/
- https://www.apple.com/accessibility/
- https://a11y-101.com/
- https://www.microsoft.com/design/inclusive/
- https://marcysutton.github.io/gatsby-a11y-workshop/
Tools:
| //requiring path and fs modules | |
| const path = require('path'); | |
| const fs = require('fs'); | |
| const readline = require('readline'); | |
| //joining path of directory | |
| const directoryPath = path.join(__dirname, 'srt'); | |
| const outputPath = path.join(__dirname, 'dfxp'); | |
| //passsing directoryPath and callback function | |
| fs.readdir(directoryPath, { |
| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width"> | |
| <title>JS Bin</title> | |
| </head> | |
| <body> | |
| <script id="jsbin-javascript"> |
| yarn add --dev --exact prettier | |
| yarn add --dev eslint-config-prettier | |
| yarn add --dev eslint-plugin-only-warn | |
| npx mrm lint-staged |
| // Replace this with a relevant selector. | |
| // If you use a tool that auto-generates classes, | |
| // you can temporarily add an ID and select it | |
| // with '#id'. | |
| const selector = '.the-fixed-child'; | |
| function findCulprits(elem) { | |
| if (!elem) { | |
| throw new Error( | |
| 'Could not find element with that selector' | |
| ); |
| Interaction | |
| https://github.com/taye/interact.js | |
| Out of the box solutions | |
| https://photoswipe.com/styling/ | |
| https://github.com/dimsemenov/photoswipe-deep-zoom-plugin | |
| https://openlayers.org/en/latest/examples/zoomify.html | |
| https://openseadragon.github.io/ | |
| https://www.lightgalleryjs.com/ |
| // ==UserScript== | |
| // @name Threads.com Keyword Filter | |
| // @namespace http://tampermonkey.net/ | |
| // @version 1.0 | |
| // @description Hide posts on Threads.com containing specified keywords | |
| // @author quannt | |
| // @match https://www.threads.com/* | |
| // @grant none | |
| // ==/UserScript== |