netx/web
oliver 312f6f2f96 Improve managed NE filters/validation and simplify the workbench UI.
Add column filters and clearer API error mapping for NE management, tighten port validation, and slim the workbench into reusable modules with cleaner styles.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-13 00:26:58 +08:00
..
public Improve frontend load performance and fix UME/login UX. 2026-08-07 22:54:42 +08:00
src Improve managed NE filters/validation and simplify the workbench UI. 2026-10-13 00:26:58 +08:00
tests Optimize topology canvas per the 2026-10-12 plan. 2026-10-12 22:11:22 +08:00
.gitignore feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
eslint.config.js Refactor web UI: feature-first structure, tokenized styles, modern blue theme. 2026-10-12 03:17:51 +08:00
index.html Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +08:00
package-lock.json Speed up WebCRT and record audited commands from the device echo. 2026-10-12 07:34:30 +08:00
package.json Speed up WebCRT and record audited commands from the device echo. 2026-10-12 07:34:30 +08:00
README.md feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
tsconfig.app.json feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
tsconfig.json feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
tsconfig.node.json feat: initialize netx ops tool repository 2026-05-03 23:43:21 +08:00
vite.config.ts Polish HeroUI chrome, topology toolbar, and session client IP. 2026-09-12 15:10:57 +08:00
WEB.md Refactor web UI: feature-first structure, tokenized styles, modern blue theme. 2026-10-12 03:17:51 +08:00

React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

React Compiler

The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see this documentation.

Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

export default defineConfig([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...

      // Remove tseslint.configs.recommended and replace with this
      tseslint.configs.recommendedTypeChecked,
      // Alternatively, use this for stricter rules
      tseslint.configs.strictTypeChecked,
      // Optionally, add this for stylistic rules
      tseslint.configs.stylisticTypeChecked,

      // Other configs...
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])

You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:

// eslint.config.js
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'

export default defineConfig([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...
      // Enable lint rules for React
      reactX.configs['recommended-typescript'],
      // Enable lint rules for React DOM
      reactDom.configs.recommended,
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])