The toolkit behind our systems

Our own building blocks, refined over twenty years: data handling, reporting, courier labels, marketplace links and box packing, so each new system starts ahead.

Since 2006

  • 20 yearsof continuous development
  • 500+changes since 2014
  • 3,000+packing test cases matched

The client

More Input's own work, used inside the systems we build for clients.

The challenge

Every business system needs the same foundations: sign-in and permissions, imports and exports, reports, background jobs and connections to other services. Writing them again for each client is slow, and every fresh copy brings fresh bugs. We would rather solve each problem once, properly, and keep improving the answer.

What's in it

A family of shared packages, used across our client systems and updated as they are:

  • Fast saving of thousands of records at once, which keeps large imports and nightly jobs quick
  • A reporting engine for totals, breakdowns and comparisons over any period
  • One model for users, permissions, email templates and stored files, shared by every system
  • Courier labels and Royal Mail despatch files
  • A complete connection to Linnworks, produced automatically from Linnworks' own published documentation, so it can be brought up to date in minutes
  • Accounting, payment, mapping and barcode helpers

Packing boxes, in three dimensions

Our packing engine works out which box an order fits into, how to split it across several boxes, and where each item goes. In 2026 we rewrote it from scratch from a published algorithm, then checked it against an established engine on thousands of test cases: the answers were identical. It is now being offered as a pay-as-you-go online service (in progress).

Keeping it current

The toolkit has moved with the technology, from its beginnings in 2006 to the latest Microsoft platform today. It now works on both the old and the new, so client systems can move across with very few changes.

Technical details

Common is a set of VB.NET NuGet packages (23 projects, 512 commits since 2014, now at 5.1.x on a private Azure Artifacts feed), descended from an earlier library dating from 2006. It dual-targets .NET Framework and .NET 10, and MoreInput.Web.MvcCore mirrors the MVC 5 API on ASP.NET Core so apps can migrate with minimal changes.

Highlights: EF bulk insert/update/delete with dependency ordering and a hash-join matcher; composite group-by analytics; LINQ expression-tree rewriting; a Linnworks REST client generated by our own documentation scraper; Royal Mail label layout and BIG pre-advice files.

Multiverse is our Cosmos DB data layer: a tenant-scoped context, partition strategies, a LINQ layer over the Cosmos SDK provider, an in-memory store for fast tests and a Roslyn source generator for strongly typed IDs. MoreInput.BoxPacking is a pure C# EB-AFIT implementation for .NET 10, thread-safe with time limits; the packing service adds API keys, metering and prepaid Stripe credits.

  • VB.NET
  • C#
  • .NET Framework
  • .NET 10
  • Entity Framework
  • Azure Cosmos DB
  • Roslyn

Other case studies

Our own software 2026

Catching mistakes before a person has to

How we've automated every stage of building software, from requirements to the live system, so fewer mistakes reach a developer and development costs less.

Tell us what's slowing your business down.

We'll tell you honestly whether bespoke software is the answer.

Get in touch