ExpressJS logo
Sinatra inspired web development framework for node.js -- insanely fast, flexible, and simple

What is ExpressJS?

Express is a minimal and flexible node.js web application framework, providing a robust set of features for building single and multi-page, and hybrid web applications.
ExpressJS is a tool in the Microframeworks (Backend) category of a tech stack.
ExpressJS is an open source tool with 45.1K GitHub stars and 7.6K GitHub forks. Here’s a link to ExpressJS's open source repository on GitHub

Who uses ExpressJS?

1174 companies reportedly use ExpressJS in their tech stacks, including Twitter, Intuit, and OpenGov.

4068 developers on StackShare have stated that they use ExpressJS.

ExpressJS Integrations

Node.js, Sentry, Datadog, Bugsnag, and MEAN are some of the popular tools that integrate with ExpressJS. Here's a list of all 22 tools that integrate with ExpressJS.

Why developers like ExpressJS?

Here’s a list of reasons why companies and developers use ExpressJS
ExpressJS Reviews

Here are some stack decisions, common use cases and reviews by companies and developers who chose ExpressJS in their tech stack.

Semantic UI React
Amazon EC2
Docker Compose

Recently I have been working on an open source stack to help people consolidate their personal health data in a single database so that AI and analytics apps can be run against it to find personalized treatments. We chose to go with a #containerized approach leveraging Docker #containers with a local development environment setup with Docker Compose and nginx for container routing. For the production environment we chose to pull code from GitHub and build/push images using Jenkins and using Kubernetes to deploy to Amazon EC2.

We also implemented a dashboard app to handle user authentication/authorization, as well as a custom SSO server that runs on Heroku which allows experts to easily visit more than one instance without having to login repeatedly. The #Backend was implemented using my favorite #Stack which consists of FeathersJS on top of Node.js and ExpressJS with PostgreSQL as the main database. The #Frontend was implemented using React, Redux.js, Semantic UI React and the FeathersJS client. Though testing was light on this project, we chose to use AVA as well as ESLint to keep the codebase clean and consistent.

See more
Paul Whittemore
Paul Whittemore
Owner and Developer at Appurist Software · | 14 upvotes · 20.3K views
Quasar Framework

I'm building most projects using: Server: either Fastify (all projects going forward) or ExpressJS on Node.js (existing, previously) on the server side, and Client app: either Vuetify (currently) or Quasar Framework (going forward) on Vue.js with vuex on Electron for the UI to deliver both web-based and desktop applications for multiple platforms.

The direct support for Android and iOS in Quasar Framework will make it my go-to client UI platform for any new client-side or web work. On the server, I'll probably use Fastly for all my server work, unless I get into Go more in the future.

See more
Antonio Sanchez
Antonio Sanchez
CEO at Kokoen GmbH · | 10 upvotes · 50.8K views
atKokoen GmbHKokoen GmbH

Back at the start of 2017, we decided to create a web-based tool for the SEO OnPage analysis of our clients' websites. We had over 2.000 websites to analyze, so we had to perform thousands of requests to get every single page from those websites, process the information and save the big amounts of data somewhere.

Very soon we realized that the initial chosen script language and database, PHP, Laravel and MySQL, was not going to be able to cope efficiently with such a task.

By that time, we were doing some experiments for other projects with a language we had recently get to know, Go , so we decided to get a try and code the crawler using it. It was fantastic, we could process much more data with way less CPU power and in less time. By using the concurrency abilites that the language has to offers, we could also do more Http requests in less time.

Unfortunately, I have no comparison numbers to show about the performance differences between Go and PHP since the difference was so clear from the beginning and that we didn't feel the need to do further comparison tests nor document it. We just switched fully to Go.

There was still a problem: despite the big amount of Data we were generating, MySQL was performing very well, but as we were adding more and more features to the software and with those features more and more different type of data to save, it was a nightmare for the database architects to structure everything correctly on the database, so it was clear what we had to do next: switch to a NoSQL database. So we switched to MongoDB, and it was also fantastic: we were expending almost zero time in thinking how to structure the Database and the performance also seemed to be better, but again, I have no comparison numbers to show due to the lack of time.

We also decided to switch the website from PHP and Laravel to JavaScript and Node.js and ExpressJS since working with the JSON Data that we were saving now in the Database would be easier.

As of now, we don't only use the tool intern but we also opened it for everyone to use for free:

See more
Full-stack web developer at Capmo GmbH · | 10 upvotes · 16.2K views

I use Socket.IO because the application has 2 frontend clients, which need to communicate in real-time. The backend-server handles the communication between these two clients via websockets. is very easy to set up in Node.js and ExpressJS.

In the research project, the 1st client shows panoramic videos in a so called cave system (it is the VR setup of our research lab, which consists of three big screens, which are specially arranged, so the user experience the videos more immersive), the 2nd client controls the videos/locations of the 1st client.

See more
Praveen Mooli
Praveen Mooli
Technical Leader at Taylor and Francis · | 8 upvotes · 14.1K views
Angular 2
AWS Lambda
Amazon SQS
Amazon SNS
Amazon Kinesis Firehose
Amazon Kinesis
Spring Boot

We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda

To build #Webapps we decided to use Angular 2 with RxJS

See more
Jean Francois Rebaud
Jean Francois Rebaud
Angular 2
GitLab CI

Kubernetes GitLab CI Cassandra ExpressJS Angular 2

I start a new project of a plateform to make an iventory of bands in my musical style preference I choose

  1. for the BackEnd: Express, Casssandra Express because I want to use API and compatibilitie with others front plateform and Cassandra about is performance of scalability

  2. for the Frontend: Angular because it's a real framework and this structure is perfect to add and update new features to make easily evolution

It's the begening of the project and I'll come back for future informations and discussion about problems that must resolved

See more

ExpressJS's Features

  • Robust routing
  • HTTP helpers (redirection, caching, etc)
  • View system supporting 14+ template engines
  • Content negotiation
  • Focus on high performance
  • Executable for generating applications quickly
  • High test coverage

ExpressJS Alternatives & Comparisons

What are some alternatives to ExpressJS?
Koa aims to be a smaller, more expressive, and more robust foundation for web applications and APIs. Through leveraging generators Koa allows you to ditch callbacks and greatly increase error-handling. Koa does not bundle any middleware.
Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
Flask is intended for getting started very quickly and was developed with best intentions in mind.
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
See all alternatives

ExpressJS's Stats

ExpressJS's Followers
3997 developers follow ExpressJS to keep up with related blogs and decisions.
Cagdas Turkdogan
Neeraj Negi
Eric Binek
Solomon Ekrebe
Duje Bonacci
Shangyup Kim
Samuel Olugbemi
Giancarlo Solis
Arun Kumar