12k
PAGE 4

From the OpenReplay Blog

Choosing a JavaScript Templating Engine

Compare EJS, Handlebars, Pug, and Nunjucks for Node.js server-side HTML rendering, with syntax examples, use cases, and security tips.

OpenReplay Team · May 10, 2026 · 4 min read

Five Sass Features You Can Replace with CSS

Five Sass features you can replace with modern CSS: custom properties, nesting, color-mix(), @layer, and @property for everyday styling.

OpenReplay Team · May 9, 2026 · 4 min read

How to Embed Video in React

Embed video in React with HTML5 video for self-hosted files, YouTube iframes, autoplay fixes, responsive sizing, and when to use ReactPlayer.

OpenReplay Team · May 9, 2026 · 4 min read

Recording Audio in the Browser with Web Audio API

Web Audio API recording in the browser: capture microphone input with getUserMedia, process it if needed, and encode it with MediaRecorder.

OpenReplay Team · May 8, 2026 · 5 min read

Email Obfuscation Techniques for the Web

Email obfuscation techniques for the web: compare HTML entity encoding, JavaScript, CSS to avoid, contact forms, and Cloudflare protections.

OpenReplay Team · May 8, 2026 · 5 min read

Modern SQLite Features You Might Be Missing

Modern SQLite features explained: JSONB, STRICT tables, RETURNING, WASM with OPFS, and WAL mode for better performance and concurrency.

OpenReplay Team · May 7, 2026 · 4 min read

Using es-toolkit for Everyday JavaScript Utilities

es-toolkit offers typed, tree-shakeable JavaScript utilities as a lean Lodash alternative, with smaller bundles and a migration path from Lodash.

OpenReplay Team · May 7, 2026 · 4 min read

Creating a Pure CSS Tooltip

Build a pure CSS tooltip with ::after, data-tooltip, and opacity transitions, plus focus-visible support and key accessibility limits.

OpenReplay Team · May 6, 2026 · 4 min read

What Axios Still Gives You Over Fetch

Axios vs Fetch: see where Axios still wins with interceptors, automatic HTTP error handling, shared instances, upload progress, and timeouts.

OpenReplay Team · May 6, 2026 · 4 min read

A Practical Overview of Kubernetes

Kubernetes overview of architecture, Pods, Deployments, Services, Ingress, and ConfigMaps for running and scaling web apps across a cluster.

OpenReplay Team · May 5, 2026 · 4 min read

Automatic Skeleton Screen Generation with boneyard

boneyard-js automatically generates skeleton loaders from real component layouts at dev time, with responsive .bones.json files and Vite support.

OpenReplay Team · May 5, 2026 · 5 min read

How to Lint Your CSS with Stylelint

Stylelint CSS linting setup, config, and commands for catching errors, enforcing rules, and integrating with Prettier and CI.

OpenReplay Team · May 4, 2026 · 4 min read

A New Way to Browse npm Packages with npmx

npmx streamlines npm package research with side-by-side comparison, bundle size, module format, dependencies, and vulnerability checks.

OpenReplay Team · May 4, 2026 · 4 min read

Add Reusable Capabilities to AI Agents with skills.sh

skills.sh adds reusable AI agent skills for coding workflows, with SKILL.md, progressive disclosure, CLI install, and MCP comparisons.

OpenReplay Team · May 3, 2026 · 4 min read

The Current State of JavaScript Bundlers

JavaScript bundlers in 2026: how Webpack, Vite, Turbopack, Rspack, esbuild, Rollup, and Parcel compare for modern frontend builds.

OpenReplay Team · May 3, 2026 · 4 min read

How to Deploy Next.js Outside Vercel with OpenNext

Deploy Next.js outside Vercel with self-hosting or OpenNext on AWS and Cloudflare. Compare Node.js, Docker, and the new Adapter API.

OpenReplay Team · May 2, 2026 · 4 min read

Creating a Copy Button for Code Blocks

Build a copy button for code blocks with the Clipboard API, using textContent, try/catch feedback, and accessible aria-labels.

OpenReplay Team · May 2, 2026 · 4 min read

Styling Ctrl+F Results with ::search-text

Style browser find-in-page highlights with ::search-text and :current. Covers CSS support, allowed properties, and Chromium-only limitations.

OpenReplay Team · May 1, 2026 · 4 min read

A Simple Defense Against npm Supply Chain Attacks

Block npm supply chain attacks with ignore-scripts=true, min-release-age, and CI checks for new install scripts before they run.

OpenReplay Team · May 1, 2026 · 5 min read

Creative Ways to Style Lists with CSS

Style lists with CSS using semantic HTML, ::marker, ::before, counters, and @counter-style for custom bullets and numbering with accessibility in mind.

OpenReplay Team · Apr 30, 2026 · 4 min read

Creating a Custom Post Type in WordPress

Create a WordPress custom post type with register_post_type, show_in_rest, plugin-based setup, and the right templates for archives and singles.

OpenReplay Team · Apr 30, 2026 · 4 min read

Preventing Path Traversal Attacks in Node.js

Prevent path traversal attacks in Node.js with safe path.resolve checks, path.sep containment, and ID-based file lookup instead of user input.

OpenReplay Team · Apr 29, 2026 · 4 min read

How to Copy API Requests from the Network Tab

Copy API requests from the Network tab in Chrome, Edge, or Firefox with cURL, fetch, and HAR export to replay and debug errors.

OpenReplay Team · Apr 29, 2026 · 4 min read

Flexible Object Creation with the JavaScript Builder Pattern

JavaScript Builder Pattern examples for step-by-step object creation, fluent method chaining, validation, defaults, and safer API request builders.

OpenReplay Team · Apr 28, 2026 · 4 min read

We use cookies to improve your experience. By using our site, you accept cookies.