Automating Movie Recommendations with Generative AI and Pipedream

For the past few months or so, I’ve started tracking my movie watching with Letterboxd. I’m not doing a lot of reviews, mostly just logging, but I find it neat to look back and remind myself of what I’ve watched recently. You can see my profile if you’re curious, or check out my "Now" page as well. I thought it might be interesting to see if I could use my Letterboxd data along with Google Gemini as a way to suggest the next movie I should watch. I was able to build a quick workflow using the incredible Pipedream in a few minutes. Let me share with you how I did that. What does it do? # At a high level, my workflow does the following: It runs, automatically,... more →
Posted in: JavaScript

JSON Results with Google Gemini Generative AI API Calls

Forgive the somewhat alliterative title there, but today’s post covers something that’s been on my mind since I started playing with Google Gemini, specifically, how to get the results of your API calls in JSON. To be clear, the REST API returns a result in JSON, but I’m talking about the content of the result itself. Before I continue, a quick shot out to Allen Firstenberg who has been helping me off and on with Google Gemini stuff. Anything I get wrong though is entirely my fault. 😜 Ok, so before I go on, let’s look at a typical result. Take a prompt like so: "What is the nature of light". Pass this to Gemini via the API, and the result you get, once you... more →
Posted in: JavaScript

HTML popover Attribute

Modals have been an important part of websites for two decades. Stacking contents and using fetch to accomplish tasks are a great way to improve UX on both desktop and mobile. Unfortunately most developers don’t know that the HTML and JavaScript specs have implemented a native modal system via the popover attribute — let’s check it out! The HTML Creating a native HTML modal consists of using the popovertarget attribute as the trigger and the popover attribute, paired with an id, to identify the content element: <!-- "popovertarget" attribute will map to "id" of popover contents --> <button popovertarget="popover-contents">Open popover</button> <div... more →
Posted in: JavaScript

Using GenAI to Help Pick Your D & D Class

A few weeks back I wrote up my experience with generative AI as a dungeon master. That post ended up being really popular and got me thinking about other ways I could integrate D & D, or other games, with Generative AI. With Gemini 1.5 now available via API, I thought it would be good to find an excuse to hit the API in a demo. So with that in mind, I’d like to introduce you to the Class Suggester. The Application # The app begins by simply presenting some introductory text and invites you to click a button to roll for your stats. You can hit the Roll Stats button as many times as you want. It uses the standard D & D rule of rolling a six-sided dice four times and removing the... more →
Posted in: JavaScript

Using Netlify Edge and Blob Support to Investigate Website Traffic

For some time now, I’ve relied on my Netlify Analytics report to keep track of how well my site is doing, what content is popular, and so forth. I was a Google Analytics user for over ten years, but when they updated the UI, I saw red every time I tried to use it. Netlify Analytics is super simple and quick. (My only real complaint is that it’s limited to 30 days, but I’ve got free access to the feature so I’m happy to not care about that.) I complement Netlify Analytics with GoatCounter as well. Netify’s analytics show much more traffic than Goat, and I figure the truth is somewhere in the middle, and again, I’m fine with that. What’s odd though is that... more →
Posted in: JavaScript

A Quick First Look at Amazon Bedrock (with Node.js)

My regular readers (hello, yall rock!) know I’ve been playing with generative AI the past few months. I’m still a bit skeptical about the amount of hype involved around the space, but I’m slowly getting more excited as I see some of the interesting possibilities available with these tools. Most of my recent exploration has been on the Google Gemini side, but after hearing my buddy Todd Sharp talk about Amazon Bedrock on his stream yesterday, I figured it was time to check it out. (FYI, you should absolutely check out his weekly Twitch show on the AWS Twitch channel called "Streaming on Streaming" – Wednesdays at 3PM CST.) Getting Started # So obviously, you want... more →
Posted in: JavaScript

All Your Dragons Are Belong To Us

Forgive the somewhat silly title, but it’s not like I haven’t been silly here before. Almost four years ago I wrote a little post about a random text-generated app called the "Queen Maker": Let’s Make Everyone a Queen!. The idea for that app (which lives on at queenof.netlify.app) was to use a random text library called Tracery to generate random short "queen-based" stories. Yeah, that may not make much sense, but read the earlier post or play with the app to see. The important bit though was that it was inspired by a cool Twitter bot called Dragon Hoards. This bot, like many "fun" bots, is now dead, but it still makes me smile when I think about... more →
Posted in: JavaScript

Get Started in AI and NFTs with the Limewire API (Sponsored)

AI media creation has expanded to incredible video art and a host of other important improvements, and LimeWire is leading the way in creating an awesome interface for the average user to become an AI artist. Limewire has just released its Developer API, a method for engineers like us to create dynamic AI art on the fly! Quick Hits Free to sign up! Provides methods to create a variety of quality images from any number of AI services and algorithms Create images based on text and other images Modify existing images to scale them, remove backgrounds, and more Use JavaScript, PHP, Python, or any of your favorite languages Documentation is clean and easy to understand Very easy to get started A... more →
Posted in: JavaScript
1 2 3 76