Duncan McClean

@duncanmcclean.com

Christ follower. Software Developer @statamic.com. Building builtwithcargo.dev

I’m currently looking for remote freelance or full-time opportunities in web development. Expertise in Laravel, Vue, React, Alpine.js, Livewire but open to anything. 12 years of experience. Available immediately. France, UK, Europe.

Antlers Toolbox for PHPStorm is now available! Huge thanks to John Koster for a truly obsessive level of passion for this kind of stuff. 🫶

Bild

Statamic turns 14 today! 🎂🎉 Here's our launch post — from an era of the web that glows warmly with nostalgia. Also in 2012— Facebook went public and acquired recent photo sharing startup Instagram for $1 billion. Yahoo! bought Tumblr for $1.1 billion. Slack and Tinder launch. Wild. ❤️

Bild

Something is wrong with my Claude Code and I can't figure it out... The latest model I can use is Opus 4.5. It claims that updates are available but Homebrew says I'm on the latest version. I've tried re-installing and clearing my .claude directory to no avail. Any ideas?

BildBild

Our friend Marty Friedel is taking the stage at Laracon AU in Brisbane this November with a talk called High Performance Statamic — the story of dragging a decade-old, 50k-page site into Statamic + Bard and making it FAST.

Bild

I've had this one in my drafts for a while. We recently needed to set up Satis to distribute private packages. We could have used Private Packagist but we opted to self-host using Satis instead. Here's how we set up Satis on a Laravel Forge server. ⬇️ duncanmcclean.com/satis-larav...

Setting up Satis on Laravel Forge

We recently set up Satis for distributing private packages at work. We could have used Private Packagist but we opted for Satis because we wanted to control auth and avoid an unnecessary monthly expense.

duncanmcclean.com

Ran into something I hadn't considered with clearinghouse.app this week. Accountants/bookkeepers are a big audience for my app, but while one was onboarding, they realised that only admins can install Stripe apps. They only had "Accountant" access (and rightly so) 😬

ClearingHouse: Sync Stripe revenue into FreeAgent

ClearingHouse syncs Stripe invoices, payments, refunds and fees into FreeAgent with per-product categorisation and multi-currency support.

clearinghouse.app

🚨 Supply chain attack on the Laravel Lang organization: 700+ historical versions across multiple community-maintained Laravel Lang packages were compromised with an RCE backdoor, including: laravel-lang/lang laravel-lang/http-statuses laravel-lang/attributes Laravel-Lang/actions

Laravel Lang Compromised with RCE Backdoor Across 700+ Versi...

Laravel Lang packages were compromised with an RCE backdoor across hundreds of versions, exposing cloud, CI/CD, and developer secrets.

socket.dev

If you haven't updated Composer to 2.9.8 or 2.2.28 (LTS), do so urgently! GitHub will restart the rollout of their new GitHub Actions tokens later today. They've improved secret masking to cover this Composer issue, but you're safer if you update. #composerphp #php #phpc

Packagist@packagist.com · 3mo ago

🚨 Security advisory: Composer 2.9.8 and 2.2.28 fix a vulnerability leaking GitHub Actions GITHUB_TOKENs to job logs via error messages. Update now or disable affected workflows. blog.packagist.com/composer-2-9... #composerphp #phpc #php

Ran into something I hadn't considered with clearinghouse.app this week. Accountants/bookkeepers are a big audience for my app, but while one was onboarding, they realised that only admins can install Stripe apps. They only had "Accountant" access (and rightly so) 😬

ClearingHouse: Sync Stripe revenue into FreeAgent

ClearingHouse syncs Stripe invoices, payments, refunds and fees into FreeAgent with per-product categorisation and multi-currency support.

clearinghouse.app

Been a tough 3 months since getting laid off at the end of January. I'm actively taking on freelance projects - Laravel, Vue, React, Stripe integrations. Reach out if you need development work done.

Post image

🚀 SEO Pro 7.7 shipped this week with two highly requested features – Redirects and Error Management. Rename slugs and redirects are created for you. Manage 301 and 302 errors in a dedicated area. Full wildcard support. 404s get logged so you can fix them easily, in order of importance.

BildBildBild