This is a sample implementation of CRUD (Create, Read, Update, Delete) in JavaScript
The sample is using PostgreSQL for persistence and provides the following API endpoints via HTTP:
GET /items
- To retrieve a list of all itemsGET /items/:id
- To retrieve a item using its identifierPOST /items
- To create a new itemPUT /items/:id
- To update an existing item using its identifierDELETE /items
- To delete multiple items providing an array of identifiers as payload ({ "ids": []}
)DELETE /items/:id
- To delete an existing item using its identifierSend data to POST /items
and PUT /items/:id
using the following structure:
{
"name": "item name",
// boolean (either true or false)
"active": true
}
spin up
)To run the sample on your local machine, you must have the following software installed:
spin up
)To run this sample locally, you can either follow the steps mentioned below or use the corresponding targets specified in the Makefile
.
docker build -f postgres.Dockerfile -t spin-crud-js-db:local .
docker run --name spin-crud-js-db -d -e POSTGRES_DB=sample -e POSTGRES_USER=timmy -e POSTGRES_PASSWORD=secret -p 5432:5432 spin-crud-js-db:local
spin build
SPIN_VARIABLE_DB_CONNECTION_STRING=postgres://timmy:secret@localhost/sample spin up
At this point, you can invoke the API endpoints mentioned above at http://localhost:3000/