Compare commits

...

27 Commits

Author SHA1 Message Date
c329ecdb31 chore(deps): update dependency turbo to v2.7.1
Some checks are pending
renovate/stability-days Updates have not met minimum release age requirement
Lint / Lint and Check (pull_request) Successful in 36s
Lint / Lint and Check (push) Successful in 30s
2025-12-21 08:47:25 +00:00
edf2ba0cb7 fix(deps): update nextjs monorepo to v16.1.0
All checks were successful
Lint / Lint and Check (push) Successful in 33s
2025-12-20 13:57:09 +01:00
2822690070 fix(deps): update dependency lucide-react to ^0.562.0
Some checks failed
Lint / Lint and Check (push) Has been cancelled
2025-12-20 13:55:49 +01:00
2eb30725b1 chore(deps): update dependency turbo to v2.7.0
Some checks failed
Lint / Lint and Check (push) Has been cancelled
2025-12-20 13:54:32 +01:00
6907520913 chore(deps): update pnpm to v10.26.1
Some checks failed
Lint / Lint and Check (pull_request) Successful in 37s
Lint / Lint and Check (push) Has been cancelled
renovate/stability-days Updates have not met minimum release age requirement
2025-12-20 12:16:13 +00:00
83d269b432 chore(deps): update pnpm to v10.26.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 31s
2025-12-20 03:04:37 +00:00
db12e07ab8 chore(deps): update dependency typescript-eslint to v8.50.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 30s
2025-12-20 02:05:00 +00:00
f66a70111d chore(deps): update dependency @types/node to v24.10.4
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 32s
2025-12-20 01:05:30 +00:00
9bc1d05bb1 chore(deps): update node.js to c921b97
All checks were successful
Lint / Lint and Check (push) Successful in 32s
2025-12-20 00:04:45 +00:00
2c84feeab0 logo and favicon
All checks were successful
Lint / Lint and Check (push) Successful in 34s
2025-12-14 17:40:10 +01:00
4ac8800ef7 fix(deps): update nextjs monorepo to v16.0.10
Some checks are pending
renovate/stability-days Updates have not met minimum release age requirement
Lint / Lint and Check (pull_request) Successful in 29s
Lint / Lint and Check (push) Successful in 34s
2025-12-13 22:23:53 +00:00
8879963cce fix(deps): update dependency lucide-react to ^0.561.0
All checks were successful
Lint / Lint and Check (push) Successful in 28s
2025-12-13 18:31:01 +01:00
b91ea8be0a chore(deps): update dependency eslint to v9.39.2
Some checks failed
Lint / Lint and Check (push) Has been cancelled
2025-12-13 18:29:05 +01:00
930d68df3e chore(deps): update dependency @types/node to v24.10.3
Some checks failed
renovate/stability-days Updates have not met minimum release age requirement
Lint / Lint and Check (pull_request) Successful in 28s
Lint / Lint and Check (push) Has been cancelled
2025-12-13 17:06:03 +00:00
f8d504b73f fix(deps): update dependency lucide-react to ^0.559.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 37s
2025-12-13 14:04:05 +00:00
43e5c70197 fix(deps): update dependency lucide-react to ^0.557.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (pull_request) Successful in 35s
Lint / Lint and Check (push) Successful in 30s
2025-12-13 13:04:00 +00:00
3f23d70b28 fix(deps): update dependency drizzle-orm to ^0.45.0
All checks were successful
Lint / Lint and Check (pull_request) Successful in 30s
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 43s
2025-12-13 11:28:52 +01:00
d97a2b97a6 chore(deps): pin dependencies
All checks were successful
Lint / Lint and Check (push) Successful in 34s
2025-12-13 11:27:36 +01:00
f386752536 chore(deps): update pnpm to v10.25.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 30s
2025-12-12 22:03:52 +00:00
5e08260b11 chore(deps): update dependency typescript-eslint to v8.49.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 29s
2025-12-12 21:04:13 +00:00
2c0fbf7e63 fix(deps): update nextjs monorepo to v16.0.8
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 30s
2025-12-12 20:05:34 +00:00
dc442f7dc4 chore(deps): update dependency @types/node to v24.10.2
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
Lint / Lint and Check (push) Successful in 30s
2025-12-12 19:31:35 +00:00
eacc7de9b0 chore(deps): update dependency @types/pg to v8.16.0
All checks were successful
Lint / Lint and Check (push) Successful in 31s
2025-12-12 20:23:25 +01:00
2e88b710c3 fix(deps): update react monorepo to v19.2.3
Some checks failed
Lint / Lint and Check (push) Has been cancelled
2025-12-12 20:22:18 +01:00
1f626a64a2 chore(deps): update tailwindcss monorepo to v4.1.18
Some checks failed
Lint / Lint and Check (pull_request) Successful in 28s
Lint / Lint and Check (push) Has been cancelled
renovate/stability-days Updates have not met minimum release age requirement
2025-12-12 18:28:35 +00:00
05a0cb387d add wget to runner image for healthcheck
All checks were successful
Lint / Lint and Check (push) Successful in 35s
2025-12-09 13:28:08 +01:00
8286b9801f add curl for healthcheck
All checks were successful
Lint / Lint and Check (push) Successful in 38s
2025-12-09 13:24:43 +01:00
11 changed files with 540 additions and 523 deletions

