Using Goodreads Data in Eleventy - Update

Yesterday I shared a blog post where I detailed how to take your data export from Goodreads and make use of it in an Eleventy site. While describing the process, I mentioned that I wasn't terribly confident in the approach. Things got even worse when I tried to make use of the Go … | Continue reading


@raymondcamden.com | 1 year ago

Using Goodreads Data in Eleventy

I've been a Goodreads user for a few years now, and much like how I use other 'tracking' services, I'm not there for other folks' reading lists or recommendations, but instead, as a way to track what I've read. I especially like looking back over the past year and being reminded … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Happy June folks. Not sure what that actually means, but Happy June nonetheless. Before I get into the links, a quick reminder that I'm looking for sponsorship for the site, primarily to let me upgrade my Mailchimp account. If you, or your company, wish to help out, just send me … | Continue reading


@raymondcamden.com | 1 year ago

Using Web Components in Alpine.js

To be honest, the TLDR for this entire post is, "It just works", so I'd more than understand if you stop reading, but like most things in my life, I like to see it working to reassure myself of the fact. So with that out of the way, let's consider a simple example.First Attempt # … | Continue reading


@raymondcamden.com | 1 year ago

Adding Form Participation Support to Web Components

Many years ago when the web platform began to really improve, when everything was "HTML5 this" and "HTML5 that", I remember being particularly excited by the updates to forms. I started my web career doing a lot of form processing and have always thought it was one of the more im … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Welcome to another "Links For You" post. My queue of links to share seems to be growing quicker than my schedule of posting these (roughly every two weeks), so I may post one next week as well. As always, I hope these posts are useful and informative for yall. Before getting into … | Continue reading


@raymondcamden.com | 1 year ago

Eleventy by Example, by Bryan Robinson

I'd like to think I know Eleventy pretty well. I've written about it here a few times, this site is built on Eleventy, I've presented on it, but I certainly don't think I know everything about it. That being said, when I got my copy of "Eleventy by Example" by Bryan Robinson, my … | Continue reading


@raymondcamden.com | 1 year ago

Handling Web Component Removal with disconnectedCallback

MDN does a fairly good job of covering the lifecycle events for web components but one in particular got my attention today, disconnectedcallback. As kind of the inverse of connectedCallback, it will be fired when an instance of your custom element is removed from the DOM. While … | Continue reading


@raymondcamden.com | 1 year ago

My First Web Components Presentation - May 30

I am super excited (and a bit scared) to announce I'll be giving my first presentation on web components later this month. On May 30th, at 8 PM CST, I'll be presenting virtually to the .Net User Group of British Columbia. This presentation will be online and open to anyone and wi … | Continue reading


@raymondcamden.com | 1 year ago

Updating and Supporting URL Parameters in Alpine.js

I think most of my readers know, when I get an idea in my head, I tend to go pretty deep into it. A few days ago, I blogged about updating and supporting URL parameters with JavaScript. That post itself was an update to an earlier post demonstrating how to do it with Vue.js. For … | Continue reading


@raymondcamden.com | 1 year ago

Add Streaming to Your Jamstack Site in Minutes

Last week I had the distinct pleasure of being on my buddy Todd Sharp's live stream, Streaming on Streaming. You can watch the recording of that session here:Todd is the principal developer advocate for Amazon Interactive Video Service (IVS), or, more simply, a way of taking the … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Greetings from Tuscaloosa where I'm about two hours or so away from seeing my eldest walk across the stage and get his diploma at the University of Alabama. Today's kind of a big deal. I noticed, however, I've been a bit remiss in sharing these link posts the last few weeks so I' … | Continue reading


@raymondcamden.com | 1 year ago

My Experience at Antiques Roadshow

So, as this is my blog, nothing is really "off-topic", but this is probably the most OT thing I've ever shared here. My wife is a big fan of Antiques Roadshow. I enjoy watching it too, although it isn't something I mind her watching without me. A month or so ago she discovered th … | Continue reading


@raymondcamden.com | 1 year ago

Updating and Supporting URL Parameters in JavaScript

Not quite a long time ago, but roughly two years ago I wrote a blog post on updating and supporting, URL parameters with Vue.js. The idea was this: Given an application that lets you perform various tweaks, it would be nice if the URL was updated to reflect the current state of t … | Continue reading


@raymondcamden.com | 1 year ago

Creating a Web Component for Reveal.js (Followup)

