The web application platform provides you with a simple API for building websites, web applications and backends. You don’t need to worry about low-level protocols, processes, etc.

What is Koa?

Koa provides a minimal interface for building applications. It is a very small framework (600 LoC) that provides the necessary tools to build applications and is quite flexible. There are many modules available on npm for Koa that can be directly plugged into it. Koa can be thought of as the core of express.js without all the frills.

Why Koa.

Koa has a small footprint (600 locs) and is a very thin layer of abstraction above the node for creating server-side applications. It is fully pluggable and has a huge community. It also allows us to easily extend Koa and use it according to our needs. It is built using advanced technology (ES6) which gives it an edge over older platforms like Express.

Pug (formerly known as Jade) is a short language for writing HTML templates.

  • Produces HTML
  • Supports dynamic code
  • Supports reuse (DREAM)

It is one of the most popular template languages used in Koa.

MongoDB and Mongoose

MongoDB is an open source document database designed for ease of development and scalability. We will use this database to store data.

Mongoose is a client API for node.js that makes it easy to access our database from our Koa app.

Like Express, it can be used to build server-side applications of any level. Despite significant bug fixes and greater efficiency in some scenarios, Koa is not a replacement for Express, but only an alternative with a much smaller community, so it is unlikely to be suitable for beginners.