ColdFusion Wrappers for Bluesky and Mastodon

It’s been a hot minute since I opened a repo for ColdFusion code, but I thought I’d package up my previous wrapper for Mastodon support, port over my BoxLang Bluesky module, and properly release the code on GitHub for folks who want it: https://github.com/cfjedimaster/coldfusion-social-wrappers Right now I’m using one repo for both Bluesky and Mastodon. Usually I’d separate them, but with the "support" being a grand total of one file each, I figured no one would mind getting the "extra" code if they only care about one. I’ll also note the code is very much focused on posting, not reading data, but part of the reason I wanted to package this up... more →
Posted in: JavaScript

Building a Bluesky Sentiment Dashboard with Alpine and Chrome AI

Good morning, programs! Today I’m sharing yet another example of Chrome’s on-device AI features, this time to demonstrate a "Bluesky Sentiment Dashboard". In other words, a tool that lets you enter terms and then get a report on the average sentiment for posts using that word. I actually did this before (and yes, I forgot until about a minute ago) last year using Transformers.js: Building a Bluesky AI Sentiment Analysis Dashboard. I also built this for Twitter, before it went down the toilet, killed off API access, etc. etc., but I can’t seem to find it in my archives so maybe I’m hallucinating. That being said, earlier this week I thought I’d try building... more →
Posted in: JavaScript

Working with the Bluesky API in BoxLang

I’ve built multiple integrations with the Bluesky API, all making use of either the Node or Python SDK, but I thought I’d take a quick look at what it would take to build a BoxLang integration using the REST API. Turns out it’s pretty easy (with some caveats I’ll explain at the end) – here’s what I built. Authentication To authenticate, you’ll need your username and password for your account. I’m picking this up via environment variables and doing a bit of validations: BS_HANDLE = server.system.environment?.BLUESKY_HANDLE ?: ''; BS_PASSWORD = server.system.environment?.BLUESKY_PASSWORD ?: ''; if(BS_HANDLE == "" || BS_PASSWORD == "")... more →
Posted in: JavaScript

Building a Bluesky AI Sentiment Analysis Dashboard

As the "Great Social Network Wars" carry on (my term, not anyone else), I’m finding myself more and more enjoying Bluesky. I do more posting on Mastodon, but Bluesky reminds me a lot more of early Twitter. Threads is… ok, but has felt too corporate. I can’t even remember the last time I checked it. Earlier this week, I was poking around the Bluesky API and was incredibly happy to discover that their Search API does not require a key and supports CORS, which means a simple client-side application could make use of it. In the past I had built similar tools for Twitter, back when it had a decent API, and I thought it might be fun to build something for Bluesky, specifically,... more →
Posted in: JavaScript

Bluesky Mapping

Update: I got busy and created a second map. Social Media Locations (comment below with suggestions for a better name). This map allows you to search for real-time Bluesky mentions of locations around the world. To start a search you just need to click on a map label for a country, state, city, town or neighborhood. Once you click on a place name messages will (often very slowly) begin to Maps Mania… more →
Posted in: Interactive Maps

Automatically Posting to Bluesky on New RSS Items

Hey folks – just a quick warning. This post is kind of a mashup/update of two earlier posts. Back almost two years ago I talked about this process but used Twitter and Mastodon: "Automatically Posting to Mastodon and Twitter on New RSS Items". Earlier this year I first talked about using the Bluesky API, with a very appropriately named post: "Using the Bluesky API". As I said, this post is going to mash up bits from both, and include new things I’ve not covered before, but for those of you who have been around here for a while, some of this may be repetition. For this solution, I’m using Pipedream. I’ve blogged for years now and love it. Their free... more →
Posted in: JavaScript

How to Use Your Domain on Bluesky

Bluesky is a hot new social networking platform that functions like Twitter from Twitter’s original founder. New users are flooding into the platform as a respite from Elon Musk’s vision of Twitter and the fumbles that have happened since his takeover. Upon signing up for Bluesky, your username defaults to {yourdesiredhandle}.bsky.social, but there’s a better and more secure option. One of Bluesky’s awesome features is the ability to base your username on a hostname’s DNS record. In short, if you control a hostname’s DNS, you can essentially verify yourself. For example, my Bluesky username is davidwalsh.name. Let’s look at how you can base your username... more →
Posted in: JavaScript