A web application is software that runs directly in a browser and lets users input data, perform tasks, and interact with dynamic content. Unlike a static website, it processes logic, stores state, and responds to user actions, without needing anything installed on the user's device.
How a web app differs from a static website
A static website delivers fixed content: the same HTML, CSS, and images to every visitor. A web app responds to user input, authenticates identities, reads and writes data, and can update content without reloading the page. Checking email, editing a shared document, or placing an order online all involve a web app. For more on where web apps sit alongside other software types, see what is an application.
The technology stack
Front end
The front end is everything a user sees and touches. Developers use HTML for structure, CSS for presentation, and JavaScript for interactivity. Frameworks such as React, Vue.js, and Angular allow complex interfaces to update content without full page reloads. For a closer look at React specifically, see the difference between React and Next.js.
Back end
The back end handles authentication, business logic, database reads and writes, and communication with external services. Common server-side languages include Python, Node.js, PHP, and Java. Databases such as PostgreSQL, MySQL, and MongoDB store user data between sessions.
For projects that need a faster route to production, backend-as-a-service platforms such as Supabase or Firebase can replace a custom back end for many use cases. See also what is backend as a service and the difference between Firebase and Supabase.
APIs
Front end and back end communicate through APIs, most commonly REST or GraphQL. This separation keeps concerns distinct and allows the interface to request and receive data efficiently, enabling features like real-time collaboration, instant messaging, and live data updates.
Types of web application
Progressive Web Applications (PWAs)
PWAs combine web accessibility with native-app behaviour. They can work offline, send push notifications, and be added to a device's home screen. Because they require no app-store download, they reduce adoption friction while remaining accessible across devices.
Single Page Applications (SPAs)
SPAs load once and then update content dynamically as the user navigates. This removes the need for full page reloads, making interactions feel fast. Gmail and many modern dashboards are SPAs. They require careful state and routing management on the client side.
Enterprise web applications
Enterprise systems, such as CRM platforms and project management tools, handle multiple user roles, large data volumes, and integration with existing business systems. Scalability, security, and regulatory compliance are the primary concerns at this level.
Key advantages
Cross-platform reach. A single web app works on any device with a modern browser. There is no need for separate iOS and Android builds, which reduces development and maintenance overhead significantly. Compare this with the pros and cons of React Native for mobile development if native mobile is also in scope.
Instant updates. Deploying a change to the server makes it immediately available to all users, with no download or install step required.
Analytics. Web apps support detailed tracking of user behaviour, error rates, and feature adoption, providing data to drive iteration.
Common challenges
Performance. Web apps must load quickly and remain responsive across varying devices and network conditions. Techniques include lazy loading, caching, code splitting, and content delivery networks.
Security. Internet-facing applications are a natural target. Secure authentication, data encryption, input validation, and protection against threats such as cross-site scripting and SQL injection must be addressed from the start, not added later.
Browser compatibility. Differences remain between browsers and versions. Testing across environments and applying progressive enhancement keeps the application functional for the widest possible audience.
Scalability. Applications that grow quickly need architectures that can handle increasing traffic and data. Database optimisation, load balancing, and, where appropriate, microservices patterns are common approaches. Planning for scale at the outset is significantly cheaper than retrofitting it.
UX and UI considerations
A web app can be technically sound and still fail if the experience is confusing. The distinction between UX (the overall user journey and logic) and UI (the visual and interactive layer) matters throughout development. See what is the difference between UX and UI design for a practical breakdown.
Web app vs mobile app
Web apps run in a browser and require no installation. Mobile apps are installed from an app store and can access device hardware more directly. A mobile app may be the right choice when deep hardware integration, offline-first behaviour, or a specific platform experience is required. Many products ship both. See what is a web app vs a mobile app for further comparison.
In an AI-native team
Coding agents can scaffold entire front-end components, generate API integrations, and produce database query logic from a prompt. Engineers working this way spend more time reviewing and verifying generated code than writing from scratch, which raises the importance of understanding the full stack rather than just one layer. The volume of AI-generated code in production web apps is already substantial; see how much production code is AI-generated for context. Teams also use agents to produce test coverage for legacy or unfamiliar codebases, making testing software you did not design a routine skill.
What we test for
Engineers placing into web application work are assessed across two sessions as described in how we vet. The first session covers fundamentals without AI tools, verifying that a candidate can read, reason about, and debug code they did not write. The second is an AI-native session using coding agents, where we assess how candidates verify generated output, catch subtle errors, and maintain architectural coherence, skills that matter as much as the ability to write code from scratch.
Need engineers for this?
We place senior engineers who work with this every day: full-stack engineers, frontend engineers, Next.js developers and React developers. You'll have a shortlist in five working days.
Short answers
What is the difference between a website and a web app?
A website typically delivers fixed content to every visitor. A web app processes user input, authenticates users, reads and writes data, and updates content dynamically. Most modern products, such as email clients or project tools, are web apps rather than static websites.
Do web apps need to be installed?
No. Web apps run in a browser and require no installation. Progressive Web Applications can optionally be added to a device's home screen and work offline, but this is an enhancement rather than a requirement for using the application.
What technologies are used to build a web app?
Most web apps combine HTML, CSS, and JavaScript on the front end, often with frameworks like React or Vue.js, and a server-side language such as Python or Node.js on the back end. They communicate via REST or GraphQL APIs and store data in relational or document databases.