What we do
The work we do
Shape the right approach
We help make sense of complexity and define a clear path forward before delivery begins.
Much of the work we’re involved in starts with uncertainty. Requirements aren’t always clear, there are multiple perspectives, and the path forward isn’t obvious. We work alongside teams to understand what’s really needed, using analysis, workshops, and review to build a shared understanding. From there, we shape a practical approach through solution design, architecture, and clear roadmaps.
This early work sets the foundation for delivery that is aligned, achievable, and built to hold up over time.
Tools and approaches
- User research
- Workshops
- Miro
- Architecture
- APIs
- Data modelling
Design with intent
We design experiences that are usable, accessible, and grounded in real-world needs and constraints.
Design is about how something works in practice. We draw on user research, testing, and journey mapping to understand how people interact with systems. From there, we develop wireframes, prototypes, and interface designs that are clear and accessible.
We also consider content, responsiveness, and design systems so what is created can scale and be maintained. The focus is always on producing design that is usable, inclusive, and ready for delivery.
Tools and approaches
- Figma
- Prototyping
- UX design
- Responsive design
Deliver and build
We build reliable systems that are maintainable and suited to real-world use.
We build platforms, applications, and integrations that are stable, secure, and able to evolve over time. This includes working with APIs, CMS and CRM systems, and data-driven services.
We place a strong emphasis on testing, quality, and continuous delivery so that what is built works as expected in practice. Technical decisions are made with long-term maintainability in mind, avoiding unnecessary complexity and ensuring systems can be supported well beyond initial delivery.
Tools and approaches
- Silverstripe
- Laravel
- Symfony
- PHP
- Node.js
- Vue
- APIs
- Elasticsearch
Support and evolve
We stay involved over time, supporting and improving systems as needs change.
Delivery is not the end of the work. Systems need to adapt as organisations change and new requirements emerge. We provide ongoing support, maintenance, and security updates to keep things stable and secure.
Alongside this, we continue to improve and extend systems based on evolving needs and priorities. This allows organisations to build on what’s already in place, rather than starting again, and ensures systems remain useful over time.
Tools and approaches
- Maintenance
- Support
- Security
- Monitoring
- Performance
Learn and improve
We use data and feedback to understand what’s working and where to improve.
We help teams understand how systems are performing through analytics, monitoring, and direct feedback. This includes tracking usage, identifying issues, and understanding where improvements can be made.
Insights from this work are used to guide decisions, prioritise changes, and improve performance over time. The focus is on making practical, informed improvements that lead to better outcomes.
Tools and approaches
- Elasticsearch
- Kibana
- Analytics
- Monitoring
- Error tracking
Digital preservation
We help organisations capture and preserve web content so it remains accessible, usable, and trusted over time.
Important content often lives on the web, but it can be transient and difficult to revisit once it changes or disappears. We work with organisations to capture and preserve that content so it remains accessible and reliable over time.
This includes archiving websites, structuring captured content, and providing tools to explore and replay it when needed. The result is content that can be trusted, supporting transparency, informed decision-making, and long-term public value.
Tools and approaches
- Browsertrix
- pywb
- WARC
- Elasticsearch
- Kubernetes
Work in partnership
We work closely with teams, building trust and maintaining alignment throughout the work.
Our work is built on strong, collaborative relationships. We work directly with client teams, contributing both strategically and practically across projects. This can include advisory, prototyping, and supporting teams through complex decisions.
We stay closely connected to the work, maintaining open communication and shared ownership. Over time, this often becomes a long-term partnership, where we continue to support and contribute as needs evolve.