From 9ab7500621c708b22aab9010cb91a23ad1c3d82c Mon Sep 17 00:00:00 2001 From: cpu Date: Thu, 8 May 2025 13:29:51 +0200 Subject: [PATCH] docker --- Dockerfile | 6 ++++-- README.md | 28 +++++++++++++++++----------- 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/Dockerfile b/Dockerfile index b9991c1..36b0b91 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Stage 1: Build the Vue.js application -FROM node:18-alpine AS builder +FROM node:24-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm install @@ -8,8 +8,10 @@ RUN npm run build # Stage 2: Serve the application with Nginx FROM nginx:stable-alpine -COPY --from=builder /app/dist /usr/share/nginx/html COPY ./nginx.conf /etc/nginx/conf.d/default.conf +RUN find /usr/share/nginx/html -mindepth 1 -delete +COPY --from=builder /app/dist /usr/share/nginx/html + EXPOSE 80 CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/README.md b/README.md index 70d5b37..40ee96a 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,10 @@ For an enhanced tactile experience, Nexus Timer supports Smart Buttons based on * **Configuration:** * **Player 1's Button:** Single Click: Emulates a key press (e.g., 'a'). Configure this as Player 1's "Pass Turn / My Pause" hotkey in the app. * **Player 2's Button:** Single Click: Emulates a key press (e.g., 'b'). Configure as Player 2's "Pass Turn / My Pause" hotkey. - * **Player 3's Button:** Single Click: Emulates a key press (e.g., 'c'). Configure as Player 3's "Pass Turn / My Pause" hotkey. Long Press (if Player 3 is Game Admin): Emulates a key press (e.g., 's'). Configure as the "Global Stop/Pause All" hotkey in the app. + * If Player 3 is Game Admin: + * **Player 3's Button:** Single Click: Emulates a key press (e.g., 'c'). Configure as Player 3's "Pass Turn / My Pause" hotkey. + * **Player 3's Button:** Double Click: Emulates a key press (e.g., 'x'). Configure as the "Global Run All Timers" hotkey in the app. + * **Player 3's Button:** Long Press: Emulates a key press (e.g., 's'). Configure as the "Global Stop/Pause All" hotkey in the app. ## Key Features @@ -66,6 +69,7 @@ For an enhanced tactile experience, Nexus Timer supports Smart Buttons based on * Set initial timer values per player (Default: 60:00). * Assign unique "Pass Turn / My Pause" hotkeys (single keypresses). E.g.: Use the Player's 1 "single click" action to insert the key. * Assign the "Global Stop/Pause All" hotkey (single keypresses). E.g.: Use the Player's 3 "long press" action to insert the key. + * Assign the "Run All Timers" hotkey (single keypresses). E.g.: Use the Player's 3 "double click" action to insert the key. * Re-order players (drag-and-drop planned), reverse, shuffle. * **Intuitive Controls:** * **Swipe Up:** (On the Next Player's area). Primary gesture for passing turns (Normal Mode). @@ -95,27 +99,29 @@ For an enhanced tactile experience, Nexus Timer supports Smart Buttons based on "players": [ { "id": "1", - "name": "Alice", - "avatar": "image", - "initialTimer": "60:00", - "currentTimer": "60:00", + "name": "Player 1", + "avatar": null, + "initialTimerSec": 3600, + "currentTimerSec": 3600, "hotkey": "a", "isSkipped": false }, { "id": "2", - "name": "Bob", - "avatar": "image", - "initialTimer": "60:00", - "currentTimer": "60:00", + "name": "Player 2", + "avatar": null, + "initialTimerSec": 3600, + "currentTimerSec": 3600, "hotkey": "b", "isSkipped": false } ], - "globalHotkey": "s", + "globalHotkeyStopPause": "s", + "globalHotkeyRunAll": "x", "currentPlayerIndex": 0, "gameMode": "normal", // "normal" or "allTimers" - "isMuted": false + "isMuted": false, + "theme": "dark" } ``` ## Installation