fix: backend won't start

This commit is contained in:
2026-07-08 11:31:38 +02:00
parent 84fa2e0ab0
commit 87bed4e1c7
7 changed files with 2240 additions and 344 deletions
+14
View File
@@ -0,0 +1,14 @@
{
"presets": [
[
"@babel/preset-env",
{
"targets": {
"node": "current"
},
"modules": false
}
],
"@babel/preset-typescript"
]
}
+9 -3
View File
@@ -5,8 +5,9 @@
"main": "server.ts",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node server.ts",
"dev": "node --watch server.ts"
"start": "node dist/server.js",
"dev": "tsx --watch server.ts",
"build": "babel server.ts routes services --extensions .ts --out-dir dist --copy-files"
},
"keywords": [],
"author": "",
@@ -22,7 +23,12 @@
"mysql2": "^3.16.0"
},
"devDependencies": {
"@babel/cli": "^8.0.1",
"@babel/core": "^8.0.1",
"@babel/preset-env": "^8.0.2",
"@babel/preset-typescript": "^8.0.1",
"@types/express": "^5.0.6",
"@types/node": "^26.1.0"
"@types/node": "^26.1.0",
"tsx": "^4.23.0"
}
}
+1 -1
View File
@@ -1,6 +1,6 @@
import express from "express";
import dotenv from "dotenv";
import {authenticate, generateToken} from "../../services/tokenService.js";
import {authenticate, generateToken} from "../../services/tokenService.ts";
import {changePassword, findUser, getSettings, loginUser, updateSettings,} from "./database/users.database.ts";
import {GENERAL_ERROR_CODE, USER_ERROR_CODE} from "@stockhome/shared";
+8 -11
View File
@@ -1,7 +1,7 @@
import {defineConfig} from 'vite'
import path from 'path'
import {dirname} from "node:path";
import {fileURLToPath} from "node:url";
import {dirname} from "node:path"
import {fileURLToPath} from "node:url"
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);
@@ -12,21 +12,18 @@ export default defineConfig({
outDir: '../dist',
emptyOutDir: true,
sourcemap: true,
minify: 'esbuild', // Use esbuild for minification (default)
minify: 'esbuild',
assetsDir: 'assets',
rollupOptions: {
input: path.resolve(__dirname, 'src/index.html'),
output: {
assetFileNames: 'assets/[name]-[hash][extname]' // Hashing for cache busting
}
}
assetFileNames: 'assets/[name]-[hash][extname]',
},
},
},
resolve: {
alias: {
'@': path.resolve(__dirname, 'src'), // Optional alias for cleaner imports
}
'@': path.resolve(__dirname, 'src'),
},
},
define: {
'process.env.NODE_ENV': '"production"' // Inject environment variables
}
})
+2183 -315
View File
File diff suppressed because it is too large Load Diff
+7 -5
View File
@@ -7,15 +7,14 @@
"shared"
],
"version": "0.1.0-dev",
"description": "![React](https://img.shields.io/badge/React-61DAFB?logo=react&logoColor=000&style=flat) ![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=fff&style=flat) ![Vite](https://img.shields.io/badge/Vite-646CFF?logo=vite&logoColor=fff&style=flat) ![Tailwind%20CSS](https://img.shields.io/badge/Tailwind%20CSS-38B2AC?logo=tailwindcss&logoColor=fff&style=flat) ![MUI](https://img.shields.io/badge/MUI-007FFF?logo=mui&logoColor=fff&style=flat) ![TanStack%20Query](https://img.shields.io/badge/TanStack%20Query-FF4154?logo=reactquery&logoColor=fff&style=flat) ![React%20Router](https://img.shields.io/badge/React%20Router-CA4245?logo=reactrouter&logoColor=fff&style=flat) [![TanStack%20Form](https://img.shields.io/badge/TanStack%20Form-EC5990?logo=reacthookform&logoColor=fff)](#) ![Node.js](https://img.shields.io/badge/Node.js-339933?logo=nodedotjs&logoColor=fff&style=flat) ![Express](https://img.shields.io/badge/Express-000000?logo=express&logoColor=fff&style=flat) ![MySQL](https://img.shields.io/badge/MySQL-4479A1?logo=mysql&logoColor=fff&style=flat) ![Docker](https://img.shields.io/badge/Docker-2496ED?logo=docker&logoColor=fff&style=flat) ![Nginx](https://img.shields.io/badge/Nginx-009639?logo=nginx&logoColor=fff&style=flat)",
"main": "index.js",
"description": "",
"scripts": {
"dev:frontend": "npm run dev --workspace=frontend",
"dev:backend": "npm run dev --workspace=backend",
"dev:docker": "docker compose -f docker-compose.dev.yml up -d --wait",
"dev": "npm run dev:docker && concurrently --kill-others \"npm:dev:frontend\" \"npm:dev:backend\"",
"dev:stop": "docker compose -f docker-compose.dev.yml down",
"buildProd": ""
"buildProd": "npm run build --workspace=frontend && npm run build --workspace=backend"
},
"repository": {
"type": "git",
@@ -24,11 +23,14 @@
"keywords": [],
"author": "",
"license": "ISC",
"type": "commonjs",
"type": "module",
"overrides": {
"@babel/core": "^7.26.0"
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@types/cors": "^2.8.19",
"@types/express": "^5.0.6",
"concurrently": "^10.0.3"
}
}
}
+18 -9
View File
@@ -4,13 +4,9 @@
// File Layout
// "rootDir": "./src",
"outDir": "./dist",
// Environment Settings
// See also https://aka.ms/tsconfig/module
"module": "esnext",
"target": "esnext",
"esModuleInterop": true,
"moduleResolution": "node",
"types": [],
// For nodejs:
// "lib": ["esnext"],
@@ -21,11 +17,9 @@
"sourceMap": true,
"declaration": true,
"declarationMap": true,
// Stricter Typechecking Options
"noUncheckedIndexedAccess": true,
"exactOptionalPropertyTypes": true,
// Style Options
// "noImplicitReturns": true,
// "noImplicitOverride": true,
@@ -35,12 +29,27 @@
// "noPropertyAccessFromIndexSignature": true,
// Recommended Options
"strict": true,
"jsx": "react-jsx",
"verbatimModuleSyntax": true,
"isolatedModules": true,
"noUncheckedSideEffectImports": true,
"moduleDetection": "force",
"skipLibCheck": true,
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"strict": true,
"forceConsistentCasingInFileNames": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"module": "esnext",
"moduleResolution": "bundler",
"resolveJsonModule": true,
"isolatedModules": true,
"noEmit": true,
"noImplicitAny": true,
"noImplicitThis": true,
"noUnusedLocals": false,
"jsx": "react-jsx",
"noFallthroughCasesInSwitch": true,
"allowJs": true,
"incremental": true
}
}