What is Koa JS
Widely used server side Framework for NodeJs . Koa was developed by the same creator of express another popular backend JS framework .
Koa provides a minimal interface for developing apps and APIs.
Smaller footprint than any other NodeJS Framework. Framework including express.
You have the option to extend the framework with added modules.
Koa is built using ES6 + and promotes modern js syntax.
Uses generators and async/await
Common KOA addon modules
Koa Router → koa does not Comes with a inbuilt router as it is very minimalistic .koa-router is a simple routing module.
Koa EJS Templating → easy to use template engine to display views and layout . of course you can use a frontend framework as well.
Koa body parser — parse incoming data.
Advantage of Koa js
Very small footprint but easily extended.
Modernized syntax.
Enhanced HTTP req , res.
Fast and efficient.
Simple to learn if you know express.
How is koa js different from express
Promise based flow.
No callback hell.
Better error handling through try catch block.
Koa is more modular.
Proper stream handling.
Better user experience.
LETS CREATE A SIMPLE APPLICATION USING KOA JS
Requirements — Node, IDE.
- First we want install node js in the system.
- Create a koa js project inside the ide (we are using VsCode).
- Install the koa js package inside the project (npm install koa).
- Install nodemon package.
Nodemon
Why we use nodemon -that will monitor for any changes in your source and automatically restart your server.
To install nodemon
In package.json file we want to change the scripts.
Example 1
Displaying a message in web browser.
To run the code we wan to type npm start in the terminal.
Now go to web browser and type http://localhost:3000/ and check whether you are getting an output like this.
LETS CREATE A RST API
First we need to install dependency called koa-router using npm i koa-router.
Now install koa-bodyparser using npm i koa-bodyparser.
GET METHOD
Now we want use get method to retrieve a message called Hello test in web Browser.
To run the code we want to type npm start in the terminal.
Now go to web browser and type http://localhost:3000/test and check whether you are getting an output like this.