You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+41-45Lines changed: 41 additions & 45 deletions
Original file line number
Diff line number
Diff line change
@@ -1,16 +1,19 @@
1
-
# Node.js API Starter Kit <ahref="https://github.com/kriasoft/nodejs-api-starter/stargazers"><imgsrc="https://img.shields.io/github/stars/kriasoft/nodejs-api-starter.svg?style=social&label=Star&maxAge=3600"height="20"></a> <ahref="https://twitter.com/ReactStarter"><imgsrc="https://img.shields.io/twitter/follow/ReactStarter.svg?style=social&label=Follow&maxAge=3600"height="20"></a>
1
+
# Node.js API Starter Kit <ahref="https://gitter.im/kriasoft/nodejs-api-starter"><imgsrc="https://img.shields.io/gitter/room/kriasoft/nodejs-api-starter.js.svg"width="102"height="20"></a> <ahref="https://github.com/kriasoft/nodejs-api-starter/stargazers"><imgsrc="https://img.shields.io/github/stars/kriasoft/nodejs-api-starter.svg?style=social&label=Star&maxAge=3600"height="20"></a> <ahref="https://twitter.com/ReactStarter"><imgsrc="https://img.shields.io/twitter/follow/ReactStarter.svg?style=social&label=Follow&maxAge=3600"height="20"></a>
2
2
3
-
[Node.js API Starter Kit][nodejskit] is a boilerplate and tooling for authoring
4
-
**data API** backends with [Node.js][node] 7+, [JavaScript][js] (via
5
-
[Babel][babel]) and [GraphQL][gql]. It's meant to be paired with a web and/or
6
-
mobile application project such as [React Starter Kit][rsk].
3
+
[Node.js API Starter Kit][nodejskit] is a boilerplate and tooling for authoring **data API**
4
+
backends with [Node.js][node], [JavaScript][js] (via [Babel][babel]) and [GraphQL][gql]. It's
5
+
meant to be paired with a web and/or mobile application project such as [React Starter Kit][rsk].
7
6
8
7
9
-
## Prerequisites
8
+
## Features
10
9
11
-
* macOS, Windows or Linux
12
-
*[Docker][docker] v1.12.5 or newer
13
-
* Text editor or IDE (e.g. [VS Code][code], [WebStorm][wstorm] etc.)
10
+
✓ Cross-platform, develope on macOS, Windows or Linux inside a [Docker][docker] container<br>
11
+
✓ No development dependencies except for [Docker][docker] v1.12.5 or neweer<br>
12
+
✓ Authentication and authorization via [Passport.js][passport] (see [`src/passport`](./src/passport))<br>
13
+
✓ Session and cache management with [Redis][redis] (see [stop using JWT for sessions](http://cryto.net/~joepie91/blog/2016/06/13/stop-using-jwt-for-sessions/))<br>
14
+
✓ [PostgreSQL][pg] database schema boilerplate and migration tools (see [`scripts`](./scripts), [`migrations`](./migrations))<br>
15
+
✓ [GraphQL][gql] boilerplate, everything needed to get started building a [GraphQL][gql] API endpoint<br>
16
+
✓ The exact same process is used to build the app for production and build for running/testing locally<br>
14
17
15
18
16
19
## Directory Layout
@@ -19,22 +22,21 @@ mobile application project such as [React Starter Kit][rsk].
In order to run the app with [V8 inspector][v8debug] enabled, simply set `NODE_DEBUG=true` flag in
93
+
the [`.env`](.env.example) file, restart the app (`docker-compose up`) and [attach your
94
+
debugger][vsdebug] to `127.0.0.1:9229` (see [`.vscode/launch.json`](https://gist.github.com/koistya/421ea3e0139225b27f909e98202a34de)
95
+
for [VS Code][code] as an example).
100
96
101
97
102
98
## Deployment
103
99
104
-
Customize the deployment script found in `scripts/publish.js`. Set this script
105
-
executable by running `chmod +x scripts/publish.sh` on macOS/Linux or convert
106
-
it to `publish.cmd` on Windows. Then whenever you need to deploy your app to a
107
-
remote server simply run:
100
+
Customize the deployment script found in `scripts/publish.js` on macOS/Linux or convert it to
101
+
`publish.cmd` on Windows. Then whenever you need to deploy your app to a remote server simply run:
108
102
109
103
```bash
110
-
scripts/publish.sh
104
+
/bin/sh scripts/publish.sh# or, `scripts/publish.cmd` on Windows
111
105
```
112
106
113
107
Not sure where to deploy your app? [DigitalOcean][do] is a great choice in many cases (get [$10 credit][do])
@@ -139,8 +133,8 @@ However, if you decide to get involved, please take a moment to review the [guid
139
133
140
134
## Support
141
135
142
-
*[#react-starter-kit](http://stackoverflow.com/questions/tagged/react-starter-kit) on Stack Overflow — Questions and answers
143
-
*[#react-starter-kit](https://gitter.im/kriasoft/react-starter-kit) on Gitter — Watch announcements, share ideas and feedback
136
+
*[#nodejs-api-starter](http://stackoverflow.com/questions/tagged/nodejs-api-starter) on Stack Overflow — Questions and answers
137
+
*[#nodejs-api-starter](https://gitter.im/kriasoft/nodejs-api-starter) on Gitter — Watch announcements, share ideas and feedback
144
138
*[GitHub Issues](https://github.com/kriasoft/nodejs-api-starter/issues) — Check open issues, send feature requests
145
139
*[@koistya](https://twitter.com/koistya) on [Codementor](https://www.codementor.io/koistya) or [HackHands](https://hackhands.com/koistya/) — Private consulting
146
140
@@ -154,7 +148,7 @@ file. The documentation to the project is licensed under the
154
148
155
149
156
150
---
157
-
Made with ♥ by Konstantin Tarkus ([@koistya](https://twitter.com/koistya)) and [contributors](https://github.com/kriasoft/nodejs-api-starter/graphs/contributors)
151
+
Made with ♥ by Konstantin Tarkus ([@koistya](https://twitter.com/koistya), [blog](https://medium.com/@tarkus)) and [contributors](https://github.com/kriasoft/nodejs-api-starter/graphs/contributors)
0 commit comments