Web Apps & SaaS

Web applications that carry the actual work.

A website tells people what you do. An application does the work. We build web apps that replace shared spreadsheets, email threads and manual handoffs.

What is a web application?

A web application is software you use in the browser. Users sign in, it stores data, it controls who may do what, and it changes records. A website mainly shares information. An application does work for the people signed into it, so the way the data is organized shapes the build.

01/WHAT YOU GET

What you get.

  • A working app, deployed and ready to use
  • Sign-in, sessions and account recovery
  • Roles and permissions checked on the server
  • Admin tools that need no developer
  • Staging and live environments with a rollback route
  • Handover documents for the data and setup

A good fit for

  • Companies running a core process in a shared spreadsheet
  • Businesses whose staff enter the same data twice
  • Teams working around an off-the-shelf tool every day
02/HOW IT WORKS

How the work runs.

  1. Understand

    We map who does what, the stages a record moves through, and the decisions people make.

  2. Architect

    We plan the data, permissions and connections together, and decide which pages stay public.

  3. Design

    Screens come from one design system, including the empty, loading, error and access-denied states.

  4. Build

    We build in releases that each work alone, with sign-in, roles and activity history from the first.

  5. Validate

    We test failure paths, permissions, keyboard use and speed with realistic amounts of data.

  6. Launch

    We release through staging, with monitoring in place and a rehearsed rollback route.

  7. Improve

    We agree what is measured and how change requests work, so improvement is planned.

03/PROBLEMS

What we fix.

  • Problem

    Your process lives in a spreadsheet

    What we do

    We move it into one place with a history, permissions and records that stay consistent.

  • Problem

    Staff enter the same data twice

    What we do

    One designed data model removes the duplicate entry and the weekly reconciliation.

  • Problem

    Nobody can see what is outstanding

    What we do

    The app keeps the current state in one place, so questions are answered without asking someone.

04/COMPARISON

Buy a tool, or build an application?

Custom software costs more and is often the wrong answer. Here is how we help you decide, including when to buy instead.
OptionWhen it is rightWhat you accept
Off-the-shelf productThe process is standard and fits with simple setup.Subscription cost, and working the way the product works.
Product plus light custom workThe core fits, but reporting or one integration is missing.Two systems to keep in step, plus the product roadmap.
Custom applicationThe process is specific, central and stable enough to encode.Build cost, plus owning maintenance, hosting and change.
Keep the spreadsheetLow volume, one editor, and the friction costs little.No history, no permissions, and a ceiling as volume grows.
05/QUESTIONS

Frequently asked questions

How long does it take to build a web application?

Longer than a website and shorter than most people expect for a first release, because we deliberately ship one complete path through the process rather than a fraction of everything. The honest range depends on the number of roles, the number of states a record moves through, and how many external systems are involved.

Can a web application work like an app on a phone?

Yes, as a Progressive Web App: it installs to the home screen, works offline to a degree and can send web push notifications, all from one web codebase. Native iOS and Android development is a separate capability, and we will tell you plainly whether it is in scope rather than implying it.

Can a web application integrate with our existing systems?

Usually, provided the other system exposes an API, a webhook, a database connection or an export. What matters more than the technology is what happens when the other side is slow, unavailable or returns something unexpected — we specify that behavior rather than leaving it to fail quietly.

Who owns the application and the data?

You do. The repository is yours, the hosting and third-party accounts are in your name, and the data model and deployment path are documented so another developer can take it over. Ongoing maintenance is a separate, explicit arrangement rather than a dependency built quietly into delivery.

Can you take over an application somebody else built?

Often, yes, starting with an assessment rather than a promise: we look at the code, the data model, the dependencies and the deployment path, and tell you what can be built on and what has to be replaced. Where a rewrite is genuinely cheaper than continuing, we say that plainly.

06/THE FULL DETAIL

The full detail.

Short answers are above. Open a panel below for the specifics: how we decide, what is included and the deeper questions.

Is this the right choice?

  • Choose a web application when users need accounts, state and permissions.

    People sign in, see only their own or their role data, and change records other people depend on. That is an application, and the data model is where the build starts.

  • Choose a website when the job is publishing and conversion.

    If nobody needs to sign in and no data has to persist between visits, an application is capability you will pay for and never use. Business websites or custom website development is the right route.

  • Consider SaaS when the same software serves many organizations.

    Once you are selling access to multiple customer organizations rather than running it for one, tenancy, plans and billing become first-class concerns. That is multi-tenant SaaS development.

What is the difference between a website and a web application?

