dda9b515e13e389a895cea6d84ceff4fa180a4f8
Warme Catering Website
En moderne hjemmeside for catering og private dining services. Bygget med Next.js 14, TypeScript og Tailwind CSS.
Features
- Moderne og responsivt design
- Online menu oversigt og bestilling
- Admin dashboard for bookings
- Dynamisk prissætning baseret på antal gæster
- Pakke- og menu-konfiguration
Tech Stack
- Next.js 14 med App Router
- TypeScript
- Tailwind CSS
- React Server Components
- date-fns for datohåndtering
- react-day-picker for kalenderbooking
Kom i gang
-
Klon repositoriet:
git clone https://github.com/alexpolo1/kokken.git -
Installer dependencies:
npm install -
Start development server:
npm run dev -
Åbn http://localhost:3000 i din browser
Struktur
/src/app/*- Next.js App Router pages/src/components/*- React komponenter/src/config/*- Konfiguration og sample data/src/lib/*- Utility functions/src/types/*- TypeScript type definitioner
Deployment & database
Environment variables are required and must be set in a local .env file (do NOT commit it).
Required env vars (see .env.example):
OPENAI_KEY- OpenAI API key used by image generation (optional)DB_HOST,DB_USER,DB_PASSWORD,DB_NAME- MariaDB connectionADMIN_USER,ADMIN_PASSWORD- basic-auth for admin area
Run database migrations (builds helper scripts then runs migration):
npm run migrate
Build and start the production server:
npm run build
node server.mjs
Generate images (script will skip images that already exist and uses scripts/image-cache.json):
node scripts/generate-images.mjs
Notes:
- The repo ignores
.env*files. Keep secrets in.envor your deployment environment. - Generated images can be large; a small number of generated images were removed from git and the project ignores
public/img/generated/. If you want generated images checked into the repo, move them intopublic/img/and commit explicitly. - For production process management the project includes PM2 scripts in
package.json(seepm2:*scripts).
Languages
HTML
53.9%
TypeScript
35.3%
JavaScript
9.5%
CSS
1.1%
Shell
0.2%