Getting start with KoaJS
Introduction and basics use case of KoaJS.
What is KoaJS?
KoaJS is something similar to express, it’s a lite weight Node framework that can be used to create RESTAPIs in NodeJS. It provides features that easily implement the HTTP request including so many other build-in modules and functions. Koa is an open-source framework developed and maintained by the same developers who developed express.
Getting start with Koa JS
Requirements to start with KoaJS
IDE — (VS Code or Webstorm) — https://code.visualstudio.com/download
NodeJS — https://nodejs.org/en/download/
Initiate the project
npm init
Install Nodemon (Optional library)
This allows us to automatically refresh the server whenever there is a change in some changers available on the server. so that we don't have to restart the server manually each time we want to test the changes that we made.
npm install -D nodemon
Once install the nodemon we also have to add the following lines to the package.json file so that we can run the server using npm start
.
"scripts": {"start": "nodemon index.js"
Install koa core libraries and koa router.
npm install koa
npm install koa-router
npm install koa-bodyparser
To configure an HTTP server we need the above libraries to be installed as dependencies.
TIP: Make sure there are no white spaces in the path where the project is located, sometimes this tends to give errors when installing packages.
And then we can start implementing the APIs in index.js
file that we create in the project root.
Create a folder called routes where we will define all the routes we have. we then map them into the index.js.
So finally folder structure will look like follows.
Importing the libraries.
import both koa and koa-router modules to the index.js
Register the route files in Index.js
Mapping path of route files to JS Constants in index.js
Use koa-body parser middleware to handle incoming request bodies.
app.use(bodyParser());
Importing the Routes files using the stored paths. and define the default route.
Let’s create the home_routes.js that contains the /home
URL.
Now after running the server using npm start
we can check the functionality of the small koa server by navigating to the localhost/3000
.
Conclusion
Thank you for taking you time to read the article, with this, I wanted to bring the basics of KoaJS and how to work libraries in order to create a basic HTTP server. If you are willing to see or try a much more robust application implemented in Koa then I check out below links to documentation and some examples.
Koa Introduction — https://koajs.com/#introduction