Use JavaScript to determine whether a string is a valid JSON stringArticle contains
  1. Check if provided string is a valid JSON string code
  2. Code explanation
The text "JavaScript. Is my string a valid JSON string?" on a desert.

Use JavaScript to determine whether a string is a valid JSON string

To determine whether a string is a valid JSON string in JavaScript, you can use the JSON.parse() method within a try...catch block. This approach leverages the fact that JSON.parse() throws a SyntaxError exception if the input string is not valid JSON. By catching this exception, you can accurately determine if the string represents valid JSON.

Continue reading “Use JavaScript to determine whether a string is a valid JSON string”
Making chatbots accessible: A guide to enhance usability for users with disabilitiesArticle contains
  1. Visual accessibility
  2. Auditory accessibility
  3. Motor accessibility
  4. Cognitive accessibility
  5. Universal design features
  6. Testing and feedback
  7. Compliance and ethical considerations
  8. Technical advises
  9. Final words
A person using a tablet indoors. The person is interacting with the device, reading and typing messages on the chat app.

Making chatbots accessible: A guide to enhance usability for users with disabilities

Previously, we discussed the Urgent Need for Chatbots to be Accessible. In this piece, we are taking a deep dive into actions one can take to enhance the accessibility of chatbots for users with disabilities. In order to meet that end, programmers can implement several specific strategies that address visual, auditory, motor, and cognitive impairments. This guide offers detailed instructions, practical code examples, and tool recommendations to make chatbots more accessible.

Let’s get started.

Continue reading “Making chatbots accessible: A guide to enhance usability for users with disabilities”
Truncating text and making it accessibleArticle contains
  1. CSS for truncation
    1. CSS for single-line text truncation
    2. CSS for multi-line text truncation
  2. JavaScript for truncation
    1. Truncating text by words
    2. Truncating by characters
    3. Truncating in the middle
  3. Accessibility considerations
  4. Alternatives to truncation
  5. Avoid information loss
Redirecting to www or non-www using Apache htaccessArticle contains
  1. Using .htaccess to redirect to www or non-www
    1. Redirect from www to non-www
    2. Redirect from non-www to www
macOS - find, start, stop, and restart the Apache web serverArticle contains
  1. Determine which Apache server is currently being used on macOS
    1. Check running Apache processes
    2. Using which and whereis commands
    3. Check Apache configuration
  2. Internal Apache
  3. Homebrew Apache
  4. Conflict between internal Apache and Apache installed via Homebrew
  5. How to stop and prevent auto-starting the internal Apache server on macOS
  6. apachectl vs httpd
    1. apachectl
    2. httpd
Resolving the script tag type attribute hash prepending issue with CloudflareArticle contains
  1. Solution for hash prepending issue with Cloudflare
  2. Final notes
"JavaScript" sentence and script HTML element

Resolving the script tag type attribute hash prepending issue with Cloudflare

If your script HTML tag has the type attribute prepended with a hash, like <script type="ea10e272b0a1989fb2f3aa4e-text/javascript">...</script> and you’re using Cloudflare services, then the root cause is the Cloudflare Rocket Loader, a feature of Cloudflare that optimizes the loading of JavaScript resources on your web pages.

Rocket Loader modifies the type attribute of script tags for website loading optimization by deferring the loading of JavaScript until after rendering. This modification can sometimes cause issues with HTML validation and Content Security Policy (CSP) headers.

Cloudflare Rocket Loader adds an argument “type” into the script tag and causing issues with the W3C validator due to the “subtype missing” error.

Continue reading “Resolving the script tag type attribute hash prepending issue with Cloudflare”
Get days between two dates in JavaScriptArticle contains
  1. JavaScript code for calculating days between two dates
  2. Code explanation
  3. Practical example with unit tests for calculating days between dates
Get and capitalize the first letter of a string in JavaScriptArticle contains
  1. How strings are represented in JavaScript?
  2. Getting and capitalizing the first character of a string in JavaScript
  3. Practical example: Capitalizing the first letter of a string
Convert SVG to image in browser: PNG, JPEG, WebPArticle contains
  1. Example code for converting SVG to PNG image
  2. Brief explanation of SVG to image conversion
  3. Considerations and limitations
  4. Managing memory during the conversion process
  5. Converting SVG to JPG, JPEG, or WebP format
  6. Alternative methods for SVG conversion
  7. Converting SVG to image online
SVG text and three arrows that point to PNG, JPEG, and JPG, representing three different formats that SVG can be converted to.

Convert SVG to image in browser: PNG, JPEG, WebP

To convert SVG to PNG, JPG, or WebP WebP is a modern raster graphics file format created by Google to provide more powerful lossless and lossy compression for images on the web. It is designed to replace the JPEG, PNG, and GIF file formats, and it supports animation and alpha transparency. WebP images are less in size than popular formats such as PNG and JPEG, which might result in faster website load times., you can use the DOM API to create an object URL from the SVG code, load it into an image element, and then write that image to a Canvas. Finally, you can use the toDataURL() method to convert the Canvas to a base64 encoded PNG image.

Continue reading “Convert SVG to image in browser: PNG, JPEG, WebP”
How to find the highest z-index on a page using JavaScriptArticle contains
  1. Practical code example for finding highest z-index
  2. Can this method be modified to work with iframes or shadow DOM?
    1. The example of how you might do this for an iframe
    2. The example of how you might do this for the shadowDOM
  3. Optimize function for performance