Files
ss-tools/frontend
busya f87092c4a7 feat(translate): add cache_hits counter — backend + frontend
Backend:
- TranslationRun model: add cache_hits Integer column (default 0)
- TranslationRunResponse schema: add cache_hits field
- _helpers.py/_run_list_routes.py/orchestrator_aggregator.py: include
  cache_hits in all run API responses
- _batch_proc.py: count pre_rows served from translation cache per
  batch, return cache_hits in batch result
- executor.py: accumulate cache_hits across batches, persist to run
- Alembic migration: dabc9709 — add cache_hits column to translation_runs

Frontend:
- translationRun.svelte.ts: add cacheHits to store state, WS handler,
  polling handler
- TranslationRunProgress.svelte: 5-col stats grid with purple Cache card
- TranslationRunGlobalIndicator.svelte: 5-col stats with Cache
- TranslationRunResult.svelte: 5-col detail stats with Cache card
- History page: cache_hits shown in run list row + detail panel

Visual: cache hits shown in purple alongside green/yellow/red metrics
(total/success/failed/skipped). Visible during run + in history.

Tests: backend 69/69 translate tests , frontend 698/698 tests ,
frontend build 
2026-06-02 11:59:57 +03:00
..
2026-06-01 16:34:07 +03:00
fix
2026-06-02 11:46:00 +03:00
2026-01-22 23:18:48 +03:00
fix
2026-05-26 18:15:37 +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.