John Cox

Blogs · @wyome · Now · Shelf

Interesting

Chrome Web Store - Clockwork

This is the Chrome Web Store listing for Clockwork, a PHP development tool that runs in the browser's devtools and shows what happens inside an app during a request. It surfaces database and cache queries, Redis commands, log entries, dispatched events, queued jobs, rendered views and performance metrics, and it covers commands, queue jobs and tests as well as HTTP requests. It needs a server-side Composer package to collect the data, has first-class Laravel support, and can be wired into vanilla or custom PHP apps. The listing (version 5.3.2, updated January 2025) says the developer collects no user data, and it points to the Clockwork website for the installation guide and privacy details.

Permalink

144 Republicans Who Voted For Default - Business Insider

Henry Blodget's opinion piece, written after the October 2013 deal that ended the 16-day government shutdown, argues that the 144 House Republicans who voted against the short-term bill effectively voted to keep the government closed and push the U.S. into default, while the 285 who voted yes, including every Democrat, acted responsibly. He singles out Paul Ryan, the former vice presidential candidate known for fiscal responsibility, and says his "no" vote should end that reputation. The piece also notes the deal only lasts a couple of months, so he expects another round of grandstanding soon.

Permalink

Essence | Icons & Coffee

A MacStories roundup of indie apps that have adopted Apple's new Siri AI features, App Intents, and onscreen awareness: Bear (create, append to, and pin notes by voice, handy for annotating screenshots), Gentler Streak and The Outsiders (Spotlight/Siri snippets of workout, sleep, and readiness data), Cheatsheet Notes (appending photos and text to quick notes, plus extra-large widgets), and DoMarks 4.0 (saving, opening, and randomly resurfacing links by action category). The same page also carries shorter items, including Apple Music Hall's London opening, an M5 Ultra Mac Studio review focused on running local AI agents, Apple's Reference Image photo-verification scheme, the Apple Watch Series 12 and Ultra 4's five-second heart rate sampling, and ChatGPT planning 5K/10K running routes from OpenStreetMap data.

Permalink

Grunt: The JavaScript Task Runner

This is the introduction to Grunt, the JavaScript task runner, making the case that automating repetitive chores like linting, minification, compilation, and unit testing saves effort once it's set up in a Gruntfile. It pitches Grunt's large plugin ecosystem (hundreds of plugins, with publishing your own to npm described as easy) as the main reason to pick it. It closes with sample terminal output of a single run that lints, tests with QUnit, cleans, concatenates, and uglifies a small library, showing what the setup effort buys you.

Permalink

Ghost - Just a blogging platform

This is the marketing landing page for Ghost, not an article with an argument. It pitches Ghost 6.0 as a platform for professional publishers to build a website, publish, send newsletters and sell paid subscriptions, with a 14-day free trial. It claims more than $100 million in annual revenue for publications on the platform, with 0% payment fees, and cites examples such as 404 Media, Platformer and The Lever. The scraped text also contains a referral discount banner, so there's no reporting or analysis here beyond the product's own claims, and the page is mainly useful as a reference for what Ghost offers and who uses it.

Permalink

PHP Image Cache

Introduces Image Cache, a small PHP class by Erik Nielsen (the nielse63/phpimagecache Composer package) that takes a .png, .jpg, or .gif, compresses it, saves it to a cache directory, and returns the new path for use in an img tag's src. The pitch is faster page loads, backed by one local test where a large PNG dropped from 2.19 seconds to 23 milliseconds, a roughly 99% cut. It covers setup (a require or Composer install, an optional custom cache directory, and a single cache() call), then ends with a request for contributors via GitHub pull requests.

Permalink

FullCalendar - Full-sized Calendar jQuery Plugin

This is the FullCalendar homepage, pitching it as a JavaScript calendar library with official integrations for Angular, React, Vue, and plain JavaScript. The code samples show the same basic setup in each framework: install a core package plus a plugin like daygrid, then configure an initial view, toolbar, and events. It sells the library on its 300+ settings, modular plugins for smaller bundles, and an open-source core with 10+ years of history, with paid premium plugins and support as the upsell. It's a product landing page rather than documentation or a comparison, so it's useful mainly as a pointer to the library and its quick-start patterns.

Permalink

Welcome to an Easier Way to Blog

This is the home page of dropplets.com, a personal site by Vincent McFarland offering short, plain-language tech guides aimed at turning ordinary users into confident "tech gurus." It also explains the quirky domain spelling (dropplets, not droplets) with a note for English teachers. The page lists three recent guides: finding a lost Android phone with Google's Find My Device (the successor to Android Device Manager, comparable to Apple's Find My iPhone), protecting a home Wi-Fi network against wardriving intruders, and preparing for hard drive or SSD failure.

