Skip to content
Pineland Technologies

Recent projects.

Building for the web since 2014; this is the current work. Not concepts or redesign mockups, but working sites and software with real customers and a deployment history.

Pick a service to see only that kind of work, or open any project for the problem it solved and what it took to build.

All projects

Mobile Service Sync: The CRM for crews whose shop is a truck01

SaaS Platform

Mobile Service Sync

The CRM for crews whose shop is a truck

Booking, dispatch, routing, texting and payment for mobile mechanics, detailers and oil change crews, with an office on the web and a field app on iPhone and Android. Shop software is built around bays and a front counter. This is built around the route: the customer books an open slot online, the day is laid out by technician on actual drive times, and the job is paid for in the driveway.

Next.js 14ReactTypeScriptPrismaNeon Postgres+7
mobileservicesync.comCase study
RWCBM: A private hall for Christian business owners, town by town02

Web App

RWCBM

A private hall for Christian business owners, town by town

A member lists his company, joins the borough nearest him or a guild for his trade, asks the brothers for a hand when he hits a wall, offers them a members-only deal, and logs the work they do together so both boroughs get the credit. Twenty dollars a month, on the web and in an app where the messages are end-to-end encrypted.

Next.js 14ReactTypeScriptClerkNeon Postgres+9
rwcbm.comCase study
RWCBM Mobile: The hall on the phone, with the messages sealed03

Mobile App

RWCBM Mobile

The hall on the phone, with the messages sealed

The members are contractors and business owners, rarely at a desk, so the hall goes in a pocket: the borough at home, the boroughs on a map, the forum, the directory, requests, deals and events. Every conversation a member has lives here and only here, end-to-end encrypted on the phone with Signal's own library, so the server passes along ciphertext it cannot read.

React NativeExpo SDK 54Expo RouterTypeScriptClerk+5
Shipped · iOS and Android · screens shown with demo dataCase study
LaneLab: Video stroke analysis platform for a swim coach04

Web App

LaneLab

Video stroke analysis platform for a swim coach

A swimmer sends footage and gets back a marked-up review: the one fix that matters, pinned to the second in the video where it happens, with drills and a training block written off the back of it. The coach writes those reviews in a console built around the seventy-two hour turnaround the service promises. Every screen is real and clickable, running on stand-in data while the client signs off on the product itself.

Next.js 16React 19TypeScriptTailwind CSS v4next/font+1
Client preview · password-protected · shown with mock dataCase study
Lucky Duck & Swan Provisions: Uni, bluefin and A5 Wagyu, priced to the door and shipped overnight05

Web App

Lucky Duck & Swan Provisions

Uni, bluefin and A5 Wagyu, priced to the door and shipped overnight

Specialty seafood and Japanese A5 Wagyu out of Milford, Connecticut, sold two ways from one catalog. A customer at home picks the day it arrives, sees every overnight service priced for their own address and their own box, and pays by card. A restaurant signs in, sees its own price, and is invoiced once the weights are confirmed. The owner buys the label, prints the packing slip and sends the tracking from one order screen.

Next.js 16React 19TypeScriptTailwind CSS v4Neon Postgres+4
luckyduckandswan.comCase study
Heritage American Woodworks: Heirloom hardwood furniture, commissioned from anywhere in the country06

Marketing Site

Heritage American Woodworks

Heirloom hardwood furniture, commissioned from anywhere in the country

One maker in Bonita Springs, Florida, building solid hardwood dining tables, desks and libraries to commission for homes across the country. The site is a brass plaque on walnut: Caslon, a stepped diamond taken from the shop's own mark, and shop drawings that sketch themselves onto the page. Every page ends in the same two ways in, a call or a short commission form, and no page names a price, because every piece is quoted after the consultation.

Next.js 16React 19TypeScriptTailwind CSS v4Resend+1
heritageamericanwoodworks.comCase study
Ace Financial: Bookkeeping that speaks Formula 1, not Bank07

Marketing Site

Ace Financial

Bookkeeping that speaks Formula 1, not Bank

A bookkeeper and fractional CFO who wanted his practice to feel like a pit wall rather than a bank lobby. Black and gold from his playing-card business card, an ace of spades, and three levels of service a business owner can read in one pass. It replaced a Squarespace site on a new national domain, and the old one forwards every path.

Next.js 16React 19TypeScriptTailwind CSS v4Resend+1
acefinancialllc.comCase study
K&J Shine Works: Detailing in Cedar Rapids, booked online instead of by phone tag08

Marketing Site

K&J Shine Works

Detailing in Cedar Rapids, booked online instead of by phone tag

An auto detailer in Cedar Rapids, working from the shop on Vernon Valley Drive or in the customer's driveway across four more towns. The site is black paint and chrome over eighteen pages, and every one of them leads to the same button: Book Online, into a scheduler that prices the vehicle from its plate and reports each booking to the ad account with its value. Every photograph is the shop's own, down to the before and after pairs a visitor drags a line across.

