+
+ Version
+ {displayVersion}
+
+
+ );
+}
diff --git a/apps/web/src/env.js b/apps/web/src/env.js
index f80b6bc..5cab490 100644
--- a/apps/web/src/env.js
+++ b/apps/web/src/env.js
@@ -83,6 +83,8 @@ export const env = createEnv({
.string()
.default("false")
.transform((str) => str === "true"),
+ NEXT_PUBLIC_APP_VERSION: z.string().optional(),
+ NEXT_PUBLIC_GIT_SHA: z.string().optional(),
},
/**
@@ -108,6 +110,8 @@ export const env = createEnv({
API_RATE_LIMIT: process.env.API_RATE_LIMIT,
AUTH_EMAIL_RATE_LIMIT: process.env.AUTH_EMAIL_RATE_LIMIT,
NEXT_PUBLIC_IS_CLOUD: process.env.NEXT_PUBLIC_IS_CLOUD,
+ NEXT_PUBLIC_APP_VERSION: process.env.NEXT_PUBLIC_APP_VERSION,
+ NEXT_PUBLIC_GIT_SHA: process.env.NEXT_PUBLIC_GIT_SHA,
ADMIN_EMAIL: process.env.ADMIN_EMAIL,
FOUNDER_EMAIL: process.env.FOUNDER_EMAIL,
DISCORD_WEBHOOK_URL: process.env.DISCORD_WEBHOOK_URL,
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 78b2171..b158234 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -46,7 +46,13 @@ RUN pnpm turbo run build --filter=web...
FROM base AS runner
WORKDIR /app
+# Build arguments for version information
+ARG APP_VERSION=unknown
+ARG GIT_SHA=unknown
+# Set version as environment variables
+ENV NEXT_PUBLIC_APP_VERSION=$APP_VERSION
+ENV NEXT_PUBLIC_GIT_SHA=$GIT_SHA
COPY --from=installer /app/apps/web/next.config.js .
COPY --from=installer /app/apps/web/package.json .
diff --git a/docker/build.sh b/docker/build.sh
index 3aaf89a..3348d65 100644
--- a/docker/build.sh
+++ b/docker/build.sh
@@ -17,6 +17,8 @@ echo "Git SHA: $GIT_SHA"
docker build -f "$SCRIPT_DIR/Dockerfile" \
--progress=plain \
+ --build-arg APP_VERSION="$APP_VERSION" \
+ --build-arg GIT_SHA="$GIT_SHA" \
-t "unsend/unsend:latest" \
-t "unsend/unsend:$GIT_SHA" \
-t "unsend/unsend:$APP_VERSION" \