This weekend I blogged about a web component experiment wrapping the excellent Reveal.js presentation library. In that post, I created a component to wrap ` tags that represented individual slides. I mentioned that I wanted to follow up on this and create a "child" component to r … | Continue reading


@raymondcamden.com | 1 year ago

Creating a Web Component for Reveal.js

I've been a fan of Reveal.js for many years. Reveal.js is a web-based presentation framework that makes it (mostly) easy to create slides with just basic HTML. I don't mind Powerpoint at all, and it's incredibly powerful, but when I'm presenting on web topics (which is, usually, … | Continue reading


@raymondcamden.com | 1 year ago

Testing the Web Share API

A week or so ago I discovered the Web APIs list on MDN. It's basically an index listing of the various web APIs documented on the site. While I knew most of them, more than a few were either unclear to me or entirely unknown. This is what inspired my post on the Cookie Store API. … | Continue reading


@raymondcamden.com | 1 year ago

Need Help with ColdFusion?

As folks know, I love it when yall send me questions via email. I like to help others, I like to dig into issues and figure things out, and I'm always on the lookout to learn new things. However...As I just got an email about ColdFusion Event Gateways, I want to let folks know th … | Continue reading


@raymondcamden.com | 1 year ago

Using the Cookie Store API

Today while browsing a list of web APIs over at MDN, I ran across one that surprised me - the Cookie Store API. This is clearly marked as experimental (currently only supported in Chrome/Edge) but looks to be fascinating. Cookies are the oldest (as far as I know) way for web appl … | Continue reading


@raymondcamden.com | 1 year ago

Using Speech Synthesis and Recognition with Alpine.js

Recently, I worked on two interesting (imho!) articles for our blog at work on integrating web APIs with the Adobe PDF Embed API. The first blog post demonstrated using the Web Speech API to let you select text in a PDF and have it read to you. I followed this up with an article … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Today's Links For You is a special one, not just because it's my birthday, but... oh wait, yeah, that's the only reason. Whether today is special or not, I hope everyone out there reading this has a great weekend. Ok, here are your links!6 CSS snippets every front-end developer s … | Continue reading


@raymondcamden.com | 1 year ago

Working with CloudCannon and Eleventy - My Experience

I've been working with the Jamstack (in its various iterations and names) for many years now. In that time, one area I had not really looked into is the use of a content management system (CMS). I recently had a chance to look into how CloudCannon adds CMS capabilities to Elevent … | Continue reading


@raymondcamden.com | 1 year ago

WebC Updates in Eleventy - Looping

Last week I took a look at updates to WebC support in Eleventy, specifically if/else support. In that last update, looping support was added as well so I thought I'd build a quick little demo showing it in action. As usual, I ended up finding another new feature/change to WebC so … | Continue reading


@raymondcamden.com | 1 year ago

Awesome Algolia Updates (and some fixes here...)

I've been a huge fan, and user, of Algolia for a while now. I first wrote about it back in 2020 when I described how I added Algolia search to Eleventy. Later on, I described how one might migrate to Algolia from Lunr. All in all, I've been very happy with Algolia and my usage on … | Continue reading


@raymondcamden.com | 1 year ago

WebC Updates in Eleventy

It's been a little while since I've blogged about the Eleventy WebC feature, and that's good because just recently some nice little nuggets landed in the project. Specifically...I want to share a demo of loops later, but I thought I'd first look into else and elseif, specifically … | Continue reading


@raymondcamden.com | 1 year ago

New Blog Same as the Old Blog

Welcome to the new blog! Looks familiar, right? So... a month or so ago I decided it was time to start reconsidering a rewrite. Still with Eleventy of course, but I really wanted to reorganize my site and possibly clean up stuff I no longer used. My site repo (https://github.com/ … | Continue reading


@raymondcamden.com | 1 year ago

Adobe Firefly in Beta

I'm currently at Adobe Summit and this morning at the keynote we announced the beta of Adobe Firefly. Firefly is a generative AI service, which by itself isn't new, but Firefly has a strong commitment to being a more responsible AI service. You can read more about that and Adobe … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Hello friends, tomorrow I'm heading out to Vegas for Adobe Summit, so I expect the posting to be a bit light this week.Automating your Mastodon profile with Pipedream.comHere's a great article that talks about using one of my favorite services, Pipedream to automate the updating … | Continue reading


@raymondcamden.com | 1 year ago

Another Week, Another Mastodon Bot - Random Album Cover

Last September, I blogged about how I used the Spotify API and Pipedream to discover new music: Discover New Music with the Spotify API and Pipedream. I used a Pipedream workflow to select a random track from Spotify and email me a track every morning. I've still got this process … | Continue reading


@raymondcamden.com | 1 year ago

Progressively Enhancing a Table with a Web Component

Back nearly a year ago (holy smokes time goes fast), one of my first articles about web components involved building a component to create a paginated/sorted table: Building Table Sorting and Pagination in a Web Component. In that example, the component looked like so in your HTM … | Continue reading


@raymondcamden.com | 1 year ago

Reminder about Web Components and Attributes

After my post yesterday about web component lifecycle events, I had an interesting conversation with Thomas Broyer on Mastodon. He brought up an issue with web components that I covered before on this blog, but as it was a very appropriate thing to discuss immediately after yeste … | Continue reading


@raymondcamden.com | 1 year ago

Interesting Caveat with Web Components and the Event Lifecycle

I've been exploring web components the last few months and as part of that exploration, I've been reading "Web Components in Action" by fellow Adobian Ben Farrell. I'm still at the beginning of the book but so far it's been great. It is a few years old now, but for the most part, … | Continue reading


@raymondcamden.com | 1 year ago

Adding a Chart to an Apline.js Application

For a while now my blog queue has had an item in there suggesting I take a look at adding a basic chart to an Alpine.js application. I finally got a chance to play around with this over the weekend and I thought I'd share the result. For this post, I've used Chart.js, which is a … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Good morning readers! I'm writing this in a hotel room in Tuscaloosa where my wife and I are visiting our son. He was presented with a significant award a few nights ago (the Algernon Sydney Sullivan award) and we stayed up a few extra days. We're about to head back to Louisiana … | Continue reading


@raymondcamden.com | 1 year ago

Supporting PDF Embeds in an Eleventy WebC Component

Way back in the old days, in August of 2021, I wrote up an example of adding support for Adobe's PDF Embed API as an Eleventy plugin: "An Adobe PDF Embed Plugin for Eleventy". When I find time, I need to update that to the newest URL for the library, but more recently I was curio … | Continue reading


@raymondcamden.com | 1 year ago

Update to My Eleventy Blog Guide

Last January, I announced the release of a guide I had written for building a simple blog in Eleventy. Now that Eleventy has hit 2.0, I took some time this morning to look at the guide and see what could be updated. The first thing I noticed was that I had a heck of a lot of typo … | Continue reading


@raymondcamden.com | 1 year ago

My First Bug

I've told this story a few times before, but I don't think I've actually ever shared it on my blog. My interest in and introduction to computers came at a very early age. My mother's employer sent her home with an Apple 2 (either the Plus or E model, I forget which), and while it … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Normally I write these "Links For You" posts on the weekend, but my family and I will be on vacation for the next few days and the laptop is not invited. With that in mind, here's what I'd like to share with yall, enjoy!Eleventy 2.0I'm super excited that Eleventy has hit 2.0! You … | Continue reading


@raymondcamden.com | 1 year ago

Building a Mastodon Bot Listing Page in Eleventy

Chalk this up for yet another thing most folks probably won't need, but it was fun to build so I figured I'd share. I've had a lot of fun building bots for Mastodon. If you're curious about the process, you can read about my experience here: ("Building a Mastodon Bot on Pipedream … | Continue reading


@raymondcamden.com | 1 year ago

Lessons Learned in Twenty Years of Blogging

Way back in 2003, I wrote my first blog post, it was short and sweet and I can share the entirety of it here:Welcome to my blog. I've been working in software development for many years now. Mostly in ColdFusion, although recently I've been working in Java as well. I plan to use … | Continue reading


@raymondcamden.com | 1 year ago

Progressively Enhancing a Form with Web Components

I've been loving playing with web components lately and today I'm excited to share another one. Especially excited as this one is a great example (I think!) of using a web component to enhance HTML, but that fails gracefully for a user with JavaScript disabled. Before I begin, a … | Continue reading


@raymondcamden.com | 1 year ago

Another Update to my Slideshow Web Component - JavaScript Support

Last month I shared a simple web component I built to embed slideshows onto web pages. If you didn't get a chance to read that, you can see it in action in this CodePen below: See the Pen Slideshow Web Component by Raymond Camden (@cfjedimaster) on CodePen.After I wrote this, Ši … | Continue reading


@raymondcamden.com | 1 year ago

Links For You

Hey folks, I'm writing to you from another world. A world where I somehow got eight-plus hours of sleep two days in a row. Now, previously I would have told you this was a make-believe world, but now I know the truth, it exists. (And I'll just do my best to forget the nightmare I … | Continue reading


@raymondcamden.com | 1 year ago

Using JavaScript in a WebC Component

A week or so ago (time is so weird these days), I gave a presentation on Eleventy's WebC plugin. While working on the slides, I built a bunch of demos of various things and knew I'd share a few on the blog. Here's one in particular I wanted to write about. This isn't anything not … | Continue reading


@raymondcamden.com | 1 year ago

My town sure seems to have a lot of...

Ok, so I realize this will make me sound old (spoiler, I am old), but I swear I feel like my town (Lafayette, LA) has about ten thousand or so storage businesses. And banks. Oh, and hotels too. For a while now I thought it would be interesting to see if I could build a tool that … | Continue reading


@raymondcamden.com | 1 year ago

Cloudinary Debugging Tip

I've been blogging about Cloudinary here for the past few months, and I wanted to share a quick tip. A few weeks ago, I was privileged to be interviewed on the Cloudinary podcast, Dev Jams:While showing some code, I came across an image being loaded by Cloudinary that was returni … | Continue reading


@raymondcamden.com | 1 year ago

Quick WebC Tip

Whenever I think I shouldn't post something because I'm covering something completely obvious, despite the fact that I missed it, I always find at least one other person who was also a bit slow in either remembering a basic tip or figuring out the simple stuff. So hey, that one p … | Continue reading


@raymondcamden.com | 1 year ago

Update to My Slideshow Web Component - by Šime Vidas

A few days ago I blogged about how I built a simple web component to create a "Slideshow" component. Basically, given a set of URLs, show one image at a time and provide controls to let the user navigate. I had planned to update that component (and still do!), but I wanted to sha … | Continue reading


@raymondcamden.com | 1 year ago