Stats

Views, hearts and highlights for every page, live

Every post, note and project here counts its readers and lets them leave a heart. Posts and notes also let you highlight the bits you like. This is all of it. No cookies and no names: a reader is a random id kept in their browser, so each person counts once per page.

Views
2,202
Readers
2,563
Hearts
11
Highlights
1

Every page

Page Type Views HeartsHighlights
Introducing astro-d1-reactions: hearts, reads and highlights for Astro in one integrationPost18900
Introducing Lil' DebuggerPost16710
text-wrap, overflow-wrap and word-break: which one do I actually want?Post10511
No more hand-edited datesWorklog5300
Using hunk as a diff viewer in lazygitPost4800
Claude, meet my Obsidian vaultPost2900
CVPage2900
Letterboxd watchlist for RadarrWorklog2700
What should actually go in your CLAUDE.md?Post2500
OtterProject2000
MoonsProject1900
CSS Media QueriesNote1800
Work with mePage1800
Check if JavaScript object is emptyNote1500
NowPage1500
Green ClawsProject1400
ZUIProject1400
Stimulus cheatsheetNote1300
StatsPage1270
My setupPage1210
My development stackPost1100
Intl.PluralRulesNote1100
iOS Safari bugNote1100
Locking scrollNote1100
Lil' DebuggerPage1000
AbortControllerNote1000
AxiosNote1000
Bash to Fish (and back)Note1000
JS body classNote1000
Run npm script from another directoryNote1000
Theme UINote1000
Otter for iOSWorklog900
Command line toolsPost900
Clear DNS cacheNote900
Disallow AI botsNote900
Reshaping data in JavaScriptNote900
The Zed StackPage900
Otter CollectionsWorklog800
zed-ios-app-starterWorklog800
How I replaced Algolia on my Astro site with Cloudflare D1Post800
Reps: Wordle, but with JavaScriptPost800
Styling React 2023 editionPost800
ColophonPage800
FeedsPage800
Async cheatsheetNote800
CSS cursorsNote800
CSS font-stacksNote800
CSS GridNote800
DestructuringNote800
ES Module import/export syntaxNote800
FetchNote800
The “Lobotomised Owl” SelectorNote800
TanStack Query (React Query)Note800
RepsProject800
SimmerProject800
A bedside screen for the time, my trains and the weatherWorklog700
Introducing Green ClawsPost700
Lessons learned building design systemsPost700
Check if value is array in JavaScriptNote700
CircleCINote700
Cleanup / optimise computerNote700
Command line toolsNote700
Create local self-signed certificateNote700
Aspect ratioNote700
CSS environment variablesNote700
:focus-visibleNote700
Styling siblings on hoverNote700
Cutting the mustardNote700
CypressNote700
DockerNote700
Get file size for all files in directoryNote700
Fixed-width numbersNote700
@font-faceNote700
FormikNote700
GSAPNote700
React Error BoundaryNote700
useRefNote700
Redux SagaNote700
RenderIfRoleNote700
Technical Job Interview QuestionsNote700
Testing libraryNote700
TypeScriptNote700
2020 In ReviewPost600
Mastodon to Supabase integrationWorklog600
Quick save and smarter tags in OtterWorklog600
Customise Sublime Text 2Post600
aria-label notesNote600
Async load CSSNote600
Better mobile form inputsNote600
Native browser loading stateNote600
CSS FiltersNote600
Nested border radiusNote600
Text wrapping & word breakingNote600
DenoNote600
EleventyNote600
ES6 templatingNote600
Fullscreen videoNote600
Graphite CLINote600
Git worktrees with GraphiteNote600
ImmerNote600
JestNote600
Looping and iterating in JavaScriptNote600
JSDocNote600
Handling Long Words and URLs (Forcing Breaks, Hyphenation, Ellipsis, etc)Note600
Pure ESM packagesNote600
SSRNote600
useIdNote600
useReducerNote600
Supabase.jsNote600
Text selectionNote600
VitestNote600
ZustandNote600
JournalProject600
Otter v2.0.0 releaseWorklog500
zed-surroundWorklog500
Introducing Code NotesPost500
Introducing MoonsPost500
Otter v2.0.0Post500
Better link underlinesNote500
Make a button element look like a linkNote500
C++ for TypeScript developersNote500
CSS Object stylesNote500
Rainbow linksNote500
Scroll-margin-topNote500
DebounceNote500
Fluid typographyNote500
Get last array itemNote500
GitNote500
Git branching strategiesNote500
Hyphens and dashesNote500
JavaScript datesNote500
Make a directory if none existsNote500
NunjucksNote500
Web performance tipsNote500
React.forwardRefNote500
React TypeScriptNote500
Remove array duplicates with SetNote500
SQLNote500
StorybookNote500
SupabaseNote500
SvelteKitNote500
Switch(true)Note500
URL & URLSearchParamsNote500
VS Code SnippetsNote500
Code Notes (Gatsby Theme)Project500
Surround for ZedProject500
Cloudflare scraperWorklog400
React blogpostWorklog400
Opengraph imagesWorklog400
Launched ZUI (Zooey)Worklog400
agent-skillsWorklog400
Otter ReaderWorklog400
Moons speaks six languagesWorklog400
Design systems at FairFXPost400
Moons 2.2Post400
AI promptsNote400
Form autofill attributesNote400
Changing the default text editor on macOSNote400
Clamp numberNote400
Contentful migrationsNote400
CryptoNote400
Fish shellNote400
Flexible content without wrapper divsNote400
GatsbyNote400
Get selected textNote400
TypeScript JSON typeNote400
Mock React Router location inside Storybook storiesNote400
NockNote400
Picture elementNote400
PlaywrightNote400
PlopNote400
PostgresNote400
Client-only ReactNote400
React compound componentsNote400
Redux / Redux ToolkitNote400
Rust for TypeScript developersNote400
SvelteNote400
TanStack TableNote400
TypeScript catch block errorsNote400
TypeScript functionsNote400
Useful JavaScript functions & snippetsNote400
Vercel Serverless functionsNote400
vh, svh, lvh, and dvhNote400
astro-git-datesProject400
BirdProject400
Free FontsProject400
Lil' DebuggerProject400
Rigel VS Code themeProject400
RecursionNote310
Otter Raycast OAuthWorklog300
WorklogWorklog300
Otter AI titlesWorklog300
Otter database upgradeWorklog300
Add matching collections to Otter feed itemsWorklog300
Moving to CloudflareWorklog300
strifxWorklog300
Site-wide search + Raycast extensionWorklog300
astro-d1-search released on npmWorklog300
shotframeWorklog300
This site now comes in four flavoursPost300
Introducing Design System UtilsPost300
On staying currentPost300
The Otter ecosystemPost300
Two versions of jQuery?Post300
Updating npm packagesPost300
Yeoman Generator Development TipsPost300
Introducing Zero, my project factoryPost300
The ZUI ecosystemPost300
MoonsPage300
Apollo GraphQLNote300
Array methods summarisedNote300
Big O NotationNote300
Coding standardsNote300
Commit message guidelinesNote300
Express middleware testingNote300
GitHub ActionsNote300
GitHub markdownNote300
HTTP MethodsNote300
IntersectionObserverNote300
Intl.NumberFormatNote300
is-mobile checkNote300
Jest globalsNote300
ClassesNote300
KeycodeNote300
Disable dark mode for specific Mac appsNote300
Next.jsNote300
npm package versionsNote300
Opengraph metacrapNote300
QMDNote300
Quotation marks in different countriesNote300
React component patternsNote300
React ContextNote300
README.md / markdown snippetsNote300
Regular expressionsNote300
Node SecurityNote300
Styled ComponentsNote300
TanStack FormNote300
Test structureNote300
ThrottleNote300
tmuxNote300
Type check helpersNote300
useToggle React HookNote300
VIM cheatsheetNote300
WebmentionsNote300
YalcNote300
astro-d1-searchProject300
Code BuddyProject300
Design System UtilsProject300
@mrmartineau/kitProject300
GitHub StarsProject300
Zed package starterProject300
Otter Raycast ExtensionWorklog200
Homepage updatesWorklog200
Add Now pageWorklog200
url-mergeWorklog200
Otter web v1.0.0Worklog200
zed-stack-starterWorklog200
React Status Bar v1Worklog200
Launched fonts.zander.wtfWorklog200
zed-astro-starterWorklog200
Things I've been building recently while evaluating AI agentsPost200
Introducing astro-d1-search: site search for Astro in one integrationPost200
Cloze test creatorPost200
Creative Technology Monthly: Disappearing interfacePost200
Introducing OtterPost200
Pure CSS IconsPost200
Quick & dirty Cloze content test with the Lettering.js jQuery pluginPost200
Rebel with a CORSPost200
Redesigning my site... 2020 editionPost200
Introducing Time TutorPost200
Improving the UX of a front-end frameworkPost200
My zero-to-one stackPost200
The modern CSS hiding inside ZUIPost200
Awesome Web Dev resourcesNote200
Clickable boxNote200
CSS Native Element ThemingNote200
Native CSS NestingNote200
CSS ProtipsNote200
FaviconsNote200
Idiot-proof Git RebasingNote200
Golang for TypeScript developersNote200
Fastest Google FontsNote200
GraphQLNote200
Ignoring codeNote200
Pluralisation with inflect()Note200
Jest global mocksNote200
Mix blend modeNote200
Native image lazy loadingNote200
NATS & JetStreamNote200
oEmbedNote200
PHP for TypeScript developersNote200
Postman.ioNote200
Python for TypeScript developersNote200
Removing items from arraysNote200
Shiki TwoslashNote200
cloudflare-worker-scraperProject200
FloraProject200
KickoffProject200
Lang CompareProject200
Otter BookmarksProject200
Search npm PackagesProject200
@mrmartineau/strifxProject200
@mrmartineau/xtractrProject200
Otter Bookmark entry improvementsWorklog100
my-api-toolsWorklog100
Code notes come to the siteWorklog100
vite-plugin-atlasWorklog100
UK Primary School MathsWorklog100
Launched RepsWorklog100
Add a projects pageWorklog100
Spotify FavouritesWorklog100
Lab experiments + ZUI playgroundWorklog100
Creative Technology Monthly: ChatbotsPost100
CSS3 'column-span'Post100
How to fix hidden characters in password inputs in old IEPost100
How to create custom grids with KickoffPost100
How to painlessly move Kickoff’s assets directoryPost100
Coda Clip Library for HTML5Post100
Introducing KickoffPost100
Jargon bustingPost100
More efficient Grunt workflowsPost100
Reviving old music gadgets for my sonPost100
Pinboard.in Chrome ExtensionPost100
Sublime Text packages for Front-end web developmentPost100
My process for using SVG on the webPost100
The Choreographic GridPost100
The road to Kickoff version 4Post100
Tooling aroundPost100
Improve website event tracking with trak.jsPost100
Check if JavaScript array is emptyNote100
CSS FunctionsNote100
CSS scroll-behaviorNote100
FirebaseNote100
font-weightNote100
Hexadecimal colour code for transparencyNote100
CSS logical properties and valuesNote100
Object.groupByNote100
Conditionally render on the client or serverNote100
React Query with GraphQLNote100
Redux conceptsNote100
Save scroll positionNote100
Showing/hiding contentNote100
SwiftUI for TypeScript developersNote100
HTML VideoNote100
Web ShareNote100
Code Notes SearchProject100
React Status BarProject100
Spotify FavouritesProject100
Time TutorProject100
url-mergeProject100

Activity

This week

Earlier

  • Someone from London, United Kingdom liked the pageMy setup ·

  • Someone from London, United Kingdom liked the pageStats 7 times ·

  • Someone from London, United Kingdom liked the noteRecursion ·

  • Someone from London, United Kingdom liked the postIntroducing Lil' Debugger ·

Keyboard shortcuts

Tap these keys to navigate to the appropriate page.