Custom web development
Websites that take bookings, price jobs and do the work
Some sites are a brochure and should stay one. Others have to carry a process, and when they do, the gap between a theme with six plugins and something built for the job shows up in the hours your team spends working around it.
Or call or text directly: (303) 815-0215
What this is for
Four versions of the same week
Nobody wakes up wanting custom development. They wake up re-typing an order into a second system. Most of these cost more to live with than they do to fix.
Two systems that will not talk to each other
Orders arrive in one place and have to be re-entered somewhere else. Every re-entry is a chance to get it wrong, and the person doing it is usually the person who can least afford the hour.
A process still living in a spreadsheet
Quotes, bookings, stock, jobs. It worked when there were five a week. At fifty a week the spreadsheet is the bottleneck, and everybody already knows it.
A site that cannot handle what you sell
Configurable products, trade pricing, minimum quantities, delivery rules that depend on the item. Off-the-shelf themes fall over at exactly the point your business gets interesting.
Something that works, slowly, and nobody will touch
It runs, but it is fragile, and the person who built it is gone. The question is not whether to rebuild but which parts genuinely need rebuilding and which are fine.
Where this meets the other work
Building something new, and connecting what you have
These are two different jobs and they often arrive together. This page is the first one: a booking flow, a quoting tool, a portal, an internal dashboard — something that does not exist yet and has to be built.
The second is making your website and the software you already pay for stop ignoring each other. That has its own page, its own much shorter timeline and its own much smaller price: website integrations, typically $2,500 to $8,000 rather than five figures.
If you are not sure which one you need, describe the problem rather than the solution and you will get a straight answer — including the fairly common one that the cheaper page is the right page.
How it gets built
Five positions you could argue with
The boring stack, on purpose
Next.js and React, because they are widely known rather than clever. If this relationship ends, you want a codebase that any competent developer can pick up on a Tuesday — not one that needs its author.
The smallest thing that solves it
Plenty of problems that look like they need custom software need one connection and an afternoon. You will be told when that is the case, and quoted for that instead — the small jobs are priced as small jobs, not shoehorned into an application budget.
Built to be handed over
Readable code, comments that explain why rather than what, and documentation for anything non-obvious. You own the repository and the hosting from day one. Nothing here is designed to make leaving expensive.
Your card data never touches my servers
Payments stay with Stripe or Shopify, who employ people to do nothing else. Credentials live in environment variables rather than the repository, API keys get the narrowest permissions that work, webhooks are signature-verified, and dependencies are kept current. None of that is remarkable — it is just the part that is quietly skipped often enough to be worth writing down.
Tested where it actually matters
Not test coverage as a number, but tests on the parts that would cost you money if they broke quietly — pricing logic, order handling, anything that touches a payment.
Evidence
Four things on this site that do something
The easiest proof to check is the kind you do not have to take anybody’s word for. These are free, need no sign-up, and do real work — reading sitemaps, probing URLs, comparing pages. They are mine rather than client projects, but they run, and you can try to break them yourself in about a minute.
Volusion URL inventory
Give it a store domain and it fingerprints the platform, reads the sitemap, then probes legacy URLs on two query-string families and reports where each one landed. Nine outbound requests per run, rate limited at the edge.
Duplicate content checker
Fetches two or three pages and scores how much they overlap — shared vocabulary, verbatim phrasing, and how much of the shorter page sits inside the longer one. It reports the passages, not just a number.
Citation checker
Checks a business name and address against the directories that feed local search, and reports where the listing is missing or disagrees with itself.
Branded QR generator
Generates a QR code pointing at a Google review link, styled rather than default, and hands back a file you can print.
Start to finish
From the problem to the handover
The scope is written down before the price is agreed, and the price does not move while the work does. If the scope changes, that is a conversation rather than a surprise on an invoice.
- A scoping conversation about the problem, before anything is quoted
- A written scope you can hold me to, with a fixed price against it
- The build, in Next.js and React unless something else genuinely suits you better
- Work that fits around the software you already run rather than replacing it
- Tests on the logic that would be expensive to get wrong
- Deployment, monitoring and a handover you can act on without me
Before you enquire
Most businesses asking for this do not need it
A large share of problems that look like custom software are one connection between two systems, a settings change, or a page that should never have been built the way it was. Saying so costs a project and buys the only thing worth having on a first call, which is being believed the next time.
If a website is what you need, that is the web design page, and it is a cheaper and faster piece of work.
Scoping questions
The things worth settling before any money moves
Web design is for a business that needs a website: pages that explain what you do and turn visitors into enquiries. This is for a business that already has one and needs it to do something — take a booking, price a job, sync with the software you run. If you are not sure which you need, say what you are trying to achieve and you will get a straight answer, including when the answer is the cheaper one.
Next.js and React for most things, because they are well documented and widely known, which matters more than novelty when somebody else has to maintain the work later. Shopify where the job is genuinely ecommerce. WordPress when a client's team already knows WordPress and retraining them would cost more than it saves. The stack should suit your situation, not the developer's preferences.
Application work runs from $15,000 to $100,000 and upward, which is the going rate for custom software and reflects what it actually takes: something with its own users, data and rules is months rather than weeks. What moves the number is how much has to be invented rather than wired together. Smaller integration work — connecting two systems that both have a decent API — is a different size of job and is quoted separately, in the low single-digit thousands rather than the tens; the range for it is set out on the integrations page. Nothing is priced before the problem is scoped in writing, so the figure does not move once it is agreed.
A single connected feature is usually one to three weeks. Something with its own data, users and rules is six to twelve. The honest variable is not the code, it is how quickly questions get answered — a project waiting a week for a decision takes a week longer.
Yes, entirely. The repository is yours, the hosting account is in your name, and the handover includes whatever documentation is needed to work on it without me. Anyone who is cagey about this is protecting their retainer rather than your business.
Often, yes — picking up a specific piece, or reviewing an existing codebase before you commit more money to it. That review is sometimes the most useful thing I do for a business, because it occasionally ends with advice not to rebuild.
Start by describing the problem
Not the solution you have in mind — the thing that is costing you time. You will get an opinion on whether it needs building, and what it would take if it does.