minimal server setup

This commit is contained in:
andrzej 2024-06-07 12:27:36 +02:00
parent 540ea63ffc
commit 1b2f7b57e6
5 changed files with 2836 additions and 0 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
node_modules/
dist/
!dist/users

2771
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

37
package.json Normal file
View File

@ -0,0 +1,37 @@
{
"name": "subman-backend-ts",
"version": "1.0.0",
"description": "typescript refactor of subman backend",
"main": "index.mts",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "Andrzej Stepien",
"license": "Apache-2.0",
"devDependencies": {
"typescript": "^5.4.5"
},
"dependencies": {
"bcrypt": "^5.1.1",
"body-parser": "^1.20.2",
"express": "^4.19.2",
"jsonwebtoken": "^9.0.2",
"knex": "^3.1.0",
"mongoose": "^8.4.0",
"passport": "^0.7.0",
"passport-jwt": "^4.0.1",
"passport-local": "^1.0.0",
"sqlite3": "^5.1.7"
},
"dev-dependencies": {
"@types/knex": "^0.16.1",
"@types/bcrypt": "^5.0.2",
"@types/express": "^4.17.21",
"@types/jsonwebtoken": "^9.0.6",
"@types/mongoose": "^5.11.97",
"@types/passport": "^1.0.16",
"@types/passport-jwt": "^4.0.1",
"@types/passport-local": "^1.0.38",
"typescript": "^5.4.5"
}
}

12
src/index.mts Normal file
View File

@ -0,0 +1,12 @@
import express from 'express';
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(port, () => {
return console.log(`Express is listening at http://localhost:${port}`);
});

12
tsconfig.json Normal file
View File

@ -0,0 +1,12 @@
{
"compilerOptions": {
"target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
"module": "nodenext", /* Specify what module code is generated. */
"outDir": "./dist", /* Specify an output folder for all emitted files. */
"allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
// "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
"forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
"strict": true, /* Enable all strict type-checking options. */
"skipLibCheck": true /* Skip type checking all .d.ts files. */
}
}