Files
kokken/package.json
Alex Polo cbc1e31440 feat: Add address column and booking extras to bookings table
- Implemented a script to add an 'address' column to the 'bookings' table if it doesn't exist.
- Created a script to add 'include_service', 'include_cleanup', and 'total_price' columns to the 'bookings' table.
- Set up a 'users' table with an admin user and password hashing using bcrypt.
- Developed login and logout API routes with JWT authentication.
- Created a login page with form handling and error display.
- Designed a profile page for Christian Wärme showcasing skills and experience.
- Added a logout button component for admin interface.
- Implemented tests for login functionality and visual calendar layout.
2025-11-07 10:58:19 +01:00

62 lines
1.7 KiB
JSON

{
"name": "warme",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"build:scripts": "tsc -p scripts/tsconfig.json",
"migrate": "npm run build:scripts && node dist/scripts/db-migration.js",
"start": "node server.mjs",
"lint": "next lint",
"clean": "rimraf .next node_modules logs && npm install",
"typecheck": "tsc --noEmit",
"build-and-test": "bash scripts/build-and-test.sh",
"pm2:start": "pm2 start ecosystem.config.js",
"pm2:stop": "pm2 stop warme",
"pm2:restart": "pm2 restart warme",
"pm2:logs": "pm2 logs warme --lines 100 --nostream",
"pm2:delete": "pm2 delete warme"
},
"migration": {
"addFeatured": "node scripts/add-featured-column.mjs"
},
"dependencies": {
"@types/bcrypt": "^6.0.0",
"@types/jsonwebtoken": "^9.0.10",
"bcrypt": "^6.0.0",
"class-variance-authority": "^0.7.0",
"clsx": "^2.0.0",
"date-fns": "^2.30.0",
"dotenv": "^17.2.3",
"jsonwebtoken": "^9.0.2",
"lucide-react": "^0.292.0",
"mysql2": "^3.15.3",
"next": "^14.2.33",
"nodemailer": "^7.0.10",
"openai": "^6.7.0",
"react": "18.2.0",
"react-day-picker": "^8.9.1",
"react-dom": "18.2.0",
"sharp": "^0.34.4",
"tailwind-merge": "^2.0.0"
},
"devDependencies": {
"@eslint/config-array": "^0.21.1",
"@eslint/object-schema": "^2.1.7",
"@playwright/test": "^1.56.1",
"@types/node": "^20",
"@types/react": "^18",
"@types/react-dom": "^18",
"autoprefixer": "^10.4.16",
"eslint": "^8.57.1",
"eslint-config-next": "14.0.3",
"glob": "^11.0.3",
"lru-cache": "^11.2.2",
"postcss": "^8.4.31",
"rimraf": "^6.0.1",
"tailwindcss": "^3.3.5",
"typescript": "^5.2.2"
}
}