- New Web Thing - Wander
- My Experience Asking GenAI to Design My Blog
- Using Chrome AI to Summarize Comic Books
- Using Chrome's Built-in AI to Improve AI Prompts
- Building a Web Based Comic Book Reader
- Unit Formatting with Intl in JavaScript
- Adding Programming Language Detection with Built-in Chrome AI
- Integrating Location Data with Built-in Chrome AI for Better Image Insights
- Progressively Enhancing Product Reviews with Chrome AI
- Using Chrome AI for Sentiment Analysis (Again)
- Getting Image Insights with Built-in Chrome AI and EXIF Data
- Results from My Vibe Coding Live Stream
- Updates to my Table Sorting Web Component
- Sorting Out Your Monarchs with BoxLang
- Multimodal Support in Chrome's Built-in AI
- JavaScript in the morning, JavaScript in the evening...
- Code Break Tomorrow
- Finding Your Next Amusement Park Ride with APIs
- Adventures in Vibe Coding - Really, Really Big Numbers
- Pixel Art via Vibe Coding
- Code Break Back for May
- My First (and Last) Spotify Web App - Music Snob
- Using Chrome's (Preview) Prompt API for Data Summarization
- Watch me suffer with React more in tomorrow's Code Break!
- Parsing Uploaded Resumes into Form Fields with Google Gemini
- Code Break this Thursday - Ray Finally Learns React
- Using AI in the Browser for Typo Rewriting
- Quick Demo of Chrome's Summarization GenAI (Upcoming) API
- Building a Bluesky AI Sentiment Analysis Dashboard
- Summarizing with Transformers.js
- Classifying Documents with Generative AI
- Using Transformers.js for AI in the Browser
- Using Generative AI to Parse Web Pages into Data
- Using Your Favicon for Monitoring Long Processes
- Intl is your Superhero
- Counting Words with Intl.Segmenter
- Executing Dynamic Code in a Reveal.js Presentation
- Adding Translation with a Web Component and Chrome AI
- Using Chrome AI for Translation
- Using Parallel Requests to Improve Web Performance
- Getting and Displaying a Mastodon Post in Client-Side JavaScript
- Adding AI Insights to Data with Google Gemini
- JavaScript Clipboard Stuff
- Generating Illustrated Stories with AI
- Custom Markers with Leaflet
- Using Geocoding with Leaflet
- Using Chrome AI to Rewrite Text
- Dynamically Showing and Hiding Markers in Leaflet
- Using Asynchronous Content in Leaflet Popups
- Using AI to Roast Your Photos
- Using the Chrome AI Summarizer (Early Look)
- Let's Map Traffic Incidents... Again
- Using CSV Data with Leaflet
- Building a General Purpose GeoJSON Viewer with Leaflet
- Quick Example using Azure's Node.js SDK for Signed URLs
- Mapping with Leaflet
- Another Web Component - Table Compressor
- Real-Time Sentiment Analysis on Device with AI in Chrome
- Setting Dynamic Objects Keys in JavaScript
- A Quick Look at AI in Chrome
- An Online Mastodon Archive Viewer
- Web Component to Generate Image Color Palettes
- Scraping Recipes on the Web - Now with Display and Print
- Cat Herder V1 Released!
- Working with Pasted Content in JavaScript
- Storing Recipes in IndexedDB
- Adding Your Buttondown Email Stats to Your Website
- Scraping Recipes Using Node.js, Pipedream, and JSON-LD
- Game Dev Diary - Cat Herder - Part 2
- Game Dev Diary - Cat Herder - Part 1
- Update to My Table Sorting Web Component
- Adding Recommendations to my Blog with Algolia
- Using Netlify Edge and Blob Support to Investigate Website Traffic
- A Quick First Look at Amazon Bedrock (with Node.js)
- All Your Dragons Are Belong To Us
- Spam APIs in 2024
- A Tip for Properly Handling Loading States in Web Apps
- Taking a Look at Pipedream's GitHub Integration
- Working with the Storage API
- JavaScript Syntax Sugar for Shorter Stuff
- Updating and Supporting URL Parameters in JavaScript
- Testing the Web Share API
- Using the Cookie Store API
- WebC Updates in Eleventy - Looping
- WebC Updates in Eleventy
- Progressively Enhancing a Table with a Web Component
- Adding a Chart to an Alpine.js Application
- My town sure seems to have a lot of...
- Followup to My Intl Short Number Post
- Using Intl for Short Number Formatting
- Dynamically Showing and Hiding Slot Content in a Web Component
- Download Data as a File with Alpine.js
- Adding Download Support in an Eleventy Site
- Reading Image Sizes and Dimensions with Alpine.js
- A Bare-Bones Eleventy Template for Glitch
- Building a YouTube Embed Web Component (both vanilla and WebC flavored)
- Adding Responsive Images with Cloudinary
- Integrating Cloudinary Notifications with Pipedream
- An Alpine.js Template for Glitch
- Using Cloudinary with Alpine.js
- Building an API to List Cloudinary Images in a Folder
- Integrating Cloudinary into Eleventy
- First Experience Building with Eleventy's WebC Plugin
- Working with Slots and Web Components
- Working with Custom Events and Web Components
- Building a Placeholder Web Component with No External Dependencies
- Web Component Experiment - Manipulating Inner Text
- A PDF Embed Web Component
- Investigating IndexedDB Wrapper Libraries - Part Three
- Investigating IndexedDB Wrapper Libraries - Part Two
- Investigating IndexedDB Wrapper Libraries - Part One
- Getting Images from a Twitter Account (2022)
- Building Table Sorting and Pagination in a Web Component
- My First Web Component
- Another Early Look - Netlify Graph
- Using Google Analytics 4 for Blog Stats
- Fun (Scary?) Webcam Demo
- Uploading Multiple Files with Fetch
- Check out Begin
- Graphing Movie Rating Distribution For No Good Reason
- Using Pipedream to Proxy Other APIs
- Recreating Breaking Bad Credits with JavaScript (and a bit of CSS)
- Proof of Concept - Dynamically Filtering a Large Select
- Keeping Count of User Visits
- Another Netlify Analytics Hack - Stats Per URL
- Building a Traffic-Based Workflow in Pipedream
- Looking at Pipedream's Event Sources
- Building a Google Sheets Twitter Bot with Pipedream
- Building a Reddit Workflow with Pipedream
- Processing Email Sentiment with Pipedream
- Creating Both HTML and API with Pipedream
- How Pipedream Got Me Excited About SQL Again
- Using State in Pipedream Workflows
- Building a Twitter Bot in Pipedream
- A Look at Pipedream
- Implementing Google Custom Search Engine's JSON API in the JAMStack
- Replacing a Dynamic Regex Match with the Same Number of Spaces
- Using the MailChimp API with Netlify Serverless Functions
- Using Netlify's Build Process for Somewhat Static Data
- Adding Emotional Tone Analysis to Your Contact Form
- Customized Form Handling on Netlify with Serverless Functions
- Adding Serverless Functions to Your Netlify Static Site
- Review of NativeScripting's Vue Intro Course
- Working with the Camera in a NativeScript Vue App
- Using NativeScript DataForm with Vue.js - Some Tips
- Working with Dynamic Components in Vue.js
- Storing (and Retrieving) Photos in IndexedDB
- Adding Your YouTube Videos to Your Static Site with Vue.js
- Pointing a Raygun at Your Site
- Building a Progressive Color Thief
- Using DevTools to Scrape Web Content
- Generating Random Cure Song Titles with Markov Chain
- Nuxt and Server-Side/Static Vue.js Sites
- Building an OpenWhisk Activation Poll with Node, Vue.js and Vuetify
- Another Example of Vue.js and Vuex - an API Wrapper
- Vue.js Version of My Random Comic Book Viewer
- Using JSON Web Tokens with Serverless OpenWhisk
- An Example of Vuex and State Management for Vue.js
- Building an Image Placeholder Component for Vue.js
- New IBM Composer Feature - Additional Action Logging
- Adding Referrer Protection to OpenWhisk Actions
- An Example of Form Validation with Vue.js
- Quick Example of Apache Cordova and Vue.js
- Building Related Selects with Vue.js
- Last Update, Honest, to My Vue.js INeedIt Demo
- Yet Another Update to my INeedIt Vue.js App
- Update to my Vue.js INeedIt Demo
- Another Vue.js Demo - INeedIt
- Working with Routes in Vue.js
- DevTools Tips for Progressive Web Apps
- Review: Building Progressive Web Apps
- Some Progressive Web App Tips
- Turning My No Man's Sky App Into a PWA
- Another Vue Example - Image Recognition Service Tester
- Building a No Man's Sky Utility with Node and Vue.js
- Why I Hated (and Now Love) Arrow Functions
- Quick Example of Vue.js
- Google Analytics and RSS Report - Version 2
- Advent of Code - Day 15 to 20
- Advent of Code - Day 13 and 14
- Advent of Code - Day 9 to 12
- Advent of Code - Day 8
- Updates to Client Storage for the Browser
- Advent of Code - Day 6 and 7
- Advent of Code - Day 5
- Advent of Code - Day 3 and 4
- Advent of Code - Day 2
- Begin the Advent of Code!
- Capturing camera/picture data without PhoneGap - An Update
- I heart Spry
CARVIEW |
Select Language
HTTP/2 200
accept-ranges: bytes
age: 0
cache-control: public,max-age=0,must-revalidate
cache-status: "Netlify Edge"; fwd=miss
content-encoding: gzip
content-type: text/html; charset=UTF-8
date: Sun, 12 Oct 2025 13:44:39 GMT
etag: "5fc1a4ab5f6bd2b5203c09586880903f-ssl-df"
server: Netlify
strict-transport-security: max-age=31536000
vary: Accept-Encoding
x-nf-request-id: 01K7CAN2C320SJN5MMAVWTS4N0
Javascript (190 Posts)
Raymond Camden
Code and Cats