emac®
emac®
[email protected]

My digital
workshop.

The instruments I reach for every day.

A short, honest inventory, curated and not sponsored. If it is on this list, I have actually used it long enough to form an opinion.

Hardware · desk setup

Workstation

Mac Studio M2 Max32GB · 2023

The real workhorse. Handles multiple iOS and Android emulators alongside the web stack without flinching. Silent under load.

MacBook Pro 13" M116GB · 2020

The road machine. After years on Intel, I still have not heard its fans turn on, not even during long builds on launch week.

Samsung 27" curved, x2Displays

Twin curved panels. One for editor and terminals, one for runtime, docs and inspectors. No context switching across windows.

Apple Magic TrackpadInput

Gestures beat keyboard shortcuts for window management. It lets me navigate macOS like an instrument instead of a tool.

iPhone 16 Pro MaxMobile

Primary device for testing mobile flows, capturing on-the-go feedback and running production ticket checks at events. The Pro Max battery gets me through launch days.

OnePlus 8TAndroid

Android counterpart for QA. Keeps me honest about cross-platform behaviour, especially for React Native work and push notification testing on mid-range hardware.

Editors · runtime

Development

Claude Code MaxAI pair

My default pair programmer. Long-running agentic sessions across the full repo: refactors, migrations, spec work and browser-verified UI passes. It earned the top of this list.

Codex ProDevelopment assistant

An assistant for developing, reviewing and refining code in my workflow.

PhpStormIDE

Still the sharpest tool for anything PHP. Refactors, debugging and database inspection in one place. Worth every penny.

ZedEditor

Fast, focused and beautifully opinionated. The collaborative editor I reach for on JS, TypeScript, Rust and Astro when I want the computer to disappear.

KestroAgents · Homegrown

A desktop UI for my coding agents, built by Victor Vázquez and me. It runs Claude Code, Codex and OpenCode on my own subscriptions: tabs as sessions, chat, diffs, terminal and editor in one window. Tauri, Rust and React.

WarpTerminal

A terminal that finally treats commands as blocks. Sessions, blocks, AI autocomplete and fast navigation. It replaced my muscle memory for iTerm in a week.

TermiusSSH

Syncs hosts, keys and snippets across machines. My command bridge to staging, production and anything running behind a bastion.

NavicatDatabase

The one tool I open before running any migration. Fast introspection, scripting and a decent visual explain plan.

Interface · systems

Design

FigmaDesign

Source of truth for interfaces and design systems. I work in Figma for anything that needs to be reviewed, handed off or re-used.

Claude Code MaxAI design

Not only for code. I use it to generate full editorial layouts, iterate on typography scales and verify the result in a real browser before shipping.

Codex ProDevelopment assistant

An assistant for developing, reviewing and refining code in my workflow.

Claude DesignDesign

A tool for exploring interface ideas and working on design proposals.

v0UI generation

When I need a concrete starting point for a marketing surface or a rarely-used internal tool, v0 produces something I can edit inside half an hour.

Docs · comms

Collaboration

Google ChatComms

Clean, searchable, and lives where the rest of our workspace is. Less noise than Slack when the team is small.

NotionDocs

Specs, runbooks, onboarding material and founding notes. A shared brain that lets us ramp new engineers in days, not weeks.

DiscordCommunity

Where the community side of Ticketero lives: organisers, partners, early users. Voice channels make ad-hoc debugging a joy.

SlackComms

Still the default for vendor and partner channels. Good for push, not so good for long-form thinking.

Let’s makeit happen.

Have a platform to build?

I take on a small number of engagements each year. Typically founding-engineer roles, fractional CTO, or system design for teams wrestling with payments and platform problems.