HTMLCSSJavaScriptNode build scriptMobile Service Sync+2
kjshineworks.comCase study
Low-Key Locksmith: 17 city pages that are worth reading09

Marketing Site

Low-Key Locksmith

17 city pages that are worth reading

A mobile locksmith based in Ogden, working Weber County and nothing beyond it. Somebody locked out in Eden finds a page written about Eden, with its own ZIP codes, landmarks, and the roads the van runs, rather than a template with the name swapped. Thirty-one pages, and changing the phone number changes it on all of them at once.

Next.js 16React 19TypeScriptTailwind CSS v4Vercel
lowkeyut.comCase study
NXR Advertiser Studio: Selling podcast ads without the email thread10

SaaS Platform

NXR Advertiser Studio

Selling podcast ads without the email thread

Advertisers see what is genuinely available, buy a package or build a campaign slot by slot, and upload their own creative. The network works one queue instead of an inbox: what sold, what needs review, and what runs where. Nobody has to remember which email had the current availability.

Next.js 16React 19TypeScriptTailwind CSS v4Prisma+3
nxr-advertiser-studio.vercel.appCase study
Deafinitely Dogs: A rebuild that kept every post since 201811

Nonprofit

Deafinitely Dogs

A rebuild that kept every post since 2018

A service dog nonprofit with years of program pages, donor content, and blog posts stranded on aging shared hosting. All of it came across, back to 2018, onto a build that loads fast and that staff can edit themselves: changing a program description no longer means finding a developer.

Next.js 16React 19TypeScriptResendJSON content model+1
deafinitelydogs.orgCase study
Oil To Go: A mobile oil change that sells the driveway, not the coupon12

Marketing Site

Oil To Go

A mobile oil change that sells the driveway, not the coupon

Mobile oil change in Cedar Rapids, Marion, Hiawatha and Robins. It started as a few hand-written pages and a server-side ad tracker, and it is now a full site: a photo-led home page with the van driving along the foot of the hero, one flat price stated everywhere from one file, a page per town, a guide every month, and a back office where the owner reads traffic and publishes the writing.

Next.js 16React 19TypeScriptPayload CMSNeon Postgres+3
oil-to-go.comCase study
Coat of Arm Wars: A media kit that cannot go stale13

Marketing Site

Coat of Arm Wars

A media kit that cannot go stale

An armwrestling channel with 21.5K subscribers and 2.96M lifetime views, and a site whose job is to turn that into sponsorship. Every figure on the media kit is one a stranger can check against a public YouTube page, and none of them is typed in by hand: the site reads them off the channel on the way out the door.

Next.js 16React 19TypeScriptTailwind CSS v4Resend+2
armwrestling.proCase study
Mobile Service Sync Field App: The technician app, iOS and Android14

Mobile App

Mobile Service Sync Field App

The technician app, iOS and Android

The job in the technician's hand: today's route, the customer and their vehicle, before and after photos, and the card payment taken at the door before the van pulls away. A day it has already loaded still opens in a dead zone, and it is the same account and the same data as the web app.

React NativeExpo SDK 54Expo RouterTypeScriptClerk+3
Shipped · iOS and AndroidCase study
Embeddable Booking Widget: A booking wizard that drops into a site you already have15

Custom Solution

Embeddable Booking Widget

A booking wizard that drops into a site you already have

Customers book on the site you already own rather than being sent to somebody else's domain. The widget reads the plate, works out what that exact vehicle needs, offers a slot that is genuinely open, and hands back a confirmation number. The price on the page is the price on the invoice.

Next.jsReactTypeScriptServer ActionsCarAPI+3
Live · embedded on operator sites · shown with demo dataCase study
Ad Spend and Attribution: Where the sign-ups came from, and what each one cost16

Custom Solution

Ad Spend and Attribution

Where the sign-ups came from, and what each one cost

The module that answers the only question anyone actually asks about advertising: did it work. Google and Meta spend joined to the sign-ups those clicks produced, with cost per acquisition and return on spend coming out of the same table rather than out of two dashboards that disagree.

Next.jsTypeScriptPrismaPostgresGoogle Ads API+3
Live · private console · shown with demo dataCase study
The Newsroom Block: Everything a blog needs, already built17

Custom Solution

The Newsroom Block

Everything a blog needs, already built

A complete publishing system that becomes part of your site: write and schedule posts, hold comments for review before anyone sees them, let readers search years of archive, and find out what people actually read. It already runs on three sites, so you get something proven on day one instead of paying to invent it, and every improvement made for anyone lands on yours too.

Payload 3Next.js 16TypeScriptPostgresLexical+1
Live · running on three sites · shown with demo contentCase study

Want one of these for your business?

Tell us what it needs to do. You will get a straight answer on what it takes to build, what it costs to run, and which half of the idea to drop.

Or skip the form entirely. hello@pinelandtech.com reaches a person, not a queue.

Score My Sitefree