Skip to content
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
7 changes: 7 additions & 0 deletions .devcontainer/.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
PORT=5000
DB_PASSWORD=notSecureChangeMe
NODE_ENV=development
APP_PORT=8080
PHPMYADMIN_PORT=8081
GIT_EMAIL=msrajawat298@gmail.com
GIT_USERNAME=msrajawat298
35 changes: 35 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"name": "node-express-api-bootstrap",
"dockerComposeFile": "docker-compose.yml",
"service": "app",
"workspaceFolder": "/app",
"mounts": [
"source=${localWorkspaceFolder}/,target=/app,type=bind,consistency=cached"
],
"postCreateCommand": "/app/.devcontainer/postCreateCommands.sh",
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"christian-kohler.path-intellisense",
"dbaeumer.vscode-eslint",
"ms-azuretools.vscode-docker",
"ritwickdey.liveserver",
"rvest.vs-code-prettier-eslint",
"sonarsource.sonarlint-vscode",
"streetsidesoftware.code-spell-checker",
"orta.vscode-jest",
"vitabletech.snippetmaster",
// "alefragnani.project-manager",
// "github.copilot",
// "github.copilot-chat",
// "hoovercj.vscode-power-mode",
// "jasonnutter.search-node-modules",
// "ms-vscode-remote.remote-containers",
// "ms-vscode.vscode-speech",
// "sburg.vscode-javascript-booster",
]
}
}
}
2 changes: 1 addition & 1 deletion docker-compose.yml → .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ services:
volumes:
- .:/app
working_dir: /app
command: bash -c "chmod +x ./setup.sh && ./setup.sh"
command: bash -c "tail -f /dev/null"
ports:
- "${APP_PORT}:${PORT}" # Use the port number defined in .env for the host
env_file:
Expand Down
15 changes: 15 additions & 0 deletions .devcontainer/postCreateCommands.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/bash

# Set up Git
git config --global user.email $GIT_EMAIL
git config --global user.name $GIT_USERNAME

# Install dependencies
npm install

# Run the appropriate command based on the NODE_ENV variable
if [[ $NODE_ENV == 'development' ]]; then
npm run dev
else
npm start
fi
7 changes: 1 addition & 6 deletions .env_sample
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,4 @@ DB_DIALECT=mysql
DB_POOL_MAX=5
DB_POOL_MIN=0
DB_POOL_ACQUIRE=30000
DB_POOL_IDLE=10000
NODE_ENV=development
APP_PORT=80
PHPMYADMIN_PORT=8081
GIT_EMAIL=msrajawat298@gmail.com
GIT_USERNAME=msrajawat298
DB_POOL_IDLE=10000
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ web_modules/
.env.test.local
.env.production.local
.env.local

!.devcontainer/.env
# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache
Expand Down
4 changes: 3 additions & 1 deletion .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
npx lint-staged
npm run lint
npx lint-staged
npm run test:coverage
5 changes: 0 additions & 5 deletions .vscode/extensions.json

This file was deleted.

5 changes: 0 additions & 5 deletions .vscode/settings.json

This file was deleted.

4 changes: 1 addition & 3 deletions coverage/lcov.info
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,7 @@ DA:11,0
DA:12,0
LF:5
LH:0
BRDA:10,0,0,0
BRDA:10,0,1,0
BRF:2
BRF:0
BRH:0
end_of_record
TN:
Expand Down
27 changes: 0 additions & 27 deletions migrations/20240412074035-create-roles.cjs

This file was deleted.

33 changes: 0 additions & 33 deletions migrations/20240412074035-create-users.cjs

This file was deleted.

44 changes: 0 additions & 44 deletions migrations/20240412074305-create-user-roles.cjs

This file was deleted.

42 changes: 0 additions & 42 deletions models/index.cjs

This file was deleted.

22 changes: 10 additions & 12 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,17 +1,13 @@
{
"name": "node-js-jwt-auth",
"name": "node-express-api-bootstrap",
"version": "1.0.0",
"description": "Node.js Demo for JWT Authentication",
"description": "This repository provides a Node.js application for demonstrating JWT authentication and authorization. It includes features such as user registration, user login, and authorization process. The application is built using Express.js, JWT for authentication, Sequelize ORM for database interactions, and MySQL for database storage.",
"main": "app/server.js",
"type": "module",
"scripts": {
"start": "node --env-file .env app/server.js ",
"dev": "nodemon --env-file .env app/server.js",
"sync-db": "node custom_migration/sync-db.js",
"create-table": "sequelize-cli migration:generate --name create_table",
"migrate": "sequelize-cli db:migrate",
"migrate:undo": "sequelize-cli db:migrate:undo",
"migrate:undo:all": "sequelize-cli db:migrate:undo:all",
"seed": "sequelize-cli db:seed:all",
"generate:seed": "sequelize-cli seed:generate --name demo-user",
"lint:clear": "rm -rf ~/.eslintcache",
Expand All @@ -25,6 +21,14 @@
"updateSnapshots": "jest -u --coverage=false"
},
"jest": {
"coverageThreshold": {
"global": {
"branches": 80,
"functions": 80,
"lines": 80,
"statements": 80
}
},
"collectCoverage": true,
"collectCoverageFrom": [
"app/**/*.js",
Expand All @@ -35,12 +39,6 @@
"!**/*.config.js"
]
},
"husky": {
"hooks": {
"pre-commit": "lint-staged",
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
},
"lint-staged": {
"*.js": [
"eslint --fix",
Expand Down