Permalink

Web-based protocol handlers | MDN

This is the MDN reference for `navigator.registerProtocolHandler(scheme, url)`, which lets a website register itself as the handler for a URL scheme such as `mailto` or a custom `web+` scheme. It sets out the rules: custom schemes must start with `web+` followed by lowercase letters, otherwise the scheme must come from a fixed allowlist (bitcoin, irc, magnet, sms, tel, xmpp and others). The handler URL must be same-origin, served over https, and contain a `%s` placeholder for the escaped URL. A `SecurityError` is thrown for a bad scheme, mismatched origin, or non-https handler, and a `SyntaxError` for a missing `%s`. The worked examples, a web mail app handling `mailto:` links and a `web+burger` custom scheme, show how a clicked link gets routed to the registered page, so it's useful when you need the exact validation rules or a template for registering a handler.

Permalink

jQuery Pin

The saved text is placeholder content from a Webpop demo page, not a real article. It opens by promoting a sticky left-hand menu, "just like the Webpop documentation," that you can pin in place, then fills the rest of the page with dessert-themed lorem ipsum (macaroons, tiramisu, gummies, and so on). It makes no argument and reports nothing, so the only thing worth recovering is the sticky-sidebar layout example, which is probably why you kept it.

Permalink

elclanrs/jq-idealforms · GitHub

Documentation for Ideal Forms 3, a jQuery form plugin (GPL or MIT, IE9+ and modern browsers) that adds on-the-spot validation, keyboard support, container-adaptive layout without media queries, and custom checkboxes, radios, file inputs and a jQuery UI datepicker. Version 3 is a rewrite with a more modular architecture, custom markup, and an extension system, but it breaks compatibility with version 2, drops IE8 and the custom select menu (pointing to jquery.idealselect instead), and moves its styles to Stylus. The rest is a reference covering setup, options, markup, built-in and custom rules, methods, extensions (steps, dynamic fields, ajax), localization and themes.

Permalink

Keypress: A Javascript library for capturing input

This is the usage documentation for Keypress, a JavaScript library for keyboard shortcuts. It starts with creating a `Listener` and registering simple, counting, and sequence combos. It then covers the `register_combo` options (`is_exclusive`, `is_solitary`, `prevent_repeat`, and scoping), batch registration and unregistering, and binding a listener to a single DOM element or pausing it during text input. It ends with practical caveats: use "meta" instead of ctrl or cmd, a combo with meta can contain only one non-modifier key, Print, Pause, and Insert are unreliable, and numpad keys need a `num_` prefix.

Permalink

Health Rewards | EveryMove

FitnessSyncer is a service that pulls health and fitness data from dozens of apps, trackers, and devices (Fitbit, Garmin, Strava, Apple Health, Oura, Withings, Dexcom and others) into one account. It covers everything from activity and sleep to glucose, blood pressure, ECG, and medication, and it can also automatically push that data back out to other services, which makes it useful for migrating between platforms, backing up records, or keeping weight consistent across apps. On top of the syncing it offers a dashboard, activity stream, calendar, minute-by-minute daily analyzer, equipment wear tracking, threshold alerts, and friendly leaderboards. The page ends with a compatibility matrix showing which data types each service can read, write, or only update, which is the part to check before relying on it for a specific device pairing.

Permalink

jQuery One Page Scroll by Pete R. | The Pete Design

This is the landing page for One Page Scroll v1.3.1, a jQuery plugin by Pete R. that turns a set of `<section>` elements into a full-screen, snap-scrolling site in the style of Apple's iPhone 5S page. Setup is minimal: wrap the sections in a container div and call `$(".main").onepage_scroll()`. Animation timing, the selector, and the CSS3 easing can all be customised. The code is free on GitHub, and there's a pointer to a separate Pure JS/Zepto version for anyone who wants to avoid jQuery.

Permalink

Introducing Responsive Web Typography With FlowType.JS | Smashing Coding

Smashing Magazine's account of how Simple Focus built FlowType.JS, a small jQuery plugin (about 450 bytes minified) that resizes font-size and line-height as a function of an element's width, so line length stays roughly constant the way images scale. It walks through the development: a first prototype keyed to window width that broke at breakpoints, a fix to measure the element instead, min/max thresholds, and a peer's refactor that collapsed the conditionals into two lines. It closes by admitting open questions, such as whether to start from font size or width and the effect on text zoom accessibility, and frames the plugin as an experiment.

Permalink