a simple api boilerplate
This is a basic boilerplate for spinning up a non-hypermedia API with a minimum of abstractions. It relies heavily on pg-promise and uses json schema for input validation (via is-my-json-valid).
Install node 6x+ and postgresql (this should be in vagrant or docker).
- Run
npm install
to install local dependencies. - Create database
createdb api-boilerplate
. - Run
npm run migrate:up
to initialize the database schema. - Run
npm run seed:up
to populate database with seed data. - Run
npm run start-dev
to start the api. - Browse to http://localhost:8080/
- Edit files in
src/api
(the server will automatically restart on changes).
- Run
npm run migrate
to check the status of migrations. - Run
npm run migrate:up
to migrate to the most recent migration. - Run
npm run migrate:down
to roll back one migration. - Run
npm run migrate:create
to create a new migration file.
- Run
npm run seed
to check the status of seeds. - Run
npm run seed:up
to load to the most recent seed. - Run
npm run seed:down
to roll back one seed. - Run
npm run seed:create
to create a new seed file.
// one
POST /v1/state
Content-Type: application/json
{
"data": {
"name": "Minnesota",
"abbr": "MN"
}
}
// many
POST /v1/state
Content-Type: application/json
{
"data": [{
"name": "Minnesota",
"abbr": "MN"
}, {
"name": "Vermont",
"abbr": "VT"
}]
}
// many
GET /v1/state
// one
GET /v1/state/1
PATCH /v1/state/1
Content-Type: application/json
{
"data": {
"name": "Minnesota"
}
}
DELETE /v1/state/1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.