View File

@@ -1,6 +1,6 @@
# syntax=docker.io/docker/dockerfile:1 # syntax=docker.io/docker/dockerfile:1@sha256:b6afd42430b15f2d2a4c5a02b919e98a525b785b1aaff16747d2f623364e39b6
FROM node:24-alpine AS base FROM node:24-alpine@sha256:c921b97d4b74f51744057454b306b418cf693865e73b8100559189605f6955b8 AS base
# Install dependencies only when needed # Install dependencies only when needed
FROM base AS deps FROM base AS deps
@@ -38,6 +38,8 @@ RUN \
# Production image, copy all the files and run next # Production image, copy all the files and run next
FROM base AS runner FROM base AS runner
# wget needed for healthcheck
RUN apk add --no-cache wget
WORKDIR /app WORKDIR /app
ENV NODE_ENV=production ENV NODE_ENV=production

BIN
app/apple-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 15 KiB

3
app/icon0.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="255.99998" height="255.99998"><svg width="255.99998" height="255.99998" viewBox="0 0 67.733328 67.733329" version="1.1" id="SvgjsSvg1501" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"><defs id="SvgjsDefs1500"></defs><g id="SvgjsG1499"><rect style="font-variation-settings:'wght' 800;display:none;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:4.23333;stroke-linecap:round;stroke-linejoin:round" id="SvgjsRect1498" width="67.73333" height="67.73333" x="0" y="0"></rect><circle style="font-variation-settings:'wght' 800;display:inline;fill:#059669;fill-opacity:1;stroke:none;stroke-width:5.27484;stroke-linecap:round;stroke-linejoin:round" id="SvgjsCircle1497" cy="12.297192" cx="45.428497" r="8.4252577"></circle><circle style="font-variation-settings:'wght' 800;display:inline;fill:#d97706;fill-opacity:1;stroke:none;stroke-width:5.27484;stroke-linecap:round;stroke-linejoin:round" id="SvgjsCircle1496" cy="55.690498" cx="20.649494" r="8.4252577"></circle><path d="M 41.252138,22.687586 C 37.704621,21.261737 35.129699,18.124539 34.422921,14.367094 27.263765,12.036843 21.1959,16.3091 21.1959,16.3091 26.828105,11.378756 34.25937,11.488211 34.25937,11.488211 34.4658,8.6374649 35.754453,5.9735431 37.861353,4.0421364 27.616916,4.6289911 20.55393,9.007259 20.55393,9.007259 c 0,0 7.215201,-6.4715959 18.21468,-7.3018404 C 27.909388,0.39887564 15.094082,4.9774108 6.3514003,18.315496 c 4.0103957,-4.912052 8.0242977,-5.536907 8.0242977,-5.536907 0,0 -8.0242977,5.536907 -11.6352968,22.306673 C 6.693033,24.761888 14.134879,20.722399 14.134879,20.722399 c 0,0 -11.3944778,14.362863 -6.4196968,29.448183 -2.2340419,-20.604045 17.5727098,-29.52867 17.5727098,-29.52867 0,0 -9.999614,7.430395 -9.869074,14.604325 6.849011,-12.913208 16.759463,-12.648153 16.759463,-12.648153 0,0 -1.654004,0.160095 -2.797748,3.339924 4.372381,-3.267307 9.297788,-3.366744 11.871607,-3.250413 z" style="font-variation-settings:'wght' 800;display:inline;fill:#10b981;stroke-width:5.27484;stroke-linecap:round;stroke-linejoin:round" id="SvgjsPath1495"></path><path d="M 58.307152,17.632961 C 57.576231,39.826641 38.88902,48.927208 38.88902,48.927208 c 0,0 8.797937,-6.66472 11.674571,-16.28871 -9.182522,13.25164 -17.211482,12.958514 -17.211482,12.958514 0,0 1.23553,-0.13002 3.330258,-3.771331 0,0 -3.711354,3.633872 -11.73317,3.573653 3.398948,1.419962 5.877586,4.426569 6.623169,8.033957 6.622795,1.558117 13.334552,-1.898221 13.334552,-1.898221 0,0 -6.384514,4.403344 -13.142669,5.086176 -0.229172,2.737305 -1.460403,5.293772 -3.45775,7.179499 8.51737,-0.09688 17.40272,-5.405551 17.40272,-5.405551 0,0 -5.901793,5.983606 -18.21468,7.743557 7.503974,0.399663 25.113814,-1.775961 32.296802,-16.610078 -1.747838,3.616163 -8.224552,5.57683 -8.224552,5.57683 0,0 8.224552,-5.57683 11.474321,-22.22683 -2.178474,6.160256 -11.070591,14.364798 -11.070591,14.364798 0,0 11.070591,-14.364798 6.336629,-29.610449 z" style="font-variation-settings:'wght' 800;display:inline;fill:#f59e0b;fill-opacity:1;stroke-width:5.27484;stroke-linecap:round;stroke-linejoin:round" id="SvgjsPath1494"></path></g></svg><style>@media (prefers-color-scheme: light) { :root { filter: none; } }
@media (prefers-color-scheme: dark) { :root { filter: none; } }
</style></svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
app/icon1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -28,6 +28,7 @@ export default function RootLayout({
return ( return (
<html lang="en" className="scroll-smooth"> <html lang="en" className="scroll-smooth">
<head> <head>
<meta name="apple-mobile-web-app-title" content="Track Every Day" />
<PlausibleProvider <PlausibleProvider
domain="trackevery.day" domain="trackevery.day"
customDomain="https://analytics.schulze.network" customDomain="https://analytics.schulze.network"

21
app/manifest.json Normal file
View File

@@ -0,0 +1,21 @@
{
"name": "Track Every Day",
"short_name": "Track",
"icons": [
{
"src": "/web-app-manifest-192x192.png",
"sizes": "192x192",
"type": "image/png",
"purpose": "maskable"
},
{
"src": "/web-app-manifest-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "maskable"
}
],
"theme_color": "#ffffff",
"background_color": "#ffffff",
"display": "standalone"
}

View File

@@ -28,39 +28,39 @@
"clsx": "^2.1.1", "clsx": "^2.1.1",
"cssnano": "^7.1.2", "cssnano": "^7.1.2",
"date-fns": "^4.1.0", "date-fns": "^4.1.0",
"drizzle-orm": "^0.44.7", "drizzle-orm": "^0.45.0",
"lucide-react": "^0.556.0", "lucide-react": "^0.562.0",
"nanoid": "^5.1.6", "nanoid": "^5.1.6",
"next": "16.0.7", "next": "16.1.0",
"next-plausible": "^3.12.5", "next-plausible": "^3.12.5",
"pg": "^8.16.3", "pg": "^8.16.3",
"pg-native": "^3.5.2", "pg-native": "^3.5.2",
"postcss-flexbugs-fixes": "^5.0.2", "postcss-flexbugs-fixes": "^5.0.2",
"postcss-preset-env": "^10.4.0", "postcss-preset-env": "^10.4.0",
"react": "19.2.1", "react": "19.2.3",
"react-dom": "19.2.1", "react-dom": "19.2.3",
"tailwind-merge": "^3.4.0", "tailwind-merge": "^3.4.0",
"tailwindcss-animate": "^1.0.7" "tailwindcss-animate": "^1.0.7"
}, },
"devDependencies": { "devDependencies": {
"@tailwindcss/postcss": "4.1.17", "@tailwindcss/postcss": "4.1.18",
"@types/node": "24.10.1", "@types/node": "24.10.4",
"@types/pg": "8.15.6", "@types/pg": "8.16.0",
"@types/react": "19.2.7", "@types/react": "19.2.7",
"@types/react-dom": "19.2.3", "@types/react-dom": "19.2.3",
"drizzle-kit": "0.31.8", "drizzle-kit": "0.31.8",
"eslint": "9.39.1", "eslint": "9.39.2",
"eslint-config-next": "16.0.7", "eslint-config-next": "16.1.0",
"eslint-config-prettier": "10.1.8", "eslint-config-prettier": "10.1.8",
"postcss": "8.5.6", "postcss": "8.5.6",
"prettier": "3.7.4", "prettier": "3.7.4",
"prettier-plugin-tailwindcss": "0.7.2", "prettier-plugin-tailwindcss": "0.7.2",
"tailwindcss": "4.1.17", "tailwindcss": "4.1.18",
"turbo": "2.6.3", "turbo": "2.7.1",
"typescript": "5.9.3", "typescript": "5.9.3",
"typescript-eslint": "8.48.1" "typescript-eslint": "8.50.0"
}, },
"packageManager": "pnpm@10.24.0", "packageManager": "pnpm@10.26.1",
"pnpm": { "pnpm": {
"overrides": { "overrides": {
"@types/react": "19.2.7", "@types/react": "19.2.7",

1004
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB