Technology
The technologies we build with
Every technology listed here is one we use in delivery. We are not claiming expertise in things we have only read about.
Built with modern technology
See the full stack →In depth
Technologies we have written about in detail
These are the ones where buyers search by name, so each has its own page covering when we use it, why, and where it is the wrong choice.
backend
Laravel development
Laravel is the framework we default to for the systems we build most: internal platforms, multi-branch operations, portals and anything with a billing or permission model. EncoderPOS runs on it in production, which is a more useful reference than a portfolio of screenshots.
backend
PHP development
Most of the PHP we look after was not written by us. It arrived as a WordPress install nobody wants to touch, a CodeIgniter application with no tests, a shared-hosting script that broke under load, or a Laravel application that has not been updated since 2021. That work is a real speciality and it is not glamorous.
frontend
React development
React is the interface layer for most of what we build — the dashboard a manager checks at 8am, the till a cashier uses for nine hours, the console an operator lives in when a customer calls. These are dense, stateful, keyboard-driven surfaces, and they are where interface decisions are either obvious or expensive.
frontend
Next.js development
Next.js is our default for anything that has pages, needs to rank, or is both a product and a website. React on the server with client JavaScript spent only where there is interaction is the whole idea, and the difference is visible in how fast the page arrives and whether a crawler can read it.
backend
Node.js development
Node.js is our answer when a system is held together by events rather than transactions: live interfaces, third-party integrations, streaming and message processing, and anything where the work is waiting on other systems more often than it is waiting on a person.
backend
Python development
We use Python where the work is about data rather than transactions: forecasting from transaction history, extracting text from documents, classifying what arrives in an inbox, and the automation that has to read a thousand files before lunch. The model is the easy part; the part that decides whether the feature survives contact with users is everything around it.
mobile
React Native development
React Native is our default for business applications on both platforms. One product codebase rather than two teams, native-quality Android and iOS, and — the part that actually decides whether a field app works — offline capture designed in from the start rather than bolted on after the first complaint.
backend
.NET development
We build in .NET when the client is a Microsoft shop — because that is what their team maintains, what their consultants understand, and what integrates with the rest of their estate. ASP.NET Core, C# and SQL Server for enterprise systems, and a genuine willingness to work inside an existing solution rather than replace it.
Technology stack by layer
Frontend
The surfaces people work in — dashboards, tills, storefronts and product sites.
Next.jsdetails
App Router, server components and metadata for product-grade sites.
Reactdetails
Application UI for dashboards, tills and operator consoles.
Vue
Used where an existing codebase or team is already Vue-based.
TypeScript
Types across the front end so refactors are survivable.
Tailwind CSS
A constrained design system instead of accumulating stylesheets.
Inertia.js
Server-driven routing when a Laravel backend owns the pages.
Backend
Data models, permissions and the jobs that must not be lost.
Laraveldetails
Default for operational systems: policies, queues, migrations.
PHPdetails
The language behind most business software we build and maintain.
Node.jsdetails
Event-driven services, real-time surfaces and integration workers.
Pythondetails
Data work, automation and machine-learning services.
.NETdetails
C#, ASP.NET and Web API for Microsoft-stack clients.
Mobile
Field and customer applications on the same product APIs.
React Nativedetails
Native-quality Android and iOS from one product codebase.
Expo
Build and release pipeline for React Native applications.
Databases
Where the ledger lives, and the caches that keep it fast.
PostgreSQL
Primary choice when the data model has real constraints.
MySQL
Production database behind EncoderPOS and Laravel systems.
SQL Server
Used on .NET engagements and existing enterprise estates.
SQLite
Local storage for offline-capable clients and field apps.
Redis
Caching, queues and sessions where latency matters.
AI & Data
Applied machine learning inside business software, not as a separate demo.
PyTorch
Model training when a problem needs a custom network.
TensorFlow
Production inference for vision and sequence models.
scikit-learn
Classical models — the right answer more often than deep learning.
Pandas
Data preparation and analysis before any model is chosen.
NumPy
Numerical foundation under the rest of the Python data stack.
OpenCV
Image and document processing, including barcode and scan work.
Infrastructure
Environments, deployment, monitoring and backups we have restored.
Docker
Reproducible environments from a laptop to production.
Linux
The servers everything above actually runs on.
Git
Reviewed history — the baseline for maintainable delivery.
AWS
Cloud hosting, storage and managed databases.
Azure
Cloud platform for .NET and enterprise deployments.
DigitalOcean
Right-sized hosting for products that do not need hyperscale.
Choosing a stack is a delivery decision, not a preference. If your team already runs .NET or WordPress, we work in it. If you are starting fresh, we recommend what fits the product and the people who will maintain it — and explain why. See how this maps to our services.
By category
Explore the stack by layer
Select a layer to see what we use there and the reason it is in the stack.
Data models, permissions and the jobs that must not be lost.
Laravel
Default for operational systems: policies, queues, migrations.
PHP
The language behind most business software we build and maintain.
Node.js
Event-driven services, real-time surfaces and integration workers.
Python
Data work, automation and machine-learning services.
.NET
C#, ASP.NET and Web API for Microsoft-stack clients.
Have a product in mind?
Tell us what you're building, improving or automating. We'll help turn the idea into reliable software.