All Projects → jhkersul → ExpressQL

jhkersul / ExpressQL

Licence: MIT license
A Ready-to-Go API Skeleton using Node.js + Express.js + GraphQL + MongoDB + JWT Authentication

Programming Languages

javascript
184084 projects - #8 most used programming language
shell
77523 projects
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to ExpressQL

Express Typescript Boilerplate
A delightful way to building a RESTful API with NodeJs & TypeScript by @w3tecch
Stars: ✭ 2,293 (+19008.33%)
Mutual labels:  skeleton, expressjs
larapi
Opinated API Skeleton created with Laravel
Stars: ✭ 47 (+291.67%)
Mutual labels:  skeleton
gatsby-reactstrap
Adding Bootstrap 4 to an Gatsby React App and serve generated the static site with Express.js
Stars: ✭ 25 (+108.33%)
Mutual labels:  expressjs
spiced-final-project
Career explorer platform developed in React.js in 6 days.
Stars: ✭ 14 (+16.67%)
Mutual labels:  expressjs
PollBuddy
Poll Buddy is an interactive questionnaire platform that aims to be an enjoyable and easy to use way to collect answers and insights from a group of people.
Stars: ✭ 20 (+66.67%)
Mutual labels:  expressjs
Express-MongoDB-Authentication
A simple authentication app using Express & MongoDB
Stars: ✭ 15 (+25%)
Mutual labels:  expressjs
BotBlock.org
BotBlock - The List of Discord Bot Lists and Services
Stars: ✭ 29 (+141.67%)
Mutual labels:  expressjs
order-service
一个基于vuejs,reactjs,nodejs,socket.io的服务系统
Stars: ✭ 22 (+83.33%)
Mutual labels:  expressjs
mindjs
Minimalistic, pure Node.js framework superpowered with Dependency Injection 💡 💻 🚀
Stars: ✭ 17 (+41.67%)
Mutual labels:  expressjs
angular-cli-skeleton
angular-cli skeleton to quickly start a new project with advanced features and best practices. All features are described in README.md.
Stars: ✭ 32 (+166.67%)
Mutual labels:  skeleton
Octave.gg
Web front-end for Octave.
Stars: ✭ 19 (+58.33%)
Mutual labels:  expressjs
aurelia-typescript-boilerplate
A starter kit for building a standard navigation-style app with Aurelia, typescript and webpack by @w3tecch
Stars: ✭ 18 (+50%)
Mutual labels:  skeleton
nova-skeletons
CSS Utility library to create beautiful skeleton screens
Stars: ✭ 28 (+133.33%)
Mutual labels:  skeleton
Library-Management-System
An online library management system built with MongodDB, Express.js and Node.js
Stars: ✭ 39 (+225%)
Mutual labels:  expressjs
nestjs-rest-sample
NestJS RESTful APIs Sample
Stars: ✭ 204 (+1600%)
Mutual labels:  expressjs
node-crudapi-ts
CRUD boilerplate for create Node Restful API's with Express Framework and Sequelize ORM written in Typescript.
Stars: ✭ 41 (+241.67%)
Mutual labels:  expressjs
skinner
Skin export / import tools for Autodesk Maya
Stars: ✭ 68 (+466.67%)
Mutual labels:  skeleton
AmigoChat-Realtime-Chat-Application
AmigoChat is a responsive real-time chat application built on MERN Stack and Socket io.
Stars: ✭ 22 (+83.33%)
Mutual labels:  expressjs
tuffilink
Capable system for URL shortening with the use of an SQL database. Tuffilink is named after an elephant 🐘
Stars: ✭ 13 (+8.33%)
Mutual labels:  expressjs
app
Aplus Framework App Project
Stars: ✭ 338 (+2716.67%)
Mutual labels:  skeleton

Express GraphQL API Start Kit (In Development)

Node.js + Express.js + GraphQL + MongoDB + JWT Auth

1. What is ExpressQL?

ExpressQL is a API Start Kit that bundles a bunch of features that almost every API needs. ExpressQL is written in Javascript following the ES6 convention.

ExpressQL uses the most popular Node.js web framework to deal with HTTP Requests: Express.js. The data flux is given by GraphQL, the default database is MongoDB and authentication uses JSON Web Token (JWT).

With ExpressQL you only need to write your custom endpoints and you'll have in your hands a bunch of features like authentication, permissions, caching, file uploading and many others.

2. Features

  • Full ES6
  • Functional programming approach
  • Airbnb Javascript coding style
  • Full GraphQL API, no REST endpoints
  • Vanilla GraphQL calls (Not focused on Relay users)
  • MongoDB connection
  • Jest tests
  • User creation
  • User updating
  • User password encrypted
  • User authentication
  • Creating and authenticating user with Facebook
  • Simple error handling
  • Auto generates a temporary Token on Login
  • Manage permissions
  • Image uploading support
  • File uploading support
  • Caching support
  • Serving static files
  • Sending emails

3. Installation

  1. Watchman:
  1. Node.js:
  1. MongoDB:
$ mongo
> use ExpressQL
> exit

4. How to Use

All the information that you need is in the Wiki.

5. Technologies Used

Technology Package Used
GraphQL express-graphql
MongoDB mongoose
JWT jsonwebtoken

6. Folder Structure

The structure of ExpressQL was designed for perfect scaling. The structure is explained on the schema below.

ExpressQL
│
└───services
    |
      # Try to concentrate all your internal logic in here,
      # Things evolving data manipulation, validations
    |
│
└───models
    |
      # This is were you put all your Mongoose models
      # In the models that you do the connection with MongoDB (CRUD methods)
    |
│   
└───graphql
|   └───mutations
    |
      # All GraphQL mutations goes here
    |
|   └───queries
    |
      # All GraphQL queries goes here
    |
|   └───types
    |
      # All GraphQL types goes here
    |
    schema.js # Main GraphQL schema file
|
└───tests
    |
      # This is were you put all your jest tests
    |
│
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].