My Bluesky Feed
Multiple library cards and many years with Libby, and still I had no idea I could do this. Thank you!
Working for myself has let me run wild with the tools I use, which means I get to try all the cool open source products, connect everything together to create the exact workflows I want, and use tools as ACTUAL TOOLS for me, instead of feel like they're systems I'm stuck with
"It's a privilege, not a right, and I want to make sure I'm taking advantage of it while I can"
- a student I'm mentoring, on having access to higher education and academic resources
Knowing that [some] students value their education is certainly not a novel thought, but is reassuring nonetheless
Listening to my forbidden love, Nickelback, and noticing the ridiculous number of vocal phrases that they end by moving from the 4th to a raised 3rd in a minor key. I get a sort of bittersweet, melancholic feeling out of it
e.g. the second "Where the good times (4th) gone (3rd)" in Good Times Gone
Nurturing this plant back to health, and even to flowering(!!), after a plant shop gave it to me for free because it was dying, is the highlight of my plant caretaking career this far
"I feel like Mario has a crush on Princess Peach"
- a student today, to his friends
I fear this slanderous gossip will spread quickly in the mushroom kingdom
Aaand, less than an hour later, first GitHub Action is set up, and successfully ran! Thanks @github.com 👋
(only downside: made a messy commit history while troubleshooting, but oh well)
Wrote the Python scripts to keep allof.nyc updated with fresh data from the NYC Open Data portal, now just need to set up daily scheduling for them
Vercel functions don't seem to be able to run Python, looks like GitHub Actions are a good option? Any tool recommendations for this?
If you've ever felt something stronger than just goosebumps while listening to music or viewing art, you might be feeling one of my favorite words: frisson
Turns out, I was indeed missing something: it's already working 😱
Build output w/ Pages router told me when a page was rendered with ISR, but the App router tells me those same pages are static...
It may be set up incorrectly, but I'm still getting the behavior I want, so oh well 🤷
Lmao. The car lane ends at 27th St and the bike lane / pedestrian area continues South, so maybe it's trying to show a gradual narrowing toward that?
Love the idea of swimming down Broadway though
Checked off the most important requirement for summer trip planning: the location has an out-of-area library card program
My collection will grow 😈
- @nextjs.org Pages router to App router: in progress!
Mostly done, just getting the hang of ISR again. It seems more complicated than in the Pages router to (1) fetch data server-side, and then (2) periodically invalidate the cache and check for new data?
Or, more likely, I'm missing something
Would @motion.dev help? Not sure if you're thinking drag like "drag an element around a page" or "drag a file and drop it into an HTML element." Motion definitely does the first, maybe the second
- JavaScript to TypeScript: ✅ done
Lots of learning during this. Third party library typing was a pain, but much easier thanks to definitelytyped.org
Upgrading my personal site tech:
- @react.dev 19: ✅ done
- JavaScript to TypeScript: 🔄 in progress
- @nextjs.org Pages router to App router: 🔜 next up
- @tailwindcss.com V4: ⏸️ later
Slow but steady 🐢
I'm getting the sense I'm wildly overcomplicating the process of creating an NPM package
Any good recommendations for tutorials on creating NPM packages, specifically for React components?
+1 for more whimsy! In animations, in other things we're building, and in life
Sending a lot of silly, personal, light-hearted emails to people whose work I love has been a great way to break down the pressure that I've felt around email for... as long as I've been emailing
And when I get a similarly casual email back, it feels like we've started a real conversation
Are you looking specifically for agencies, or for independent freelance / contract devs who use Astro for client projects as well?
Time to set up automated deployments for a site with @sanity.io , hosted on @vercel.com: ~2 minutes. Magic ✨
Suddenly, out of nowhere, a declassified World War II-era CIA guide to sabotaging fascism in the workplace has become one of the most popular free ebooks on the internet:
👌 thanks for simplifying this. I've been flirting at the edges of understanding cn() but this is a good push to go actually figure it out
Much like the bulk / cut cycles in fitness, I'm finding myself going through build / clean cycles in my personal projects. Build a bunch of messy, exciting new features, and go back later to make them performant and polished
Feels like the right balance
How many times must I sing along to Forever and Always by Parachute on the piano for it to stop making me cry
A few iterations into trying to dynamically construct Tailwind classes based on a prop provided to a component, and finally I encounter the docs that tell me that this exact thing is not possible 🤦
Rewrote this with @motion.dev (+/- some tweaks), and it's soooo much simpler now. I haven't played around with animations much, but Motion makes it more accessible for sure
Decided to channel my anxiety about the world into an act of appreciation for the great institution of libraries ❤️📚
I collect library cards when I travel, and now my collection is on my website: www.baileykane.co/library-cards
Design loosely modeled after: poke-holo.simey.me
Out of curiosity, did the template have you host sanity studio and the actual site in the same project?
I started with separate repos for sanity studio and for the actual site I'm building, and combining the two was the only thing that I couldn't find much guidance on
Just set up @sanity.io in an @astro.build project for the first time, and, apart from the self-inflicted issues with building in @vercel.com (oh, .gitignore typos 🤦), it's a blast
The clean integration (and documentation!!) of modern web dev tools like this really blows my mind
The Power Broker has been on my to-read list for years, but its length gave me pause. This thread is a good nudge to reconsider, thank you
After console.log(post)
-ing ad nauseam with post data from the Bluesky API, I figured I'd make a little JSON explorer tool instead. A couple hours in, it's clunky but functional!
Planning to include profile metadata, threads, etc.
Simple build:
- Added db columns (on @supabase.com) for the status of each registered domain. Processed the entire database this time, but planning to automate later: periodically check last update time for each site, scrape the site if outdated, and update db
- Added a basic filter on allof.nyc
Filter for website quality on allof.nyc : ✅
Users can filter to only view sites that have actual content on them. Big upgrade, as > 85% registered .nyc domains are unused, so filtering for only used sites is much more interesting. So many fun sites to find 🕵️
Oo fun, let me know if you end up making them! I just used glue that I had around the house (gorilla glue), but craft glue would def be easier for the eyes. Add a Sharpie and some rocks from wherever you live and you're good to go 👁️
It’s time to reclaim social media! ✊🔥
Billionaires & monopolies shouldn’t control our digital lives. Project @freeourfeeds.com is raising an initial $4m to build a public-interest alternative for social media, on the AT Protocol.
It's an ambitious, challenging project. Read more: freeourfeeds.com
Totally! Eventually I'd love to connect with @atproto.com rather than just Bluesky (built using AT Protocol), and host a blog on AT Protocol. Baby steps for now
Oh, and separating my posts from my replies. Or giving some other indicator to be able to tell the difference
Added reply/repost/like counts on my rendered Bluesky feed at www.baileykane.co/feed ✅
Now for the harder stuff: showing threads in a reasonable way, images, and link previews
Great to hear! Feedback and ideas welcome, and lots of improvements to the data exploration features coming soon
Thanks for asking! Different than GoDaddy - it's an exploration of how .nyc domain names are being used, from when they were first offered back in 2014 to today
Mostly it's an excuse to play around with open data sets
.nyc program info: www.ownit.nyc Data: data.cityofnewyork.us/Business/-ny...
Moved allof.nyc to a usable data fetching strategy✅
Tried:
- Fetching the whole database client-side. Horribly slow
- Fetching the whole database on build. Fast, but failed due to Vercel build limits
Now, fetch just the current page of data client-side. Good experience, mid speed
First day playing around with @astro.build, and I appreciate the great documentation and the simplicity of actually writing code. But the best part is that the "code fence" concept actually uses...
code fences
...to separate the JavaScript from the HTML. Feel like an amateur ASCII artist
Data on NYC's congestion pricing is starting to roll in. Very early results, but routes that transition between the congestion pricing zone and outside it seem to have clear timing improvements
Source: www.congestion-pricing-tracker.com, from Joshua Moshes and Benjamin Moshes at Brown Uni
There were some tough moments for my family last year, and we don't have the easiest time talking about them with each other
I made a bunch of these little friends to help us share how we're feeling (send a picture instead of typing it out), and they were a hit! Great desk companions too
The styling of my Bluesky feed on my personal website is getting cleaner ✨
I'm for sure stumbling with the Bluesky API though, without understanding all of the core concepts. Baby steps