Founder & Engineer · Toronto / Miami

Ethan Daley

What I'm Building

I'm Ethan Daley, an engineer across web, iOS, APIs, security and AI, and founder of TNAADO Inc. (Toronto) and TNAADO Labs (Miami). This is my engineering home: what I run, the stack I reach for, and live GitHub activity.

GitHub Activity

Contributions, last year (live)

Loading live contributions…

The Story

I'm Ethan Daley, founder of TNAADO. I build what the market actually wants — and I win by making things sharper and more efficient than what's already out there.

I run a firm across Toronto and Miami. We enter a market where a better, more efficient product can earn its place, build it premium, and let deep expertise and real market feedback push it further. That's how you become a name a market trusts instead of just another launch.

I came up building for live use, hands on every layer. Now I lead teams with specific focuses and real expertise, and my edge is putting the right people on the right problems. The talent I've brought together is what I'm proudest of — it's what turns a firm into real market capability.

How I Build

Build what the market wants. I don't build to be clever. I build where there's a real gap and a real efficiency to win, then earn my place as a dependable player.

Strategic entry, premium execution. I pick the spots where a sharper approach beats the incumbent and build it premium from day one. Prototypes go straight into live use to pull real feedback fast.

Expertise first, market second. Deep domain knowledge sets the direction; what real users tell me refines it. Together, that's what makes the work reliable.

I lead teams, not just code. I learned every layer hands on, so I know exactly what I'm asking for — but my leverage now is direction, taste, and the right people on the right problems.

A stack I trust. Next.js + TypeScript, Supabase, Vercel. Boring on purpose, so the focus stays on the product and the market, not the tooling.

Reliable innovator. The goal isn't a viral moment; it's becoming the premium, efficient option a market can count on.

Systems I've Built

Tector

44 edge functions

Protection-services platform: 82 migrations, 205 tables and views, 270 SQL functions, Stripe Connect settlements, two SwiftUI apps.

Citadel

Local-first AI

Electron desktop AI for regulated professionals: bundled Ollama engine, ECDSA-signed audit chain, Whisper, RAG, MCP servers.

Model training

QLoRA + RAFT

Mistral-7B fine-tuning on RunPod GPUs, merged and converted to GGUF for on-device inference.

Billing and admin

162 migrations

Books, payroll and HST ledger with role-gated staff, Stripe dunning, an idempotent feed API and 29 API routes.

Wildin

47 edge functions

Marketplace on Expo and native SwiftUI: Stripe Connect payouts, Onfido ID checks, Twilio, 335 RLS policy statements.

The Dispatch

14 live feeds

Newsroom with a live map fed by 14 ingestion adapters (511, transit, weather, 311, fire, police calls), plus reader and capture iOS apps.

The Shoot

23 edge functions

Crew booking app with payouts, invoices, Google Calendar sync and 59 migrations.

Native iOS

10 Swift apps

630+ Swift files across SwiftUI apps with StoreKit, MapKit, Vision, MusicKit, CryptoKit and APNs.

Portal Connect

106 migrations

Vite and Supabase portal with 224 tables and views, 90 triggers, 8 edge functions and RLS throughout.

Free tools site

220+ pages

Static tools site with data lookups (NPI, ICD-10, NDC, HCPCS), IndexNow and bounded manual ad slots.

Claude Code layer

22 CLIs

Custom vault, ledger, Search Console and graph tooling, 19 guard hooks, 11 agents, 49 skills.

Data layer

700+ migrations

14 Postgres backends: 1,000+ SQL functions, 400+ triggers and 1,700+ RLS policy statements.

Stack

Languages

TypeScriptJavaScriptSwiftPythonSQL (PL/pgSQL)BashHTML/CSSRuby (scripts)

Web

Next.jsReactViteTailwind CSSReact RouterTanStack QueryZodRechartsLeafletd3-geothree.jsGSAPFramer MotionTurborepoVitestShared UI/auth packages

Mobile and Apple platforms

SwiftUIUIKitObservationXCTestsupabase-swiftStoreKitMapKitCoreLocationAVFoundationVisionCoreMotionCryptoKitKeychainLocalAuthenticationSign in with AppleUserNotifications/APNsPDFKitPhotosUIWebKitReact Native (Expo)fastlaneApp Store Connect

APIs and backend

Supabase Edge Functions (Deno)Next.js route handlersRESTStripe webhooksStripe ConnectIdempotent feed APIsRole-based access (RBAC)OAuth / Google Sign-InCron jobs (pg_cron)MCP serversNode.jsElectron

Data

PostgreSQLRow Level SecurityMigrationsSQL functionsTriggersSECURITY DEFINER hardeningViews and read modelspgvector (Citadel RAG)Least-privilege DB rolesMulti-database design

Security

RLS policy auditsPrivilege-escalation lockdownKeychain-backed secret vaultECDSA-signed audit logsTOTP / MFAContent Security PolicyRate limitingCloudflare TurnstileElectron fuses and hardened runtimeSecurity-audit agents

AI and ML

QLoRA fine-tuningRAFT trainingPyTorch, PEFT, bitsandbytesGGUF and OllamaRunPod GPUsLocal-first inferenceWhisperPiper TTSRAG and vector searchAnthropic ClaudeOpenAIGoogle Gemini and ImagenDeepSeek

DevOps and infra

VercelCloudflare (DNS, WAF)GitHub ActionsSupabase CLIDockerSentryIndexNowSearch Console API

Tooling

Custom CLIs (vault, ledger, gsc)Code-graph MCP (tree-sitter)Claude Code agents and hooksSkills and profilesBranch automationPython data pipelines

Commerce

StripeStripe TaxStripe Connect payoutsSubscriptions and dunningStoreKitPrintfulShopify

Media

ffmpegWhisper transcriptionVisionMusicKitAVFoundationthree.js scenessharp

Comms

ResendGmail APIGoogle WorkspaceTwilioAPNs pushOnfido ID checks