Punta Gorda, FL · Remote-friendly

Hi, I'm Bec. I design systems and ship the software that runs them.

I take things from concept to production across digital and physical media: I design it, architect it, build it, break it, fix it, and ship it (most designers stop at the mockup, which is exactly the part nobody can actually use). When the part doesn't exist, in software or in the physical world, I make that too.

Services

Hire me for the whole thing, design through code

Web design and website development, custom software, and iOS apps, plus the brand work that ties it together. One person, concept to production, so you talk to the human doing the build instead of an account manager. Based in Punta Gorda, working with Southwest Florida businesses and remote clients anywhere, with a soft spot for fishing charters and marine businesses.

  • Web designFast, content-first sites built to get found and actually bring in customers.
  • Website developmentFull-stack Next.js, from a marketing site to a logged-in web app.
  • Custom softwareInternal tools and workflow apps built to survive a real business, not a demo.
  • iOS appsNative Swift and SwiftUI, concept to App Store.
  • Brand & logo designIdentity, logos, signage, and print, the foundation everything else sits on.
How I Work

How I actually build

Nobody paints a house before the framing's up, but mockup-first software does exactly that: everyone falls in love with the picture, then finds out the plumbing can't do what the picture promised. There's no mockup phase here (I never learned Figma, and it turns out I never needed to). I figure out the structure and what the thing has to do, architect the system (the data model, the state, the genuinely hard subsystems), start building, and make it look the way I want once it actually works: design happens on the real thing, not on a picture of it. I drive modern AI tooling to move through implementation at a pace a solo builder couldn't otherwise touch, and then I'm the one who tests it, integrates it, and ships it to real users. That last part matters, because an AI can describe how an app is supposed to work, but it can't tell you what your screenshots actually show. That's the part you can't outsource, and it's the part I'm good at.

The result: shipped products, not prototypes. A one-person operation that moves like a team.

Featured Case Studies

Waypoints: the client quote and acceptance portal I built into this site, from the Postgres policies to the print stylesheet.

Read the case study

Archer Airboat Tours: a coastal charter website rebuilt on Astro and Keystatic, with an interactive map and a booking system built for a captain who loses phones to the water.

Read the case study
Apps & Software

I ship software, not just mockups

Full-stack iOS and web apps, from data model to App Store. Most designers stop at the comp; these are shipped products people use every day.

TideStitch
TideStitchFlagship

Quilting’s scariest moment is committing to a design you can only half-see in your head. Graph paper, colored pencils, and seam-allowance math stand between the idea and the first cut, and one wrong number wastes real fabric.

So I built the audition room. Live on the App Store: lay out a quilt block by block and see the whole thing before cutting a single piece. Photograph fabric from your stash and audition it tiled at true physical scale (a 6″ print reads like 6″), mix traditional blocks, run Jelly Roll mode for strip patterns, and walk away with an accurate cut list, finished sizes, cut sizes, and seam allowances handled. Private iCloud sync, no ads, no accounts.

Key calls: The canvas runs on a recursive block-tree model: a block can contain blocks that contain blocks, which is why traditional blocks, strip patterns, and mixed layouts compose instead of colliding. Fabric auditions render at true physical scale (a 6″ repeat reads like 6″, or the audition lies to you). And the cut list comes from the same model that draws the canvas, so the preview and the cutting table can never disagree.

SwiftUICloudKitiPadOSApp Store
Waypoints
WaypointsFlagship

Freelance quotes usually mean a PDF attached to an email, then silence. Clients wonder where their build stands, and every proposal tool on the market wants a monthly fee to rent you one slice of the answer on somebody else’s domain.

So I built the whole workflow into this site: a login-gated client portal where a quote is a living page. Magic-link sign-in, revision requests that land in my inbox, click-wrap acceptance that emails both sides a generated agreement PDF, and then a live build tracker in the house vocabulary: on the hard, sea trials, launched. Stripe runs the money: deposit on accept, balance before launch, care plans as subscriptions.

Key calls: Postgres row-level security is the boundary, not the API: clients can only ever read their own quote because the database enforces it, so an endpoint bug can’t leak what the database won’t serve. Every client write goes through a SECURITY DEFINER function that re-verifies identity and quote state. And acceptance freezes the full quote (items, prices, terms) into an immutable snapshot, so “what did I agree to” has exactly one answer, forever.

Next.jsTypeScriptSupabasePostgres RLSRealtimeResendpdf-libStripe
Archer Airboat Tours
Archer Airboat ToursFlagship

A real charter with a decade of five-star reviews and a website that had quit on it: a blank builder template, no booking, and its strongest domain quietly forwarding all that authority into an empty page.

A full website rebuild for a coastal airboat charter in Matlacha, built on Astro and Keystatic so the owners can edit it themselves. An interactive departure map (Map and Satellite tiles, no API key), a mobile-first design, and a booking system built around one real constraint: the captain loses phones to the water. The whole site owns the “coastal, not Everglades” lane no competitor was claiming.

