1.1.0 • Published 9 months ago

live-data-server v1.1.0

Weekly downloads
-
License
BSD-2-Clause
Repository
github
Last release
9 months ago

live-data-server

Restful CRUD API development server for frontend projects to demo.

Similar to json-server but backed by sqlite3.

npm Package Version

Features

  • No need to install (npx executable)
  • RESTful API
  • Persisted by sqlite3
  • CRUD table objects
  • CRUD key-value pairs
  • File Upload
  • Search by any field
  • Search with range / logics (TODO)

Usage

npx live-data-server [port]

The port number can be set with PORT environment variable as well, otherwise it will use any available port.

Usage Example:

> npx live-data-server 8600
listening on http://localhost:8600
listening on http://127.0.0.1:8600 (lo)
listening on http://192.168.80.105:8600 (wlp3s0)

APIs

Files API

MethodPathField
POST/filesfile

Collection API

MethodPathDescription
GET/collection/:tableget all / search*
GET/collection/:table/:idget by id
POST/collection/:tablecreate
PATCH/collection/:table/:idupdate by id
DELETE/collection/:table/:iddelete by id

Supported Search Example:

GET /collection/user?role=admin&status=active

To-be Supported Search Example:

GET /collection/house?rent=below(5000)&area=at_least(200)
GET /collection/product?price=between(10,20)
GET /collection/user?role=not(admin)
GET /collection/user?role=any(shop,client)

Dictionary (key-value) API

MethodPathDescription
POST/dict/:nameinit by name
GET/dict/:nameget by name
PATCH/dict/:nameupdate by name
DELETE/dict/:namedelete by name

Todo

  • support realtime update notices
  • support pub/sub channel

License

This project is licensed with BSD-2-Clause

This is free, libre, and open-source software. It comes down to four essential freedoms [ref]:

  • The freedom to run the program as you wish, for any purpose
  • The freedom to study how the program works, and change it so it does your computing as you wish
  • The freedom to redistribute copies so you can help others
  • The freedom to distribute copies of your modified versions to others