An open API service indexing awesome lists of open source software.

https://github.com/leandrolimadeveloper/api-node-without-framework

Pure Node.js API (without framework)
https://github.com/leandrolimadeveloper/api-node-without-framework

javascript nodejs

Last synced: 4 months ago
JSON representation

Pure Node.js API (without framework)

Awesome Lists containing this project

README

          


PURE NODE.JS API (WITHOUT FRAMEWORK)



[![Node.js Version](https://img.shields.io/badge/Node.js-%3E=18-brightgreen)](https://nodejs.org/)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)

## 📋 About

User API (CRUD) built using Node.js without any framework, with the goal of learning and demonstrating how Node works under the hood, focusing on its internal workings.

The API allows to create, update, delete, and retrieve data using filters. The repository also inclues some code files about Streams, which Node is known for being very good at.

## 🌐 Technologies

- JavaScript
- Node.js (v. 18)

## 🚀 Installation and usage

To run the project locally, get a clone of it and access its directory, then execute:

```bash
$ npm run dev
```

Make sure you are using Node version 18, to execute the server in watch mode.

The server will start on TCP port 3333.

For testing, you can use an API client like Insomnia.

## Endpoints

**Retrieve users with or without query parameters**

```
GET /users
GET /users?name=nameExample&email=email-example@email.com
```


**Create a user via body request**

```
POST /users
{
"name": "Leandro",
"email": "leandro@email.com"
}

```


**Update a user via route paramaters and body request**

```
PUT /users/id

{
"name": "Camila",
}
```


**Delete a user via route paramaters**

```
DELETE /users/id
```


## 📃 License

Project under MIT license.