Systems built around the business, not the other way round.
Surface Labs is the engineering practice of Studio Surface. We design and build the software, instruments and platforms a company actually runs on, when the ones for sale would mean bending the business to fit them.
Six starting points. The list is not the limit.
Low-code where it is faster, custom code where it matters, hardware when the problem is physical. These are the shapes our work has taken so far. If a problem can be specified, we can build the thing that solves it.
Operating systems for companies
ERP and CRM written for one business: customers and their prices, orders from every channel, stock, shipping and tax per country, invoicing, accounting, audit trail. The spreadsheet replacement that does not become the next spreadsheet.
Machine vision and inspection
Fixed cameras under controlled light, an edge computer that decides on the spot, and a detection model trained on the client's own images. Rolled out in stages and measured before it is trusted.
Instruments and hardware
The physical thing around the software: frames, enclosures, lighting, sensors, kiosks, power and failover. Specified to our drawings, fabricated by local partners, commissioned by us.
Platforms and portals
Two-sided marketplaces with search that understands intent. Ordering portals where every customer sees their own prices and public buyers connect through their procurement systems. The brand on the front, the system underneath.
Pipelines and automation
Unattended processes that take a messy input and return a finished output to one standard: product photos cut out and published, documents generated in seven languages, data moved between systems without re-keying.
Anything bespoke
A device, a service, an internal tool, a data model, a workflow nobody sells software for. If you can describe the problem, we can specify and build the thing that solves it, with the brand on the front when it needs one. The categories above are where we started, not where we stop.
A drive-through inspection lane.
Our current hardware build, designed for a fleet of 4,000 vehicles. A five-metre tunnel of diffused light, twelve fixed cameras, identification at the entry, and an edge computer that turns each pass into a record in under a minute. Side elevation, cameras firing in sequence.
Even, diffused, everywhere
Scratches and shallow dents show as breaks in a reflection. A large diffused source gives every panel the same reflection, so the defect is the only thing that changes.
Twelve fixed positions
Same lenses, same angles, same light on every pass. That consistency makes before-and-after comparison reliable and lets a model learn from far fewer images.
Tag plus plate
A windscreen tag read at three metres, cross-checked against the number plate. A mismatch is flagged before a single image is stored.
Decides on the lane
Capture, stitching and inference run locally. Thirty days of scans buffer offline and sync when the link returns. The lane works when the internet does not.
Two builds, one method.
A software system that runs a six-country wholesaler, and a hardware-plus-software system for a national fleet. Different industries, same way of working: specify, build in the open, hand over the keys.
Småkryp AB
Going liveA reward-toy wholesaler selling to schools, clinics and institutions in six countries had outgrown spreadsheets and a patchwork of tools. We designed and built the single system the whole operation now runs on, then rebuilt the storefront to match.
- Scope
- ERP and CRM, invoicing pipeline, e-invoicing and punch-out for public procurement, storefront across seven markets, product photo automation
- Built with
- Zoho Creator with custom logic, Fortnox, Peppol, Shopify, DeepL, Python
- Rules
- Every price held in one currency and converted when a document is made; tax rules applied per country; orders matched to companies by org number, then email, then name
CarGate
Proposed · 2026Automated fleet inspection and management for 4,000 vehicles: a drive-through lane that photographs every panel under controlled light, and an ERP that turns each scan into an inspection record, a work order, a signed checklist and an invoice.
- Scope
- Lane hardware and capture software, nine-module ERP in two languages, damage detection model trained on the fleet's own images, 14-month delivery with four acceptance milestones
- Built with
- Twelve industrial cameras, LED tunnel, RFID and ANPR, GPU edge computer, custom ERP, object storage, detection and segmentation models
- Rules
- No repair closes without a signed checklist and QA gate; re-scan before release; invoice generated automatically; the client owns the model and the data
Software first, hardware second, intelligence last.
A typical build with hardware in it. The system goes live first so the team is working in it before any equipment arrives. The instrument follows. The model trains on real operational data and is handed over only once it has been measured.
Six things we will not compromise on.
Built for the site, not the showroom
Dust, heat, bad power and patchy connectivity are design inputs. Filtered enclosures, UPS ride-through, offline buffering, and parts a local workshop can repair.
Evidence first, automation second
A photographic record or a signed checklist has value on day one. Automation is layered on once there is data to trust, and measured before it is trusted.
The process lives in the system
Gates and sign-offs are enforced by the software. A record cannot move on until the step is done by the right person. Discipline stops depending on individuals.
You own everything
Configuration, code, images, data and trained models are yours. Documentation and source are handed over at each milestone. Licences are in your name from day one.
Standard parts, custom integration
Cameras, compute and platforms are off-the-shelf with global spares. The value is in how they are calibrated, combined and wired into the workflow.
Fixed scope, open build
A signed specification and a fixed price. Then weekly calls, a shared board and a working demo every month. Nothing is revealed at the end.