Web applications
Custom applications for the jobs a website cannot do, and the integrations that connect them to whatever is already running.
Some requirements stop being a website with features bolted on and become an application. Usually the signs are the same: several kinds of user with different powers, a process that runs over days rather than in one page load, money changing hands, or data that has to stay correct under people using it at once.
What we take on
Membership and account systems with real permission models. Ticketing, registration and check-in. Submission and review workflows, for papers, applications, grants or entries. Booking and scheduling. Directories and maps that have to stay accurate. Internal tools that replace a spreadsheet several people are editing at the same time. Customer portals hanging off an existing back office. Reporting interfaces for data that already exists somewhere unhelpful.
These are built as web applications, on stacks chosen for the job, and designed so a different team could pick them up later.
Built to be operated
We design for the bad days early, because that is when an application either holds or embarrasses everybody. What happens when the venue wifi drops. When a payment provider stops answering. When a form is edited halfway through a live process and the entries collected before the change still have to make sense. When two people save the same record at once.
Integration
Almost every application has to talk to something that already exists: a CRM, an accounting system, a payment provider, an identity service, a legacy database somebody built in 2011. We connect them properly, including the parts of the other system that are undocumented or occasionally wrong, because those parts do not go away by being ignored.
AI where it earns the space
AI runs in production in our work where it does a real job: producing and enriching catalogue content, drafting from structured data, classification, extraction. Search and recommendation is a capability we are actively building out, and it carries an emerging label until we have shipped enough of it to drop one.