diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7114b93 --- /dev/null +++ b/.gitignore @@ -0,0 +1,132 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +#tempfile and workspaceconfig +.tempfile +.workspace-config.json +package-lock.json + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/ + +# Dependency directories +node_modules/ +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional stylelint cache +.stylelintcache + +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files +.env +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +.cache/ +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp +.cache + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* diff --git a/package.json b/package.json index c115459..e11fbc5 100644 --- a/package.json +++ b/package.json @@ -4,27 +4,44 @@ "description": "", "main": "server.ts", "scripts": { - "start": "node src/server.ts", + "start": "nodemon src/server.ts", "watch": "tsc-watch --esModuleInterop src/server.ts --outDir ./dist --onSuccess \"node ./dist/server.js\"", "test": "jasmine-ts", + "build": "npx tsc", + "lint": "eslint --ext .ts", + "prettier": "prettier \"src/**/*.ts\" --write", "tsc": "tsc" }, - "author": "Udacity", + "author": "AnisB", "license": "ISC", "dependencies": { - "express": "^4.17.1", "body-parser": "^1.19.0", - "typescript": "^4.1.3", - "pg": "^8.5.1" + "db-migrate": "^0.11.13", + "db-migrate-pg": "^1.2.2", + "dotenv": "^16.0.0", + "express": "^4.17.1", + "lodash": "^4.17.21", + "nodemon": "^2.0.15", + "pg": "^8.5.1", + "typescript": "^4.1.3" }, "devDependencies": { "@types/express": "^4.17.9", "@types/jasmine": "^3.6.3", "@types/pg": "^7.14.7", + "@types/supertest": "^2.0.11", + "@typescript-eslint/eslint-plugin": "^5.10.1", + "@typescript-eslint/parser": "^5.10.1", + "eslint": "^7.27.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^3.4.0", "jasmine": "^3.6.4", "jasmine-spec-reporter": "^6.0.0", "jasmine-ts": "^0.3.0", + "prettier": "^2.3.0", + "supertest": "^6.1.3", "ts-node": "^9.1.1", - "tsc-watch": "^4.2.9" + "tsc-watch": "^4.2.9", + "typescript": "^4.5.4" } } diff --git a/src/server.ts b/src/server.ts index d71f62f..1ee33aa 100644 --- a/src/server.ts +++ b/src/server.ts @@ -13,3 +13,5 @@ app.get('/', function (req: Request, res: Response) { app.listen(3000, function () { console.log(`starting app on: ${address}`) }) + +export default app;