JavaScript Clipboard Stuff

Forgive the somewhat vague title, but I wanted to point folks to a series of articles I’ve had published on the Frontend Masters blog the past few weeks. I started writing for them recently, and while I note my "external writing" on my About page, I wanted to specifically call out this series. Over three articles, I discuss reading and writing to the clipboard with JavaScript as well as working with paste events: Reading from the Clipboard in JavaScript Writing to the Clipboard in JavaScript Handling Paste Events in JavaScript That last article is an updated version of a post of mine from July, but it’s got some new material in it so I definitely recommend checking it... more →
Posted in: JavaScript

Links For You (10/13/2024)

Happy Sunday and Happy Saints Are Winning As I Write this day. Before I get into the links, some administrative. At the bottom of my posts, I’ve got share links. A few days ago I removed the share to Twitter link as I’ve gradually removed myself from that platform. I was on there a few weeks ago desperate for some technical help, but in general, I’m pretty much done with the platform. I’ve added a share to Bluesky (where you can find me as @raymondcamden.com) but unfortunately, it isn’t quite working yet. I followed the directions for ‘Action Intent Links’, but even the example on their docs isn’t working. I’m going to keep the share link... more →
Posted in: JavaScript

Generating Illustrated Stories with AI

A few months ago, I built a little demo that I simply forgot to actually talk about here. A coworker was building something similar and it reminded me to take a look at the code, update it, and actually share it. This is a pretty cool example of integrating multiple different APIs to create a final product, in this case, a short story with pictures. Here’s an example: How was this built? At a high level: Google’s Gemini AI is used to generate a short story. Adobe’s Firefly Services is used to generate the images. Adobe’s Acrobat Services is used to turn the text into a PDF. That’s the high level, now let’s get into the nitty-gritty. Generating a Story To... more →
Posted in: JavaScript

Custom Markers with Leaflet

As I continue to dig into Leaflet, I was recently asked about custom markers based on data, so for example, some locations for a store may use one icon while others use another. I did some digging, and while it turns out Leaflet has deep support for customizing markers, it does take a little bit of work. Here’s what I found. First off, this is the default marker: Out of the box, this is it. Period. I can appreciate the library wanting to keep its size to a minimum, but I was a bit surprised. That being said, the library provides really flexible support for creating your own markers. The first thing I found was the tutorial, Markers With Custom Icons. In this tutorial, they describe the... more →
Posted in: JavaScript

Eleventy 3.0 Released (and in use here!)

This is just a quick note to let my readers know that Eleventy 3.0 has been released. This is a huge update and folks using it should read the full release notes here: Eleventy v3.0.0: Possums ❤️ ESM. I’ve been running a beta for a while. You can see the issues I ran into here: Upgraded to Eleventy 3.0 (Beta). I upgraded to the final version yesterday and ran into one issue, a template that output to a path without an extension. This was very clearly detailed in the error I got: [11ty] Problem writing Eleventy templates:[11ty] The template at './src/webfinger.liquid' attempted to write to './_site/.well-known/webfinger' (via `permalink` value: '.well-known/webfinger'), which is a target... more →
Posted in: JavaScript

Using Geocoding with Leaflet

When I first started talking about Leaftlet, I mentioned how it was "only" a map library, and by that I mean, only able to present a view/wrapper around tiles representing map data. There’s a heck of a lot of services that Google Maps, HERE, and so forth, add on top that won’t be present, things like routing, geocoding, and more. Considering the fact that Leaflet is, again, "only" a client-side JavaScript library, that’s just a fact of life. But I’ve been thinking about how I could integrate Leaflet with such services, and I thought I’d share a demo of just that – adding geocoding to Leaflet. WTF is Geocoding? Simply put, geocoding is converting... more →
Posted in: JavaScript

ColdFusion Component for Google Gemini

This week I had the pleasure to present on Google Gemini at the ColdFusion Summit. If you weren’t able to make it, I do plan on giving the talk again on the ColdFusion Meetup sometime later this year. After the presentation, I took my ‘rough and ugly’ code that called Gemini and decided to wrap it up in a nice ColdFusion component. This allows for (hopefully) easier use. For example: gemini = new gemini(key="your key", model="gemini-1.5-pro");result = gemini.prompt('why is the sky blue?'); And that’s it. The result variable will contain two keys, a raw value that is exactly what Gemini returned, and a text value that narrows down into the text response. Multimodal... more →
Posted in: JavaScript

Links For You (9/28/24)

Hello dear readers. I wish I could say I’ve got a restful weekend in front of me, but today we’re driving to New Orleans to pick up our eldest who has been in Germany for a year, and tomorrow we fly to Las Vegas for the Adobe ColdFusion Summit. Both are things I’m quite happy about, but it’s going to be a lot. I’m currently sitting, drinking coffee, and watching "Grey’s Anatomy", a good guilty-pleasure show. Before we get into the links, a few quick reminders. If you aren’t already a subscriber, use the form below or here to sign up for my mailing list. Right now it’s just tied to my posts and as a subscriber, you’ll get an email... more →
Posted in: JavaScript
1 2 3 4 5 6 88