Key calls: The booking system treats the database as the boat and the phone as a window: every reservation lives in Supabase, the device stores nothing, and a phone that goes overboard loses zero data. Sign-in is a text-message code (no passwords, no email account required), and the whole online-booking flow waits behind an owner-controlled switch so the paper calendar keeps working until they are ready.

AstroKeystatic CMSCloudflareSupabaseTwilio SMSLeafletPWA
ShopTracker (SR80)
ShopTracker (SR80)FlagshipPrivate

The shop ran on Apple Notes and shouting across the floor. Jobs got lost between the counter and the bay, and nobody could answer “where’s my cylinder?” without walking the building.

Full-stack iOS workflow app with six-stage job tracking, device-based roles (Front Counter, Tech, Admin iPads), and a Supabase backend tuned for offline resiliency and flaky Starlink. It even generates its own QR codes, and the print layouts to sheet them, for asset tracking across the floor.

Key calls: Device-based roles instead of user logins (the shop floor shares iPads and nobody’s typing a password with greasy hands, so identity lives on the device, not the person). Offline-first data layer because the shop runs on flaky Starlink, so the app stays functional even when the connection wants to take the day off. And it generates its own QR codes and the print-sheet layouts to produce them, so asset tracking didn’t need a second tool. Built to survive a real shop, not a demo.

SwiftUISwiftDataSupabaseiPadOSOffline-firstQR codes
VesselLog
VesselLogWIP

Boat owners who do their own work track maintenance in their heads, until something expensive breaks because nobody wrote it down.

My heart project, in active development: a maintenance app at its core. Service schedules, engine hours, fuel burn, and trip logging for people on the water who do their own work, from flats boats to sportfishers. Pure Apple-native: CloudKit sync, voice notes transcribed and parsed by AI into structured log entries, Siri Shortcuts, and live NOAA tide data. No third-party dependencies.

Key calls: Zero third-party dependencies, on purpose: CloudKit for sync, Apple Speech for capture, AppIntents for Siri, so the stack ages with the platform instead of with somebody’s abandoned SDK. And voice notes run a transcribe-then-parse pipeline (Apple Speech in, Claude out) that turns “changed the impeller at 812 hours” into a structured maintenance record, because nobody’s typing on a boat with wet hands.

SwiftUISwiftDataCloudKitCoreLocationSpeechAppIntentsClaude APINOAA tides
TideBite
TideBiteWIP

Every time we talked about going fishing, the same interrogation started. “When is high tide?” “Wind speed?” “Is it rough out?” And then the real one, “How do the fish feel about all of it?” No single app answered the actual question: should we go fishing?

So I built one. Scores every hour 0 to 100 for fishing quality by weighing eight environmental factors against per-species temperature profiles for six Gulf species. Tide data from WorldTides, weather and marine conditions from Open-Meteo. Because when I’m not doing this, chances are, I’m fishing.

Key calls: The forecast is an eight-factor weighted scoring model with water temperature as a hard gate: if the temp is wrong for the species, no amount of perfect tide and wind can rescue the score, because that’s how fish actually work. And the whole engine is extracted into FishingForecastKit, a reusable Swift package, so the next water app gets the forecasting brain for free instead of a copy-paste.

SwiftUISwift ChartsMapKitSwiftDataWorldTidesOpen-Meteo
YEET / YEET Flips
YEET / YEET Flips

Flipping stuff is fun until you realize you have no idea if you’re actually making money. Notebooks fall apart after a couple weeks of being handled with greasy hands, and nobody’s doing mental math in a Goodwill parking lot.

Resale profit-tracking app, published on the App Store. Log buys, track sales, and watch margins across your full inventory. Built it, shipped it, and it’s live.

Key calls: Fully local SwiftData with no accounts and no backend, because the whole point is logging a buy in a thrift-store aisle in five seconds, and a login screen kills that. Margins are computed live from the raw buy/sell records instead of stored, so the numbers can’t drift from the transactions that made them.

SwiftUISwiftDataApp Store
AMRInvoice
AMRInvoicePrivate

A one-man diesel shop doesn’t need QuickBooks. He needs to dictate a line item from under a truck and send the invoice before he forgets.

Invoicing app for a diesel-mechanics business, estimates, invoices, and job records in one place. Voice-dictate line items (Apple Speech + Claude parsing), take payments through Square, and generate polished invoice and estimate PDFs with PDFKit. Fully iOS-native, local SwiftData store, no backend.

Key calls: Fully local SwiftData with no backend, because a one-man shop’s books shouldn’t depend on somebody’s server staying up. Dictation is a pipeline, not a feature: Apple Speech captures it, Claude parses it, and “two hydraulic hoses at eighty-five” lands as a structured line item instead of a note to retype. PDFs render on-device with PDFKit, so estimate to invoice never leaves the phone.

