maziggy 1bc3da3fad Fix multi-printer filament mapping ignoring nozzle on dual-nozzle printers (#624) 7 months ago
..
docs 583c374f01 Add Virtual Printer Proxy Mode for remote printing 8 months ago
mockups ccdb084f23 - Refactored printer card's AMS section for better experience 9 months ago
public 8c9c0a7994 Minor Spoolbuddy frontend improvements 7 months ago
src 1bc3da3fad Fix multi-printer filament mapping ignoring nozzle on dual-nozzle printers (#624) 7 months ago
.gitignore 09677861ba Added screenshots 10 months ago
.npmrc 22ac7e97bb Closes #426 7 months ago
README.md 09677861ba Added screenshots 10 months ago
eslint.config.js 49acd8c148 Improved frontend tests 8 months ago
index.html 711140ddf9 Added mobile PWA support 10 months ago
package-lock.json bffbac54e4 Add on-screen virtual keyboard for SpoolBuddy kiosk UI 7 months ago
package.json bffbac54e4 Add on-screen virtual keyboard for SpoolBuddy kiosk UI 7 months ago
postcss.config.js 09677861ba Added screenshots 10 months ago
tailwind.config.js 7767851975 Add SpoolBuddy tag detection modal and fix NFC reader silent failure 7 months ago
tsconfig.app.json 9ba4ef6355 Fix docker build 10 months ago
tsconfig.json 09677861ba Added screenshots 10 months ago
tsconfig.node.json 09677861ba Added screenshots 10 months ago
vite.config.ts 46f209e2ac Add SpoolBuddy AMS slot config, external slots, and dashboard redesign 7 months ago
vitest.config.ts 104b9d4a25 Fix external spool ams_mapping2 slot_id (Issue #213) 8 months ago

README.md

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...
    },
  },
])