A website publishes information to visitors, and most of its value lies in being found and read. A web application does work for signed-in users: it stores state, enforces permissions and changes data. The two need different architectures, and treating an application as a website produces a login bolted onto a brochure site.

The practical test is whether anything has to be remembered about a person between visits, and whether two users should see different things. If the answer to both is no, it is a website. If yes, the data model and the permission model become the center of the build and the page structure follows them.

  • Websites optimize for being found; applications optimize for being used.
  • Websites serve everyone the same page; applications serve each user their own data.
  • Websites publish content; applications change records and keep a history.
  • Websites are measured in traffic and conversions; applications in completed work.
  • Most real products are both, with a public site in front of an authenticated application.

How are authentication and permissions handled?

Authentication establishes who someone is; authorization decides what they may do. Both are enforced on the server for every request. Credentials are hashed, sessions are handled server-side, and roles map to explicit rules rather than to hidden interface elements — a hidden button is not a permission.

Applications are designed with appropriate security practices, and we will not claim more than that: no system is unbreakable, and a supplier who guarantees security is telling you something untrue. What we do commit to is that access rules are explicit, checked server-side, logged where it matters, and documented so they can be reviewed rather than trusted.

Can you add two-factor authentication?

Yes, and for applications holding sensitive data it should be in scope from the first release rather than added later. The specific method — authenticator app, email code, hardware key — is decided with you during scoping.

Should application pages be indexed by Google?

No. Authenticated routes are kept out of the index deliberately, while the public marketing, documentation and pricing pages stay server-rendered and indexable. Treating both halves the same way is a common and expensive mistake.

How is a web application scoped so the first version ships?

By cutting the build into releases that each stand on their own. The first release covers one complete path through the process — not a fraction of every feature — so it can be used, and what is learned from real use informs the next release rather than being guessed at the start.

The failure mode this avoids is a twelve-month build that meets a specification written before anyone had used anything. Software is a set of assumptions about how people work, and the only reliable way to test those assumptions is to put a usable version in front of them early.

Everything included

  • Web applications
  • Application frontends
  • Workflow and process applications
  • Application state and data modeling
  • Role and permission design

What a web application is made of.

Applications are discussed as if they were one thing. They are four, and knowing which layer a requirement belongs to is what makes a scope conversation productive rather than circular.

  • Interface

    What users see and operate: screens, forms, tables and the states around them. It asks for data and sends changes; it never decides what is allowed.

  • Application logic

    The rules of the business: what a record can become, who may change it, what has to be true before it saves. This runs on the server, where it cannot be bypassed.

  • Data

    The store and the model behind it — the relationships, constraints and history that keep records consistent even when several people work at once.

  • Interfaces to other systems

    APIs, webhooks and scheduled jobs connecting the application to the services you already run, each with its failure cases handled rather than assumed away.

Which external systems an application connects to is specific to the project and agreed during scoping. Integration work beyond the application itself is covered under integrations and automation.

Why it matters

  • The process becomes visible

    State lives in one place with a history attached. Questions about what is outstanding or what happened are answered by the application rather than by the person who remembers.

  • Permissions are real

    Access is enforced on the server and logged, so what each role can see and do is a rule rather than an agreement — which is what makes delegation safe.

  • One version of the data

    A designed data model removes the duplicate entry and the weekly reconciliation, which is usually where the actual saving is.

  • The product can be found

    Marketing pages, documentation and pricing stay server-rendered and indexable while the application itself stays out of the index. Both halves get the treatment they need.

Where it applies

  • An operations tool replacing shared spreadsheets

    Jobs, cases, stock, applications or approvals moving through states, with several people working the same queue and needing to see the same truth.

  • A workflow with approvals and roles

    Work that has to be submitted, reviewed and approved by different people, where who did what and when is part of the requirement.

  • A prototype that has to become a product

    Something validated in a spreadsheet or a no-code tool that now needs real accounts, real permissions and data integrity to carry paying users.

Technology and approach

  • TypeScript end to end, so the shape of the data is enforced across the interface, the server and the database access layer.
  • A relational data model by default, because most business processes are relationships and enforcing them in the database is cheaper than enforcing them in code.
  • Permission checks on the server for every request; hiding a button is presentation, not security.
  • Designed with appropriate security practices — hashed credentials, server-side session handling, parameterized queries, secrets in environment configuration — and no claim that any system is unbreakable.
  • Releases sliced so the first useful version ships early, rather than everything arriving at once at the end.
  • Audit trails on the actions that matter, because in an application with roles, who changed what is part of the data.
07/RELATED

Related services

Talk to us about Web Application Development.

Tell us what you need and when you need it. We reply with a clear scope and the next steps.