SwiftUISwiftDataClaude APIApple SpeechSquarePDFKit
Web Development

From WordPress to full-stack Next.js

Marketing sites, SaaS platforms, and internal tools, including the site you're reading right now.

Archer Airboat Tours
Archer Airboat Tours ↗
Waypoints, client quote portal (case study)
Waypoints, client quote portal (case study) ↗
slack-tide.dev, Next.js dashboard (this site)
slack-tide.dev, Next.js dashboard (this site)
Lee's Trees, WordPress
Lee's Trees, WordPress
Southern Bee Co, WordPress
Southern Bee Co, WordPress
Hydraulics SR-80, WordPress
Hydraulics SR-80, WordPress
CAD, Fabrication & Hardware

The digital-to-physical pipeline

I design it. I build it. I ship it.

Autodesk Fusion to 3D print to working hardware. When the part, or the tool, doesn't exist, I make it.

Autodesk Fusion render

Autodesk Fusion CAD

Custom tooling, shop-organization solutions, and replacement parts modeled from scratch.

Shown: metric O-ring storage solution, from Autodesk Fusion parametric model to printed products in use.

Hydraulics SR-80 storefront signage

Storefront Signage

The shop needed a sign and didn’t have one. Designed the Hydraulics SR-80 storefront lettering in Autodesk Fusion, rendered scaled size mockups for sign-off, had the letters cut, and the crew mounted them on arrival. Concept to installed sign.

3D-printed part photo

3D Printing

When I need a part by tomorrow, I’m not ordering it. I run a Bambu Labs P1S with an AMS printing functional parts, custom tooling, and prototypes. If I can model it, I can hold it by end of day.

Mariner's Compass render

Mariner's Compass Block

Quilt block designed in Autodesk Fusion / Illustrator, digital design, physical craft.

Raspberry Pi monitor build

Raspberry Pi Power Monitor

No off-the-shelf monitor did what I needed, so I’m building one. In-progress hardware build, a Raspberry Pi watching battery banks and bus voltages in real time. The board, the wiring, and the code to read it.

Custom part, CAD to printed

Custom Fabricated Solutions

When a part is broken, missing, or no longer made, someone has to reverse-engineer it. Measured, modeled, and printed to spec.

Shown: a Viking sewing-machine cam, original (left) and my printed reproduction (right), made for a local repair tech since the part is discontinued.

Photography

From reef life to real life

Gulf wildlife and reef life, shot on the water, below it (Blu3 hookah and GoPro for the dives), and above it (drone aerials of boats, water, and coastline), plus the dogs, the people, and the occasional milestone worth a real portrait. I have a real weakness for a good “glamour shot” of a boat. The same compositional eye, pointed at whatever's in front of it.

Knot Today at sunset over the Boca Grande Sandbar
Knot Today at sunset over the Boca Grande Sandbar
Golden hour aerial, Knot Today
Golden hour aerial, Knot Today
Knot Today trailed by Knot Again
Knot Today trailed by Knot Again
Lines out at last light
Lines out at last light
Flats boat Knot Again at first light
Flats boat Knot Again at first light
LorGrad: Evening on the hook
LorGrad: Evening on the hook
Mangrove snapper
Mangrove snapper
A fever of cownose rays
A fever of cownose rays
Blacktip shark, Looe Key
Blacktip shark, Looe Key
Nurse shark, Marathon
Nurse shark, Marathon
Jellyfish, Mote Marine Lab
Jellyfish, Mote Marine Lab
Sheepshead
Sheepshead
Sunset from the flybridge, Knot Today
Sunset from the flybridge, Knot Today
Blue heelers at play, Punta Gorda
Blue heelers at play, Punta Gorda
Family announcement, Punta Gorda
Family announcement, Punta Gorda
Client Reviews

Word from the dock

★★★★★
Bec is simply amazing! Her work is outstanding and creativity is beyond anything we could have come up with. She is super easy to get a hold of with questions and so, so prompt with answers. She IS the go to person!
Elise W. · Archer Airboat Tours
★★★★★
Professional, friendly, and always quick to respond. She made the entire process easy, kept me informed every step of the way, and delivered excellent service. Her attention to detail and dedication to customer satisfaction truly stood out.
Lori S. · drone photography client
★★★★★
Bec’s the real deal. Web design, branding, even a video she cut together from my phone clips: all of it fast, high quality, and zero hassle. Text her and she’ll get right on it. Can’t recommend her enough for any web or design work.
Austin M. · Lee’s Trees
★★★★★
The talent that Bec has is unmatched. Give her a vague concept of an idea and she will run with it: the page she designed for us was the exact tone and message we didn’t even know we wanted to convey. The design is flawless and easy to navigate, and she is so accommodating and easy to work with. There aren’t enough stars to rate her limitless talent and skill!
Amy C. · Foothills

From public Google reviews, lightly trimmed.