Taking Claude's Browser Use Tool to Production
Claude's browser use tool (browser_toolset_20260801) went GA on August 19, 2026. I cover its difference from computer use, the accessibility-tree approach, and production security rules.
My thoughts and experience on iOS development, Swift, SwiftUI, and mobile architecture
136 articles
Claude's browser use tool (browser_toolset_20260801) went GA on August 19, 2026. I cover its difference from computer use, the accessibility-tree approach, and production security rules.
A scenario-based comparison of AI code review tools — Cursor Bugbot, CodeRabbit, GitHub Copilot Code Review, and Greptile — by price, integration depth, and false-positive noise.
A comparative guide to help you choose a spec-driven development tool in 60 seconds by weighing GitHub Spec Kit against AWS Kiro on license, EARS notation, setup, and pricing.
Bun 1.4's headline change is the Rust migration: Node.js compatibility numbers, Bun.WebView, Bun.cron() and real sources — when should you pick Bun, and when Node?
React Native 0.87 upgrade guide: the Strict TypeScript API is now default, breaking deep imports. Step-by-step migration with Node 22.13+, AGP 9, Kotlin 2.0+, and Metro 0.87.
Xcode 27 exports Apple's official Agent Skills to a folder Claude Code, Codex, and Cursor can all read — the export command, directory conventions, and where each skill actually works.
A decision guide to EU app distribution costs: under Apple's new terms, work out whether IAP, alternative payment, link-out, or web distribution fits you, using three real revenue profiles.
Separate the iOS 27 deployment target decision from the SDK upgrade: the April 2027 SDK requirement, adoption data, and a decision table by app type.
Google Play's 2027 permission policy overhauls contacts, sensitive location, and SMS/call log verification. The January 27 timeline, plus Contact Picker and location button migration, with code.
We answer the transactional email Resend SendGrid setup question for a mobile backend with the official docs: SPF/DKIM/DMARC, Node.js send code, webhooks, and Apple MPP's effect on open rate.
Set up the PostHog and Amplitude iOS SDKs with current official syntax, design an event taxonomy, and ship compliant with ATT/GDPR.
This step-by-step webpack-to-Vite migration guide covers config inventory, env variables, alias settings and the most common breakages, based on the official Vite and webpack documentation.
We compare git flow vs trunk based development for mobile teams: store review, release trains, hotfixes, feature flag prerequisites, a sourced decision framework, and a 4-week transition plan.
MCP's 2026-07-28 spec hardened authorization: RFC 9207 issuer validation, unregistered client identity via CIMD, and DCR's move into deprecation — a step-by-step guide to updating your own server.
How Claude's text watermark for AI content detection works, who can access it, and what EU AI Act Article 50(2) changes for developers — a sourced technical analysis.
Swift 6.3 added no new actor isolation rule — yet some patterns that compiled silently on 6.2 now warn. Here's the documented case and the real escape hatches.
Apple is moving new Sign in with Apple relay addresses from privaterelay.appleid.com to private.icloud.com later this year. Here's what breaks silently and how to fix it.
If you missed the August 31, 2026 target API 36 deadline, your app won't be removed, but your new-user visibility is at risk. The extension process, breaking behaviors, and a staged migration plan.
Prisma 7 migration guide: the Rust engine is removed, prisma.config.ts arrives, driver adapters become mandatory. Covers custom output path pitfalls and the Prisma 8 RC status.
Next.js 16.3 removed runtime='edge' support in routes and pages; proxy.ts never supported it in the first place. This guide separates the two and shows the migration steps to Node.js.
What is a Dart primary constructor and how do you use it? var/final declaring parameter rules, the in-body constructor restriction, const classes, and Flutter widget gains — a Dart 3.13 guide.
A step-by-step guide to moving a vibe-coding prototype into production: a handover map, hallucinated-API detection, a test suite, observability, the data layer, and a security gate.
Google's Android developer verification starts September 30, 2026 in four countries. The full timeline, the two-console split, the free student/hobby option, and what it means for Turkey.
The iOS 27 SDK makes the UIScene lifecycle mandatory in Flutter. Learn what the CLI migrates automatically, the manual AppDelegate/Info.plist steps, and how to regression-test the result.
The Claude Code subagent model resolution chain now goes call parameter > frontmatter > env > main model. Learn the inherit trap and how to match the right model to each task.
Android 17 API 37 behavior changes: MemoryLimiter memory limit, background audio rejection, config-restart removal, cross-profile loopback block, 3-hour SMS OTP delay, and the new NPU permission.
45% of AI-generated code samples failed security tests. Here are 12 concrete, auditable checks — grounded in real CVEs and production incidents — to run before you ship code an agent wrote for you.
In Claude Fable 5.1, cache-read cost dropped 75%, but tool_choice any/tool now returns a 400 error and thinking-block prefixes can break. Here's the migration checklist.
With the DMA reform Apple announced on August 18, 2026, EU developers move to new terms (CTC, rates, exemptions) starting October 1, 2026.
GPT-6 Astra launched September 3, 2026: $10/$50 pricing, 1.05M context, a 272K threshold multiplier, async tool calling, and mid-turn steering — how it differs from GPT-5.6, sourced.
On September 14, 2026, Claude Code's weekly limit changes: the permanent baseline rises 25%, but once the temporary bonus ends, that's felt as a 17% cut from today's level.
Flutter 3.47 material_ui migration guide: the dart fix command, the pubspec bug, MaterialUiCompatibilityBridge, and the November deprecation timeline, step by step.
What is MCP Tasks and when should you use it? Make long-running tool calls resilient to timeouts and crashes with taskId, ttlMs, pollIntervalMs, and the input_required flow.
Next.js 16.3 Instant Navigations: turning on the cacheComponents and partialPrefetching flags, using 'use cache' with Suspense, and a safe migration path from 16.2.
MCP deprecated Roots, Sampling, and Logging: SEP-2577's rolling 12-month window, the official migration path for each, and an inventory script for your transition plan.
We compare the move-web-app-to-mobile-with-Capacitor-8 decision using real cost, UIScene support, performance ceiling, and store acceptance risk, all sourced.
MCP 2026-07-28 removed the Mcp-Session-Id header and the initialize handshake, making the protocol stateless. Here's exactly what changed and how to migrate your server without breaking it.
A look at React 19.2's Activity, useEffectEvent, and cacheSignal APIs with real code examples — what problems they solve and how to migrate.
With Kotlin 2.4.0, Swift export moved to Alpha: naming and KotlinInt boxing are solved, generic erasure remains. A sourced look at today's Alpha constraints and migration risks.
Apple's App Store Connect age rating questionnaire added social media questions that became mandatory in September 2026. Scope, regional differences, and a step-by-step update guide.
A sourced look at the TypeScript 7 migration breaking changes, why the API isn't here yet, how to run TypeScript 6 alongside it, and which projects should upgrade today.
The hidden marking mechanism in Claude Code 2.1.196: invisible Unicode encoding triggered by ANTHROPIC_BASE_URL, timezone, and hostname matches — and Anthropic's response.
We took the Foundation Models framework introduced at WWDC25 into production with @Generable guided generation, the Tool protocol, and streaming — along with the 4096-token context limit, guardrail false positives, and the real privacy gains.
From glassEffect APIs to tabBarMinimizeBehavior, from the UIDesignRequiresCompatibility opt-out to GlassEffectContainer performance traps — the real decisions I faced migrating a production SwiftUI codebase to iOS 26's Liquid Glass language.
How default actor isolation, the @concurrent attribute, and nonisolated(nonsending) from SE-0461 and SE-0466 tore down the Swift 6 strict concurrency wall — and what to watch for in a production migration.
Kotlin 2.4.0 makes context parameters and explicit backing fields Stable, adds Java 26 support, brings Swift package dependencies to KMP. Differences from the experimental state, with code examples.
Apple opens alternative distribution and alternative payments on iOS 26.5+ in Brazil after its CADE agreement. Commission rates, notarization, and the July 6, 2026 deadline.
iOS 27 SwiftUI swipe actions and reordering: how swipeActionsContainer() enables swipe outside List, and reorderable() + reorderContainer(for:) bring reordering to LazyVGrid and watchOS.
SpaceX signed a binding agreement to buy Cursor's owner Anysphere for $60 billion. The verified timeline, and concrete ways developers can cut AI coding tool lock-in.
On Android 17, screenOrientation and resizeableActivity=false are now forcibly ignored on large screens (sw>600dp); I cover what changed and how to adapt with WindowSizeClass.
A technical decision guide between Kotlin Multiplatform and the Swift Android SDK for a shared mobile core: toolchain maturity, interop quality, and a clear pick for four team scenarios.
What changed in iOS 27 SwiftData with sectioned query, the .codable attribute, and ResultsObserver? A WWDC26 session 274 guide with code examples.
How the AI coding agent prompt injection risk actually works, what the MCP trust boundary is, and how to apply least privilege to your agent — a sourced, practical hardening guide.
A Flutter accessibility guide: Semantics, MergeSemantics, ExcludeSemantics, tap target/contrast rules, and real-device testing with VoiceOver and TalkBack.
A guide to iOS 27 App Intents LongRunningIntent SyncableEntity Siri integration, grounded in WWDC26 Session 345, covering the 30-second limit and cross-device Siri conversations.
Swift 6.3's official Android SDK closes the gap between the two ecosystems. A real learning roadmap built on Google's free Compose and KMP courses, which assume no prior iOS experience.
A sourced walk through iOS 27's SwiftUI Document API migration: FileDocument to ReadableDocument/WritableDocument, incremental Subprogress writes, DocumentCreationSource.
SwiftUI iOS 27 State macro ContentBuilder build time: @State is no longer a property wrapper but a macro, ViewBuilder became ContentBuilder. The breaking code, the fix, and the September GA update.
Why can't the same AI agent that wrote code also verify it? Building a reliable check with fresh-context verification, adversarial review, and an evidence hierarchy, with examples.
How to implement LLM streaming with SSE: TTFT, nginx buffering traps, partial Markdown rendering, and cancellation with AbortController — a sourced, end-to-end guide.
GPS tracker + activity classification, targeting 30+ days of battery life. Low-power location, on-device ML, scheduled fix patterns. 32-day test passed, 95% activity accuracy, 12K devices.
ESP32 device ↔ iOS app bidirectional sync, BLE handshake + Firestore + Realm offline cache. 50ms handshake, 3-day offline survival, OTA firmware update. BLE state machine fragmentation is the real story.
Real-time prediction notifications and a scalable data pipeline. Firestore + Cloud Messaging + Cloudflare Workers serving 500K MAU, p99 latency of 180ms, 99.94% uptime — and the real bottleneck was not where we expected it.
What most blog posts skip, learned after maintaining two parallel 60K LOC codebases for three years. Build time, runtime cost, team velocity, hire pool, and a decision matrix.
Production experience with SwiftData on iOS 17+. Migration pitfalls coming from Core Data, the practical realities of concurrency, real performance baseline numbers, and why we went back to Core Data on some projects.
From the strict concurrency mode opt-in flag to production-ready code — 12 pitfalls, fixes, and the actor migration order I hit while migrating a 60K LOC production iOS app.
Here's how to track the App Store minimum SDK requirement calendar, pin your Xcode version in CI/CD, and align it with Google Play's target-SDK schedule.
Hono.js ultra-fast web framework, multi-runtime support (Workers, Deno, Bun, Node), middleware system, RPC mode, and production deployment experience.
Edge deployment with Drizzle ORM and Turso (libSQL): embedded replicas, Next.js 16 integration, migration strategy, and experience scaling to 100K req/sec.
Supabase Edge Functions, Deno 2 runtime, Postgres RLS integration, Auth/Storage webhooks, cold start optimization, and a real-world deploy experience.
Prompt-to-design, AI-powered UI/UX, component generation, and design system integration with Google Stitch. A Figma/Sketch alternative with Flutter/Android code export.
A complete guide to StoreKit 2: the modern async/await purchase flow, JWS receipt validation, subscription offers, family sharing and server-side validation.
Why did Anthropic name its models "Claude"? The story of Claude Shannon, the father of information theory, Bell Labs legends, and Shannon's place in the history of AI.
How LLM agents work: ReAct, Plan-and-Execute, and Reflexion patterns, function calling specs, a LangGraph vs AutoGen vs CrewAI comparison, and a real production example.
What does the official Android SDK in Swift 6.3 actually give you, and what doesn't it? Developing with Swift on Android, from setup to the swift-java bridge, with its real limits.
Learn Flutter monorepo Melos usage from scratch: pub workspaces setup, bootstrap, defining scripts, automatic versioning with Conventional Commits, and migration costs.
A guide that explains the difference between skill, subagent, hook, and MCP in Claude Code with a decision tree: it shows which is the right tool when, with real configuration examples.
The three decisions behind RAG chunking reranking quality: document-aware chunking, BM25 + vector hybrid search, and two-stage reranking, plus how to measure it with recall@k and MRR.
Learn how to chain lint, test, build, sync, restart and health-check steps into a GitHub Actions workflow that deploys Next.js to your own VPS with a zero-downtime guarantee.
Type-safe SDK, schema-first approach, PostgreSQL backend, auto-generated queries, real-time sync, and an in-depth integration guide with the Firebase ecosystem.
Vector search with pgvector, BM25+vector hybrid search, Vector Buckets, postgres.new, and AI-native infrastructure. An in-depth look at Supabase as a Firebase alternative.
Figma AI brings automatic component generation, visual search, Make Designs, auto-populate, Dev Mode AI, and a bridge between design and development. The next generation of design tools after Figma Config 2025.
MCP architecture, server/client structure, tool use, resource sharing, and transport layer details. A technical deep dive into the Claude Code plugin ecosystem, with examples.
Take production quality to the top with crash reporting infrastructure, symbolication, analytics event design, and monitoring dashboard setup.
Automate code generation, linting, documentation, and custom build steps with the Swift Package Manager plugin system. Learn about Command and Build Tool plugin types in detail.
A fact-checked look at App Store rating and review management — the official StoreKit and Play Core quotas, the right moment to ask, and the technical limits on replying to reviews.
Flutter deep link setup: we walk through iOS Universal Links (AASA + entitlement), Android App Links (assetlinks.json + intent filter), and Flutter route mapping step by step with official sources.
What is prompt injection, and how do you defend against it? A four-layer defense grounded in OWASP LLM01/05/06/07/10: input labeling, least privilege, output validation, human approval.
Learn what web push, the Badging API, and Add to Home Screen actually allow on iOS Safari today — and what they still don't — straight from WebKit and Apple's own docs, with zero invented numbers.
Self-hosting Next.js: take the output:'standalone' build to production with a non-root systemd service, an nginx reverse proxy, and a build-lock zero-downtime deploy.
A practical, sourced guide to AI agent permission modes, allowlist/deny rule syntax, common leak patterns, and sandbox isolation — step by step.
What is context engineering, and how is it different from prompt engineering? A step-by-step look at managing instructions, tools, examples, and memory to build a context budget for AI coding agents.
WebGPU browser support for production is reviewed platform by platform as of December 4, 2025: full support on iOS Safari, desktop Safari only on macOS Tahoe, Firefox only on Windows.
How to write CLAUDE.md and AGENTS.md: a sourced guide to the context files coding agents load automatically at session start, their hierarchy priority, and what to write (and not write) into them.
Learn how to build an LLM eval golden dataset, when to use deterministic metrics like exact match, and how to apply LLM-as-judge rubrics in the right order before shipping to production.
What is spec-driven development, why does vibe coding break down at scale, and when should you combine both? Covers the spec → plan → task → code loop and the hybrid model.
Build mobile dependency chain security step by step: SBOM generation for SPM, CocoaPods and Gradle, inventory extraction, version pinning and a quarterly audit template, based on official docs.
Use Dart isolate compute to move heavy work like large JSON parsing and image processing off the UI thread; learn the compute()/Isolate.run() difference and how to measure jank in DevTools.
We break down .NET MAUI 10's XAML source generator and expanded SafeAreaEdges API straight from official Microsoft docs, plus a migration checklist for Xamarin.Forms teams.
How to verify App Attest and Play Integrity tokens on the server, protect against replay with challenge/nonce, and unify both platforms in one backend — based on the official docs.
See hands-on how react-native-boost cuts the native wrapper cost behind React Native render performance, its limits, and a before/after measurement protocol.
Where should an API key go in a mobile app? I cover secret management across build time, runtime, and server layers — from decompile risk to SHA pinning and OIDC in CI/CD.
How to get output from an LLM that conforms to a JSON Schema every time: end-to-end type safety with OpenAI Structured Outputs, Anthropic tool use, and Zod/Pydantic.
How do you set up a Rust shared core for mobile development? An end-to-end guide to generating Kotlin/Swift bindings from one Rust source with UniFFI, cargo-ndk, and XCFramework.
DevOps strategies for iOS and mobile projects. CI/CD pipeline, automated testing, code signing, beta distribution, and release management.
Predictive code completion, the Swift Testing framework, build improvements, and new Instruments and debugging tools that came with Xcode 16.
Applying Clean Architecture in Flutter projects. Domain, Data, and Presentation layers, Dependency Injection, the Repository pattern, and testing strategies.
A guide to backward-compatible API versioning covering URL, header and media-type approaches, additive-only design and the deprecation calendar, with concrete examples.
The European Accessibility Act's mobile app obligation starts 28 June 2025. Find its scope, exemptions, and iOS/Android technical compliance in this guide.
A concrete framework for mobile technical debt: measure build time, crash-free rate and test coverage, prioritize with a risk×frequency÷cost matrix, and set a quota in the release plan.
Five bug classes the simulator can't catch, deriving a device matrix from your own user data, and the time budget for real-device runs in CI — build your mobile test strategy.
Build a real offline-first architecture in Flutter: a type-safe local database with drift, a schema migration strategy, an outbox write queue, and conflict resolution.
What is vibe coding, who coined the term, and where's the line between prototype and production code? A clear guide grounded in Karpathy's own definition.
I cover how to correctly calculate D1, D7, and D30 retention using cohort logic, Apple's and Google Play's differing definitions, and how to tie them to a product decision.
A mobile accessibility WCAG guide for iOS and Android: an evidence-based guide mapping WCAG 2.2 criteria to VoiceOver and TalkBack semantics, touch target size, contrast, and automated+manual testing.
A guide to building a production-grade defense line for mobile backend API security — layered rate limiting, short-lived access tokens, refresh token rotation, and reuse detection.
How to set up a Flutter CI/CD pipeline with GitHub Actions and Fastlane: analyze-test-build-deploy stages, match certificates, and TestFlight/Play Internal Testing uploads.
Google Play policy compliance: filling out the Data Safety form correctly, sensitive permission declarations, mandatory account/data deletion, and subscription transparency.
A database indexing guide for query performance: how to read EXPLAIN ANALYZE, why column order in a composite index matters, and how to hunt slow queries with pg_stat_statements.
From designing SKAdNetwork conversion values to Play Install Referrer, from MMP selection criteria to reading aggregated data correctly: a guide to mobile attribution and SKAdNetwork measurement.
What is a token, how does the context window fill up, and how is LLM API cost calculated? From input/output pricing to cache discounts — a model-agnostic fundamentals guide.
A guide to App Store rejection reasons by guideline number (4.1, 4.3, 3.1.2, 5.1.1): how to avoid metadata, subscription, and privacy rejections.
A doc-grounded guide to measuring and optimizing mobile battery consumption on iOS and Android — Organizer, MetricKit, network batching, location accuracy, and catching regressions in CI.
A guide to raising your push notification opt-in rate with a priming screen, correct timing, provisional authorization, and measurement, based on Apple and Android's official guidance.
Mobile A/B testing hits four constraints the web doesn't: rollout delay, version fragmentation, sample-size math, and store rules. Here's the setup, step by step, with the real pitfalls.
A practical, documentation-based guide to Flutter app size reduction, covering --analyze-size, --split-debug-info, --obfuscate, split APK, and app bundle strategies step by step.
The answer to what RAG is and how it works: learn embedding, chunking, and vector search with real code examples, building a minimal system from scratch.
What is the App Store EU trader status requirement, who does it cover, and how do you fill it out in App Store Connect? A step-by-step guide against the February 17, 2025 removal risk.
A backend learning roadmap for mobile developers: HTTP fundamentals, CRUD APIs, databases, authentication, deploy, and the BaaS decision, explained step by step.
We break down the 6 real questions asked in mobile system design interviews (news feed, sync, chat, file upload), their differences from backend, and back it with official Android/Apple sources.
A practical guide to building scalable iOS apps with SOLID principles and Clean Architecture.
Data synchronization with CloudKit. Public/private database, subscriptions, conflict resolution, and offline support.
Automated build, test, and deployment with GitHub Actions, Fastlane, and Xcode Cloud. Complete iOS DevOps guide.
Building RESTful APIs with the Vapor framework. Fluent ORM, JWT auth, middleware, WebSocket, Docker deployment, and sharing models between iOS and backend.
GraphQL vs REST, Apollo iOS client setup, code generation, caching strategies, pagination, optimistic UI, and subscriptions.
Swift on Linux, SwiftNIO fundamentals, a Vapor vs Hummingbird comparison, database integration, Docker deployment, and sharing models between client and server.