Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Mar 9, 2021. It is now read-only.

Boilerplate setup and init commit for Events #9

Merged
merged 1 commit into from
Oct 21, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"presets": [
"es2015",
"stage-2"
]
}
6 changes: 6 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
DB_USER=root
DB_PASSWORD=null
DB_HOST=localhost
DB_PORT=5432
DB_NAME=openrank-dev
JWT_SECRET=jwt-secret
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.md
9 changes: 9 additions & 0 deletions .sequelizerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
require('dotenv').config();
const path = require('path');

module.exports = {
"config": path.resolve('./src/config', 'config.js'),
"models-path": path.resolve('./src/models'),
"seeders-path": path.resolve('./src/seeders'),
"migrations-path": path.resolve('./src/migrations')
};
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"eslint.enable": false
}
1 change: 0 additions & 1 deletion Procfile

This file was deleted.

Empty file added bin/env
Empty file.
11 changes: 11 additions & 0 deletions bin/www
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
// This will be our application entry. We'll setup our server here.
// Babel is to support ES6

require('babel-register')
require("babel-core/register");
require("babel-polyfill"); // If you use async and await

// Configuring the app and server
//require('dotenv').config()
//const http = require('http');
require('../src/index'); // The express app we just created
23 changes: 0 additions & 23 deletions index.js

This file was deleted.

68 changes: 0 additions & 68 deletions models/User.js

This file was deleted.

37 changes: 0 additions & 37 deletions models/UserProject.js

This file was deleted.

16 changes: 0 additions & 16 deletions models/validators.js

This file was deleted.

37 changes: 33 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,20 +1,49 @@
{
"name": "coderplex-backend",
"version": "1.0.0",
"main": "index.js",
"main": "src/index.js",
"repository": "[email protected]:coderplex/coderplex-backend.git",
"license": "MIT",
"scripts": {
"start": "npx nodemon index.js"
"start": "node ./bin/www",
"dev": "./node_modules/.bin/nodemon ./bin/www",
"makemigrations": "sequelize migration:create",
"migrate": "sequelize db:migrate",
"build": "mkdir dist && babel src -s -d dist",
"lint": "eslint"
},
"dependencies": {
"apollo-server": "^2.0.0",
"apollo-server-express": "^2.9.6",
"bcrypt": "^3.0.6",
"body-parser": "^1.19.0",
"cors": "^2.8.5",
"dataloader": "^1.4.0",
"dotenv": "^6.0.0",
"graphql": "^0.13.2",
"express": "^4.17.1",
"graphql": "^14.5.8",
"graphql-relay": "^0.6.0",
"graphql-resolvers": "^0.3.3",
"graphql-scalars": "^1.0.2",
"graphql-sequelize": "^9.3.6",
"jsonwebtoken": "^8.5.1",
"lodash": "^4.17.10",
"mongoose": "^5.2.9"
"morgan": "^1.9.1",
"passport": "^0.4.0",
"passport-jwt": "^4.0.0",
"pg": "^7.12.1",
"pg-hstore": "^2.3.3",
"sequelize": "^5.18.4",
"sequelize-cli": "^5.5.1",
"uuid": "^3.3.3"
},
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-core": "^6.26.3",
"babel-polyfill": "^6.26.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"babel-register": "^6.26.0",
"eslint": "^5.2.0",
"eslint-config-standard": "^11.0.0",
"eslint-plugin-import": "^2.13.0",
Expand Down
56 changes: 0 additions & 56 deletions resolvers/index.js

This file was deleted.

6 changes: 4 additions & 2 deletions schema.gql → schema.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
module.exports = `
import { gql } from 'apollo-server-express'

module.exports = gql`
type UserOutput {
username: String!
email: String!
Expand Down Expand Up @@ -80,4 +82,4 @@ module.exports = `
user: UserInput!
): UserOutput
}
`;
`
22 changes: 22 additions & 0 deletions src/config/config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
module.exports = {
development: {
username: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
host: process.env.DB_HOST,
port: process.env.DB_PORT,
dialect: 'postgres'
},
test: {
username: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
host: process.env.DB_HOST,
port: process.env.DB_PORT,
dialect: 'postgres'
},
production: {
use_env_variable: 'DATABASE_URL',
dialect: 'postgres'
}
}
25 changes: 25 additions & 0 deletions src/config/passport.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// const jwt = require('jsonwebtoken')
const passport = require('passport')
const passportJWT = require('passport-jwt')

const User = require('../models').User

const ExtractJwt = passportJWT.ExtractJwt
const JwtStrategy = passportJWT.Strategy

const jwtOptions = {
jwtFromRequest: ExtractJwt.fromAuthHeaderAsBearerToken(),
secretOrKey: process.env.JWT_SECRET,
passReqToCallback: true
}

const strategy = new JwtStrategy(jwtOptions, (req, jwtPayload, done) => {
return User.findOne({ where: { id: jwtPayload.id } })
.then(user => {
req.currentUser = user
done(null, user)
})
.catch(error => done(error, false))
})

passport.use(strategy)
Loading