Files
ss-tools/frontend
busya 6b05cc62c3 refactor(MaintenanceEventsTable): accessibility, types, edge cases, i18n
- Add aria-expanded, aria-label on expand button and sub-row
- Add TypeScript interfaces (MaintenanceEvent, MaintenanceDashboard)
- Add @PRE/@POST contracts to all functions
- Add @INVARIANT for expandedEventIds subset guarantee
- Add @UX_TRANSITION for state machine completeness
- Cleanup expandedEventIds on remove (prevents stale expanded rows)
- Null-safe dashboards access (event.dashboards ?? [])
- Translate ConfirmDialog titles via i18n keys
- Extract truncateId/joinTables helpers
- Add MAX_ID_DISPLAY_LENGTH constant
2026-06-18 10:46:17 +03:00
..
2026-01-22 23:18:48 +03:00

Superset Tools Frontend (SvelteKit)

This is the frontend for the Superset Tools application, built with SvelteKit in SPA mode.

Development

  1. Install dependencies:

    npm install
    
  2. Run development server:

    npm run dev
    

    The frontend will be available at http://localhost:5173. It is configured to proxy API requests to http://localhost:8000.

Production Build

  1. Build the static SPA:

    npm run build
    

    This generates a static SPA in the build/ directory.

  2. Serve with Backend: The Python backend is configured to serve the files from frontend/build/. Ensure the backend is running:

    cd ../backend
    python src/app.py
    

Architecture

  • Routing: File-based routing in src/routes/.
  • Layouts: Shared UI in src/routes/+layout.svelte.
  • Data Loading: load functions in +page.ts for efficient data fetching.
  • API Client: Centralized API logic in src/lib/api.js.
  • Styling: Tailwind CSS.