Project template for authoring GraphQL server applications with Node.js 6+ and JavaScript (demo). You can use it either just as a playground or a base for your next API project.
🔥 Want to strengthen your core JavaScript skills and master ES6?
I would personally recommend this awesome
ES6 course by Wes Bos.
.
├── /build/ # The compiled output (via Babel)
├── /node_modules/ # Project dependencies (npm modules)
├── /scripts/ # Build automation scripts
├── /src/ # Node.js application source files
│ ├──/types/ # GraphQL types /w resolve functions
│ │ ├── /User.js # User account (id, email, etc.)
│ │ ├── /Viewer.js # The top-level GraphQL object type
│ │ └── /... # etc.
│ ├── /app.js # Express application
│ ├── /config.js # Application settings
│ ├── /schema.js # GraphQL schema
│ └── /server.js # Node.js server (entry point)
├── /test/ # Unit and integration tests
└── package.json # The list of project dependenciesJust clone the repo and start hacking:
git clone -o graphql-starter-kit -b master --single-branch \
https://github.com/kriasoft/graphql-starter-kit.git api.example.com
cd api.example.com
npm install
npm start # Alternatively, node scripts/start.jsThe GraphQL server should become available at http://localhost:5000/ (live demo)
If you need to build the project without launching a dev server:
node scripts/build.js # Compiles the app into the /build folder
node scripts/build.js --watch # Compiles the app and starts watching for changesnpm run lint # Find problematic patterns in code
npm run test # Run unit tests once
npm run test:watch # Run unit tests in watch modePick one of the two ways of launching the Node.js app in a debug mode:
node scripts/build.js --watch
node build/server.js --debug --nolazynode scripts/start.js --debug --nolazyThen attach your debugger to the process listening on 127.0.0.1:5858 (learn more).
Anyone and everyone is welcome to contribute. Start by checking out the list of open issues marked help wanted. However, if you decide to get involved, please take a moment to review the guidelines:
- GraphQL.js — The JavaScript reference implementation for GraphQL
- React Starter Kit — Isomorphic web app boilerplate (React, Node.js, Babel, Webpack, CSS Modules)
- React Static Boilerplate — Single-page application (SPA) starter kit (React, Redux, Webpack, Firebase)
- Membership Database — SQL schema boilerplate for user accounts, profiles, roles, and auth claims
- #react-starter-kit on Stack Overflow — Questions and answers
- #react-starter-kit on Gitter — Watch announcements, share ideas and feedback
- GitHub Issues — Check open issues, send feature requests
- @koistya on Codementor or HackHands — Private consulting
Copyright © 2016-present Kriasoft, LLC. This source code is licensed under the MIT license found in the LICENSE.txt file. The documentation to the project is licensed under the CC BY-SA 4.0 license.
Made with ♥ by Konstantin Tarkus (@koistya) and contributors