diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 89f746c..0918310 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -25,21 +25,16 @@ jobs:
uses: actions/setup-node@v4
with:
node-version: "20"
+ cache: 'npm'
+ cache-dependency-path: 'web/package.json'
- name: Setup Pages
uses: actions/configure-pages@v4
- - name: Install dependencies
+ - name: Install dependencies and generate lock file
run: |
cd web
- if [ ! -f "package-lock.json" ]; then
- echo "package-lock.json not found. Running npm install to generate it."
- npm install
- else
- echo "package-lock.json found. Running npm ci."
- npm ci
- fi
- npm install @tailwindcss/typography
+ npm install
- name: Build with Next.js
run: |
@@ -61,4 +56,3 @@ jobs:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
-
diff --git a/web/app/changelog/page.tsx b/web/app/changelog/page.tsx
index bc25e8e..720d291 100644
--- a/web/app/changelog/page.tsx
+++ b/web/app/changelog/page.tsx
@@ -18,12 +18,10 @@ async function getChangelog() {
export default async function ChangelogPage() {
const changelogContent = await getChangelog()
- return (
-
-
+ return (
+
)
}
diff --git a/web/package.json b/web/package.json
index e98b1fb..3d6cfe1 100644
--- a/web/package.json
+++ b/web/package.json
@@ -9,60 +9,67 @@
"lint": "next lint"
},
"dependencies": {
- "@hookform/resolvers": "^3.3.2",
- "@radix-ui/react-accordion": "^1.1.2",
- "@radix-ui/react-alert-dialog": "^1.0.5",
- "@radix-ui/react-aspect-ratio": "^1.0.3",
- "@radix-ui/react-avatar": "^1.0.4",
- "@radix-ui/react-checkbox": "^1.0.4",
- "@radix-ui/react-collapsible": "^1.0.3",
- "@radix-ui/react-context-menu": "^2.1.5",
- "@radix-ui/react-dialog": "^1.0.5",
- "@radix-ui/react-dropdown-menu": "^2.0.6",
- "@radix-ui/react-hover-card": "^1.0.7",
- "@radix-ui/react-label": "^2.0.2",
- "@radix-ui/react-menubar": "^1.0.4",
- "@radix-ui/react-navigation-menu": "^1.1.4",
- "@radix-ui/react-popover": "^1.0.7",
- "@radix-ui/react-progress": "^1.0.3",
- "@radix-ui/react-radio-group": "^1.1.3",
- "@radix-ui/react-scroll-area": "^1.0.5",
- "@radix-ui/react-select": "^2.0.0",
- "@radix-ui/react-separator": "^1.0.3",
- "@radix-ui/react-slider": "^1.1.2",
- "@radix-ui/react-slot": "^1.0.2",
- "@radix-ui/react-switch": "^1.0.3",
- "@radix-ui/react-tabs": "^1.0.4",
- "@radix-ui/react-toast": "^1.1.5",
- "@radix-ui/react-toggle": "^1.0.3",
- "@radix-ui/react-toggle-group": "^1.0.4",
- "@radix-ui/react-tooltip": "^1.0.7",
- "class-variance-authority": "^0.7.0",
- "clsx": "^2.0.0",
- "cmdk": "^0.2.0",
+ "@hookform/resolvers": "^3.9.1",
+ "@radix-ui/react-accordion": "^1.2.2",
+ "@radix-ui/react-alert-dialog": "^1.1.4",
+ "@radix-ui/react-aspect-ratio": "^1.1.1",
+ "@radix-ui/react-avatar": "^1.1.2",
+ "@radix-ui/react-checkbox": "^1.1.3",
+ "@radix-ui/react-collapsible": "^1.1.2",
+ "@radix-ui/react-context-menu": "^2.2.4",
+ "@radix-ui/react-dialog": "^1.1.4",
+ "@radix-ui/react-dropdown-menu": "^2.1.4",
+ "@radix-ui/react-hover-card": "^1.1.4",
+ "@radix-ui/react-label": "^2.1.1",
+ "@radix-ui/react-menubar": "^1.1.4",
+ "@radix-ui/react-navigation-menu": "^1.2.3",
+ "@radix-ui/react-popover": "^1.1.4",
+ "@radix-ui/react-progress": "^1.1.1",
+ "@radix-ui/react-radio-group": "^1.2.2",
+ "@radix-ui/react-scroll-area": "^1.2.2",
+ "@radix-ui/react-select": "^2.1.4",
+ "@radix-ui/react-separator": "^1.1.1",
+ "@radix-ui/react-slider": "^1.2.2",
+ "@radix-ui/react-slot": "latest",
+ "@radix-ui/react-switch": "^1.1.2",
+ "@radix-ui/react-tabs": "^1.1.2",
+ "@radix-ui/react-toast": "^1.2.4",
+ "@radix-ui/react-toggle": "^1.1.1",
+ "@radix-ui/react-toggle-group": "^1.1.1",
+ "@radix-ui/react-tooltip": "^1.1.6",
+ "autoprefixer": "^10.4.20",
+ "class-variance-authority": "^0.7.1",
+ "clsx": "^2.1.1",
+ "cmdk": "1.0.4",
"date-fns": "^2.30.0",
- "embla-carousel-react": "^8.0.0-rc14",
- "lucide-react": "^0.292.0",
+ "embla-carousel-react": "8.5.1",
+ "input-otp": "1.4.1",
+ "lucide-react": "^0.454.0",
"next": "14.2.16",
- "next-themes": "^0.2.1",
- "react": "^18.2.0",
- "react-day-picker": "^8.9.1",
- "react-dom": "^18.2.0",
- "react-hook-form": "^7.48.2",
- "tailwind-merge": "^2.0.0",
+ "next-themes": "^0.4.4",
+ "react": "^18",
+ "react-dom": "^18",
+ "react-day-picker": "^8.10.1",
+ "react-hook-form": "^7.54.1",
+ "react-resizable-panels": "^2.1.7",
+ "recharts": "2.15.0",
+ "sonner": "^1.7.1",
+ "tailwind-merge": "^2.5.5",
"tailwindcss-animate": "^1.0.7",
- "zod": "^3.22.4"
+ "vaul": "^0.9.6",
+ "zod": "^3.24.1",
+ "fs": "latest",
+ "path": "latest",
+ "remark": "latest",
+ "remark-html": "latest"
},
"devDependencies": {
- "@tailwindcss/typography": "^0.5.10",
- "@types/node": "^20.9.0",
- "@types/react": "^18.2.37",
- "@types/react-dom": "^18.2.15",
- "autoprefixer": "^10.4.16",
- "postcss": "^8.4.31",
- "tailwindcss": "^3.3.5",
- "typescript": "^5.2.2"
+ "@types/node": "^22",
+ "@types/react": "^18",
+ "@types/react-dom": "^18",
+ "postcss": "^8",
+ "tailwindcss": "^3.4.17",
+ "typescript": "^5"
}
}
-
diff --git a/web/tailwind.config.js b/web/tailwind.config.js
index 6a1e5f8..5094e5a 100644
--- a/web/tailwind.config.js
+++ b/web/tailwind.config.js
@@ -1,7 +1,11 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
darkMode: ["class"],
- content: ["./pages/**/*.{ts,tsx}", "./components/**/*.{ts,tsx}", "./app/**/*.{ts,tsx}", "./src/**/*.{ts,tsx}"],
+ content: [
+ "./app/**/*.{js,ts,jsx,tsx,mdx}",
+ "./pages/**/*.{js,ts,jsx,tsx,mdx}",
+ "./components/**/*.{js,ts,jsx,tsx,mdx}",
+ ],
theme: {
container: {
center: true,
@@ -67,6 +71,6 @@ module.exports = {
},
},
},
- plugins: [require("tailwindcss-animate"), require("@tailwindcss/typography")],
+ plugins: [require("tailwindcss-animate")],
}