[PR #5498] [MERGED] Remove npm legacy errors, created single source of truth for ESlint. updated analytics url. updated script background #5567

Closed
opened 2026-02-26 14:34:33 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/community-scripts/ProxmoxVE/pull/5498
Author: @BramSuurdje
Created: 6/26/2025
Status: Merged
Merged: 6/27/2025
Merged by: @BramSuurdje

Base: mainHead: front-end-tweaks


📝 Commits (10+)

  • 559dcb6 Update ScriptAccordion and ScriptItem components for improved styling
  • 61df9f3 Add README.md for Proxmox VE Helper-Scripts Frontend
  • 4383c29 Remove testing dependencies and related test files from the frontend project
  • 395a421 Update analytics URL in siteConfig to point to community-scripts.org
  • fa54f85 Refactor ESLint configuration to have one source of truth and run "npm lint" to apply new changes
  • ec66071 Update lint script in package.json to remove npm
  • a8c0060 Add 'next' option to ESLint configuration for improved compatibility
  • 80938d0 Update package dependencies and versions in package.json and package-lock.json
  • 4ee0c65 Refactor theme provider import and enhance calendar component for dynamic icon rendering
  • 1084207 rename sidebar, alerts and buttons

📊 Changes

91 files changed (+8150 additions, -4144 deletions)

View changed files

📝 .github/workflows/frontend-cicd.yml (+0 -3)
frontend/.eslintrc.json (+0 -5)
frontend/.vscode/settings.json (+51 -0)
frontend/README.md (+281 -0)
frontend/eslint.config.mjs (+41 -0)
📝 frontend/package-lock.json (+5937 -2655)
📝 frontend/package.json (+16 -14)
frontend/src/__tests__/app/page.test.tsx (+0 -11)
frontend/src/__tests__/public/validate-json.test.ts (+0 -56)
frontend/src/__tests__/setupTests.ts (+0 -4)
📝 frontend/src/app/api/categories/route.ts (+16 -14)
📝 frontend/src/app/api/versions/route.ts (+11 -12)
📝 frontend/src/app/category-view/page.tsx (+191 -166)
📝 frontend/src/app/data/page.tsx (+102 -58)
frontend/src/app/json-editor/_components/Note.tsx (+0 -150)
📝 frontend/src/app/json-editor/_components/categories.tsx (+28 -20)
📝 frontend/src/app/json-editor/_components/install-method.tsx (+39 -32)
frontend/src/app/json-editor/_components/note.tsx (+159 -0)
📝 frontend/src/app/json-editor/_schemas/schemas.ts (+2 -2)
📝 frontend/src/app/json-editor/page.tsx (+60 -42)

...and 71 more files

📄 Description

✍️ Description

Caution

ONLY MERGE WHEN analytics.community-scripts.org DOMAIN WORKS!

This pull request introduces significant updates to the frontend codebase, focusing on configuration improvements, dependency updates, and code cleanup. The changes aim to enhance maintainability, streamline development workflows, and improve code quality.

Configuration Updates:

  • frontend/.eslintrc.json: Removed the legacy ESLint configuration in favor of a new setup using @antfu/eslint-config.
  • frontend/.vscode/settings.json: Added detailed VS Code settings to enforce ESLint-based formatting and validation across supported languages while silencing stylistic rules in the IDE.
  • frontend/eslint.config.mjs: Introduced a new ESLint configuration using @antfu/eslint-config with customized rules for TypeScript, stylistic preferences, and import sorting.

Dependency Updates:

  • frontend/package.json: Upgraded multiple dependencies, including next-themes and react-day-picker, while adding new ESLint plugins such as eslint-plugin-format and removing Vitest-related dependencies. [1] [2] [3]

Code Cleanup:

  • frontend/src/__tests__: Removed outdated tests and mock setup files, including page.test.tsx, validate-json.test.ts, and setupTests.ts. [1] [2] [3]
  • frontend/src/app/api/categories/route.ts and frontend/src/app/api/versions/route.ts: Refactored functions to use async function syntax, replaced fs and path imports with node: prefixed modules, and improved error handling formatting. [1] [2] [3] [4] [5]

Documentation:

  • frontend/README.md: Added a comprehensive README detailing the project's features, tech stack, development workflow, and contribution guidelines.

Link: #

Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/community-scripts/ProxmoxVE/pull/5498 **Author:** [@BramSuurdje](https://github.com/BramSuurdje) **Created:** 6/26/2025 **Status:** ✅ Merged **Merged:** 6/27/2025 **Merged by:** [@BramSuurdje](https://github.com/BramSuurdje) **Base:** `main` ← **Head:** `front-end-tweaks` --- ### 📝 Commits (10+) - [`559dcb6`](https://github.com/community-scripts/ProxmoxVE/commit/559dcb6d105862070df7ad283e28b497f5bfee4b) Update ScriptAccordion and ScriptItem components for improved styling - [`61df9f3`](https://github.com/community-scripts/ProxmoxVE/commit/61df9f3721773dafedf986e29a0fa0fcc0dcd584) Add README.md for Proxmox VE Helper-Scripts Frontend - [`4383c29`](https://github.com/community-scripts/ProxmoxVE/commit/4383c2919a269c560045ae55e1d5ad479770cdb7) Remove testing dependencies and related test files from the frontend project - [`395a421`](https://github.com/community-scripts/ProxmoxVE/commit/395a42114023dd6db84f4844ef2f6a24d0625707) Update analytics URL in siteConfig to point to community-scripts.org - [`fa54f85`](https://github.com/community-scripts/ProxmoxVE/commit/fa54f85009789afda5a1d206aeccb0141c81f35f) Refactor ESLint configuration to have one source of truth and run "npm lint" to apply new changes - [`ec66071`](https://github.com/community-scripts/ProxmoxVE/commit/ec66071e4530c328669aaefd73253be9e3a24e76) Update lint script in package.json to remove npm - [`a8c0060`](https://github.com/community-scripts/ProxmoxVE/commit/a8c0060e1b418489c7a2ae8fb6b5820c2ebe6bba) Add 'next' option to ESLint configuration for improved compatibility - [`80938d0`](https://github.com/community-scripts/ProxmoxVE/commit/80938d0e6d09ef7e4cc5c3d0733efba84ce295e1) Update package dependencies and versions in package.json and package-lock.json - [`4ee0c65`](https://github.com/community-scripts/ProxmoxVE/commit/4ee0c650533ac0d14830191f906a8877ffc1fa5a) Refactor theme provider import and enhance calendar component for dynamic icon rendering - [`1084207`](https://github.com/community-scripts/ProxmoxVE/commit/1084207db8f71b5fb9b7bfc793fb46967425630e) rename sidebar, alerts and buttons ### 📊 Changes **91 files changed** (+8150 additions, -4144 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/frontend-cicd.yml` (+0 -3) ➖ `frontend/.eslintrc.json` (+0 -5) ➕ `frontend/.vscode/settings.json` (+51 -0) ➕ `frontend/README.md` (+281 -0) ➕ `frontend/eslint.config.mjs` (+41 -0) 📝 `frontend/package-lock.json` (+5937 -2655) 📝 `frontend/package.json` (+16 -14) ➖ `frontend/src/__tests__/app/page.test.tsx` (+0 -11) ➖ `frontend/src/__tests__/public/validate-json.test.ts` (+0 -56) ➖ `frontend/src/__tests__/setupTests.ts` (+0 -4) 📝 `frontend/src/app/api/categories/route.ts` (+16 -14) 📝 `frontend/src/app/api/versions/route.ts` (+11 -12) 📝 `frontend/src/app/category-view/page.tsx` (+191 -166) 📝 `frontend/src/app/data/page.tsx` (+102 -58) ➖ `frontend/src/app/json-editor/_components/Note.tsx` (+0 -150) 📝 `frontend/src/app/json-editor/_components/categories.tsx` (+28 -20) 📝 `frontend/src/app/json-editor/_components/install-method.tsx` (+39 -32) ➕ `frontend/src/app/json-editor/_components/note.tsx` (+159 -0) 📝 `frontend/src/app/json-editor/_schemas/schemas.ts` (+2 -2) 📝 `frontend/src/app/json-editor/page.tsx` (+60 -42) _...and 71 more files_ </details> ### 📄 Description <!--🛑 New scripts must be submitted to [ProxmoxVED](https://github.com/community-scripts/ProxmoxVED) for testing. PRs without prior testing will be closed. --> ## ✍️ Description > [!CAUTION] > ONLY MERGE WHEN analytics.community-scripts.org DOMAIN WORKS! This pull request introduces significant updates to the frontend codebase, focusing on configuration improvements, dependency updates, and code cleanup. The changes aim to enhance maintainability, streamline development workflows, and improve code quality. ### Configuration Updates: * [`frontend/.eslintrc.json`](diffhunk://#diff-1ae7beaf1c104b27855f8dcc7060b74469bfa4f7c50e4a680cc0f36fc823b5b3L1-L5): Removed the legacy ESLint configuration in favor of a new setup using `@antfu/eslint-config`. * [`frontend/.vscode/settings.json`](diffhunk://#diff-db52d6d894f5effbce127be224e304d8fb5995bfd2cdaffa966fc230ded19424R1-R51): Added detailed VS Code settings to enforce ESLint-based formatting and validation across supported languages while silencing stylistic rules in the IDE. * [`frontend/eslint.config.mjs`](diffhunk://#diff-2a625eda62088edbc22bb8f5e69c1f6ad90b96c7171db6664dab318e71d4183fR1-R41): Introduced a new ESLint configuration using `@antfu/eslint-config` with customized rules for TypeScript, stylistic preferences, and import sorting. ### Dependency Updates: * [`frontend/package.json`](diffhunk://#diff-da6498268e99511d9ba0df3c13e439d10556a812881c9d03955b2ef7c6c1c655L48-R52): Upgraded multiple dependencies, including `next-themes` and `react-day-picker`, while adding new ESLint plugins such as `eslint-plugin-format` and removing Vitest-related dependencies. [[1]](diffhunk://#diff-da6498268e99511d9ba0df3c13e439d10556a812881c9d03955b2ef7c6c1c655L48-R52) [[2]](diffhunk://#diff-da6498268e99511d9ba0df3c13e439d10556a812881c9d03955b2ef7c6c1c655R63-L69) [[3]](diffhunk://#diff-da6498268e99511d9ba0df3c13e439d10556a812881c9d03955b2ef7c6c1c655R75-R77) ### Code Cleanup: * [`frontend/src/__tests__`](diffhunk://#diff-d1ff0eff0103626f96e2c70e0f47280dcd1147a34ae8bd6e487cf5365e1478fbL1-L11): Removed outdated tests and mock setup files, including `page.test.tsx`, `validate-json.test.ts`, and `setupTests.ts`. [[1]](diffhunk://#diff-d1ff0eff0103626f96e2c70e0f47280dcd1147a34ae8bd6e487cf5365e1478fbL1-L11) [[2]](diffhunk://#diff-8f11d13796269a20c00cc7d3b0709574de6866ff0f1a89f4844291d1ad13f681L1-L56) [[3]](diffhunk://#diff-a48f59ac8245e47b33eef041ece3264907c314a610a54de068f3579465535c98L1-L4) * `frontend/src/app/api/categories/route.ts` and `frontend/src/app/api/versions/route.ts`: Refactored functions to use `async function` syntax, replaced `fs` and `path` imports with `node:` prefixed modules, and improved error handling formatting. [[1]](diffhunk://#diff-a3558cc12e8fa82e9cf05d534c9a12bf6c02dc98a86d8f1047aeb7d0b12591deL1-R5) [[2]](diffhunk://#diff-a3558cc12e8fa82e9cf05d534c9a12bf6c02dc98a86d8f1047aeb7d0b12591deL13-R28) [[3]](diffhunk://#diff-a3558cc12e8fa82e9cf05d534c9a12bf6c02dc98a86d8f1047aeb7d0b12591deL37-R38) [[4]](diffhunk://#diff-a3558cc12e8fa82e9cf05d534c9a12bf6c02dc98a86d8f1047aeb7d0b12591deL46-R56) [[5]](diffhunk://#diff-d603ea83f6809363a40a3f81edddb103d8edcf3e6853d4807e090225c5e5211eL1-R39) ### Documentation: * [`frontend/README.md`](diffhunk://#diff-35aa98d245b201cfc92c74313abcf8fa0f6069fc750f05e7a755665360a0e543R1-R281): Added a comprehensive README detailing the project's features, tech stack, development workflow, and contribution guidelines. ## 🔗 Related PR / Issue Link: # ## ✅ Prerequisites (**X** in brackets) - [x] **Self-review completed** – Code follows project standards. - [x] **Tested thoroughly** – Changes work as expected. - [x] **No security risks** – No hardcoded secrets, unnecessary privilege escalations, or permission issues. --- ## 🛠️ Type of Change (**X** in brackets) - [x] 🐞 **Bug fix** – Resolves an issue without breaking functionality. - [x] ✨ **New feature** – Adds new, non-breaking functionality. - [ ] 💥 **Breaking change** – Alters existing functionality in a way that may require updates. - [ ] 🆕 **New script** – A fully functional and tested script or script set. - [x] 🌍 **Website update** – Changes to website-related JSON files or metadata. - [x] 🔧 **Refactoring / Code Cleanup** – Improves readability or maintainability without changing functionality. - [x] 📝 **Documentation update** – Changes to `README`, `AppName.md`, `CONTRIBUTING.md`, or other docs. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-26 14:34:33 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ProxmoxVE#5567
No description provided.