diff --git a/.github/mergify.yml b/.github/mergify.yml index 6118e6eb1..65318a44b 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -186,13 +186,13 @@ pull_request_rules: label: add: ["scope: docs"] - - name: "label scope: ui" + - name: "label scope: studio" conditions: - - files~=^ui/ + - files~=^apps/fastvideo_studio/ - -closed actions: label: - add: ["scope: ui"] + add: ["scope: studio"] - name: "label scope: model" conditions: diff --git a/.gitignore b/.gitignore index 5c463c9b2..3b3663ec7 100644 --- a/.gitignore +++ b/.gitignore @@ -88,7 +88,7 @@ docs/distillation/examples/ dmd_t2v_output/ preprocess_output_text/ -# Next.js / Node artifacts under ui/: see ui/.gitignore +# SvelteKit / Node artifacts under apps/fastvideo_studio/: see apps/fastvideo_studio/.gitignore # Next.js / Node artifacts under apps/dreamverse/web/ apps/dreamverse/web/node_modules/ diff --git a/ui/.env.example b/apps/fastvideo_studio/.env.example similarity index 100% rename from ui/.env.example rename to apps/fastvideo_studio/.env.example diff --git a/ui/.gitignore b/apps/fastvideo_studio/.gitignore similarity index 100% rename from ui/.gitignore rename to apps/fastvideo_studio/.gitignore diff --git a/ui/.prettierrc b/apps/fastvideo_studio/.prettierrc similarity index 100% rename from ui/.prettierrc rename to apps/fastvideo_studio/.prettierrc diff --git a/ui/README.md b/apps/fastvideo_studio/README.md similarity index 90% rename from ui/README.md rename to apps/fastvideo_studio/README.md index 0626a4352..8359a4b06 100644 --- a/ui/README.md +++ b/apps/fastvideo_studio/README.md @@ -1,4 +1,4 @@ -# FastVideo UI +# FastVideo Studio A lightweight web-based UI for interacting with FastVideo. @@ -16,7 +16,7 @@ The UI currently supports: The easiest way to run the application is: ```bash -cd ui +cd apps/fastvideo_studio npm install npm run build npm run start @@ -33,10 +33,10 @@ The UI is composed of two separate components: To run each component separately, you can use the commands `npm run start:web` and `npm run start:api`. -You can also run the API server with this command from the root directory: +You can also run the API server with this command from the `apps/` directory: ```bash -python -m ui.server --output-dir /path/to/videos --log-dir /path/to/logs +python -m fastvideo_studio.server --output-dir /path/to/videos --log-dir /path/to/logs ``` Running it this way allows you to pass command line parameters. diff --git a/ui/__init__.py b/apps/fastvideo_studio/__init__.py similarity index 100% rename from ui/__init__.py rename to apps/fastvideo_studio/__init__.py diff --git a/apps/fastvideo_studio/__main__.py b/apps/fastvideo_studio/__main__.py new file mode 100644 index 000000000..dc6149af4 --- /dev/null +++ b/apps/fastvideo_studio/__main__.py @@ -0,0 +1,7 @@ +# SPDX-License-Identifier: Apache-2.0 +"""Allow ``python -m fastvideo_studio`` to start the server.""" + +from fastvideo_studio.server import main + +if __name__ == "__main__": + main() diff --git a/ui/database.py b/apps/fastvideo_studio/database.py similarity index 99% rename from ui/database.py rename to apps/fastvideo_studio/database.py index 47c7ec3e0..3cec069a8 100644 --- a/ui/database.py +++ b/apps/fastvideo_studio/database.py @@ -1,6 +1,6 @@ # SPDX-License-Identifier: Apache-2.0 """ -SQLite persistence for FastVideo UI. +SQLite persistence for FastVideo Studio. Stores jobs and default settings. Uses Python's built-in sqlite3. """ @@ -14,7 +14,7 @@ import threading from pathlib import Path from typing import Any -logger = logging.getLogger("fastvideo.ui.database") +logger = logging.getLogger("fastvideo.studio.database") # Default options schema - used for settings table defaults DEFAULT_SETTINGS: dict[str, Any] = { diff --git a/ui/eslint.config.mjs b/apps/fastvideo_studio/eslint.config.mjs similarity index 100% rename from ui/eslint.config.mjs rename to apps/fastvideo_studio/eslint.config.mjs diff --git a/ui/job_runner.py b/apps/fastvideo_studio/job_runner.py similarity index 99% rename from ui/job_runner.py rename to apps/fastvideo_studio/job_runner.py index 725730d93..50ba02505 100644 --- a/ui/job_runner.py +++ b/apps/fastvideo_studio/job_runner.py @@ -24,14 +24,14 @@ from dataclasses import dataclass, field from pathlib import Path from typing import Any from fastvideo.utils import get_mp_context -from ui.database import Database -from ui.training_config import ( +from fastvideo_studio.database import Database +from fastvideo_studio.training_config import ( build_training_args, get_training_env, get_training_module_info, ) -logger = logging.getLogger("fastvideo.ui.job_runner") +logger = logging.getLogger("fastvideo.studio.job_runner") # Regex patterns for parsing tqdm-style progress output. # Matches e.g. " 40%|████ | 20/50 " or " 20/50 " diff --git a/apps/fastvideo_studio/models/__init__.py b/apps/fastvideo_studio/models/__init__.py new file mode 100644 index 000000000..101728334 --- /dev/null +++ b/apps/fastvideo_studio/models/__init__.py @@ -0,0 +1,14 @@ +# SPDX-License-Identifier: Apache-2.0 +"""Pydantic request/response models for the API.""" + +from fastvideo_studio.models.create_job_request import CreateJobRequest +from fastvideo_studio.models.settings_update import SettingsUpdate +from fastvideo_studio.models.create_dataset_request import CreateDatasetRequest +from fastvideo_studio.models.update_caption_request import UpdateCaptionRequest + +__all__ = [ + "CreateJobRequest", + "SettingsUpdate", + "CreateDatasetRequest", + "UpdateCaptionRequest", +] diff --git a/ui/models/create_dataset_request.py b/apps/fastvideo_studio/models/create_dataset_request.py similarity index 100% rename from ui/models/create_dataset_request.py rename to apps/fastvideo_studio/models/create_dataset_request.py diff --git a/ui/models/create_job_request.py b/apps/fastvideo_studio/models/create_job_request.py similarity index 100% rename from ui/models/create_job_request.py rename to apps/fastvideo_studio/models/create_job_request.py diff --git a/ui/models/settings_update.py b/apps/fastvideo_studio/models/settings_update.py similarity index 100% rename from ui/models/settings_update.py rename to apps/fastvideo_studio/models/settings_update.py diff --git a/ui/models/update_caption_request.py b/apps/fastvideo_studio/models/update_caption_request.py similarity index 100% rename from ui/models/update_caption_request.py rename to apps/fastvideo_studio/models/update_caption_request.py diff --git a/ui/package-lock.json b/apps/fastvideo_studio/package-lock.json similarity index 99% rename from ui/package-lock.json rename to apps/fastvideo_studio/package-lock.json index 60e45f005..e8fe9b106 100644 --- a/ui/package-lock.json +++ b/apps/fastvideo_studio/package-lock.json @@ -1,11 +1,11 @@ { - "name": "fastvideo-ui", + "name": "fastvideo-studio", "version": "0.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "fastvideo-ui", + "name": "fastvideo-studio", "version": "0.1.0", "dependencies": { "@sveltejs/kit": "2.57.1", diff --git a/ui/package.json b/apps/fastvideo_studio/package.json similarity index 89% rename from ui/package.json rename to apps/fastvideo_studio/package.json index 99efd6bb9..22bed99ac 100644 --- a/ui/package.json +++ b/apps/fastvideo_studio/package.json @@ -1,5 +1,5 @@ { - "name": "fastvideo-ui", + "name": "fastvideo-studio", "version": "0.1.0", "private": true, "type": "module", @@ -8,7 +8,7 @@ "build": "vite build", "preview": "vite preview", "start": "concurrently --kill-others-on-fail \"npm:start:api\" \"npm:start:web\"", - "start:api": "cd .. && python -m ui.server", + "start:api": "cd .. && python -m fastvideo_studio.server", "start:web": "node build", "lint": "eslint ." }, diff --git a/ui/preprocess_runner.py b/apps/fastvideo_studio/preprocess_runner.py similarity index 98% rename from ui/preprocess_runner.py rename to apps/fastvideo_studio/preprocess_runner.py index 54ed77a2a..533dbd07c 100644 --- a/ui/preprocess_runner.py +++ b/apps/fastvideo_studio/preprocess_runner.py @@ -13,7 +13,7 @@ import threading from pathlib import Path from collections.abc import Callable -logger = logging.getLogger("fastvideo.ui.preprocess_runner") +logger = logging.getLogger("fastvideo.studio.preprocess_runner") def build_preprocess_args( diff --git a/ui/public/fastvideo.ico b/apps/fastvideo_studio/public/fastvideo.ico similarity index 100% rename from ui/public/fastvideo.ico rename to apps/fastvideo_studio/public/fastvideo.ico diff --git a/ui/public/logo.svg b/apps/fastvideo_studio/public/logo.svg similarity index 100% rename from ui/public/logo.svg rename to apps/fastvideo_studio/public/logo.svg diff --git a/ui/server.py b/apps/fastvideo_studio/server.py similarity index 97% rename from ui/server.py rename to apps/fastvideo_studio/server.py index 9e0422e24..6fbfdeca2 100644 --- a/ui/server.py +++ b/apps/fastvideo_studio/server.py @@ -8,8 +8,8 @@ video-generation jobs powered by the FastVideo library. This is the API-only server. Use web_server.py to serve the frontend. Usage: - python -m ui.api_server # from repo root - python ui/api_server.py --output-dir ./videos # explicit output dir + python -m fastvideo_studio.server # from the apps/ directory + python -m fastvideo_studio.server --output-dir ./videos # explicit output dir """ from __future__ import annotations @@ -31,15 +31,15 @@ from fastapi.middleware.cors import CORSMiddleware from fastapi.responses import FileResponse from fastvideo.registry import (get_registered_model_paths, get_registered_models_with_workloads) -from ui.database import Database, _get_db_path -from ui.job_runner import JobRunner, JobStatus -from ui.models import (CreateDatasetRequest, CreateJobRequest, SettingsUpdate, UpdateCaptionRequest) +from fastvideo_studio.database import Database, _get_db_path +from fastvideo_studio.job_runner import JobRunner, JobStatus +from fastvideo_studio.models import (CreateDatasetRequest, CreateJobRequest, SettingsUpdate, UpdateCaptionRequest) logging.basicConfig( level=logging.INFO, format="%(asctime)s [%(levelname)s] %(name)s: %(message)s", ) -logger = logging.getLogger("fastvideo.ui.api") +logger = logging.getLogger("fastvideo.studio.api") DEFAULT_OUTPUT_DIR = os.path.join(os.path.dirname(__file__), "..", "outputs", "ui_jobs") @@ -571,7 +571,7 @@ def _setup_signal_handlers() -> None: def create_local_env(host: str, port: int) -> None: - """Check if .env.local exists in the ui directory, and create it if not.""" + """Check if .env.local exists in the fastvideo_studio directory, and create it if not.""" ui_dir = os.path.dirname(__file__) env_local_path = os.path.join(ui_dir, ".env.local") diff --git a/ui/src/app.css b/apps/fastvideo_studio/src/app.css similarity index 100% rename from ui/src/app.css rename to apps/fastvideo_studio/src/app.css diff --git a/ui/src/app.html b/apps/fastvideo_studio/src/app.html similarity index 100% rename from ui/src/app.html rename to apps/fastvideo_studio/src/app.html diff --git a/ui/src/lib/actions/resizable.ts b/apps/fastvideo_studio/src/lib/actions/resizable.ts similarity index 100% rename from ui/src/lib/actions/resizable.ts rename to apps/fastvideo_studio/src/lib/actions/resizable.ts diff --git a/ui/src/lib/api.ts b/apps/fastvideo_studio/src/lib/api.ts similarity index 100% rename from ui/src/lib/api.ts rename to apps/fastvideo_studio/src/lib/api.ts diff --git a/ui/src/lib/captionParsing.ts b/apps/fastvideo_studio/src/lib/captionParsing.ts similarity index 100% rename from ui/src/lib/captionParsing.ts rename to apps/fastvideo_studio/src/lib/captionParsing.ts diff --git a/ui/src/lib/components/AddDatasetButton.svelte b/apps/fastvideo_studio/src/lib/components/AddDatasetButton.svelte similarity index 100% rename from ui/src/lib/components/AddDatasetButton.svelte rename to apps/fastvideo_studio/src/lib/components/AddDatasetButton.svelte diff --git a/ui/src/lib/components/CreateDatasetModal.svelte b/apps/fastvideo_studio/src/lib/components/CreateDatasetModal.svelte similarity index 100% rename from ui/src/lib/components/CreateDatasetModal.svelte rename to apps/fastvideo_studio/src/lib/components/CreateDatasetModal.svelte diff --git a/ui/src/lib/components/CreateJobButton.svelte b/apps/fastvideo_studio/src/lib/components/CreateJobButton.svelte similarity index 100% rename from ui/src/lib/components/CreateJobButton.svelte rename to apps/fastvideo_studio/src/lib/components/CreateJobButton.svelte diff --git a/ui/src/lib/components/CreateJobModal.svelte b/apps/fastvideo_studio/src/lib/components/CreateJobModal.svelte similarity index 100% rename from ui/src/lib/components/CreateJobModal.svelte rename to apps/fastvideo_studio/src/lib/components/CreateJobModal.svelte diff --git a/ui/src/lib/components/DatasetCard.svelte b/apps/fastvideo_studio/src/lib/components/DatasetCard.svelte similarity index 100% rename from ui/src/lib/components/DatasetCard.svelte rename to apps/fastvideo_studio/src/lib/components/DatasetCard.svelte diff --git a/ui/src/lib/components/DatasetSidebar.svelte b/apps/fastvideo_studio/src/lib/components/DatasetSidebar.svelte similarity index 100% rename from ui/src/lib/components/DatasetSidebar.svelte rename to apps/fastvideo_studio/src/lib/components/DatasetSidebar.svelte diff --git a/ui/src/lib/components/DownloadCaptions.svelte b/apps/fastvideo_studio/src/lib/components/DownloadCaptions.svelte similarity index 100% rename from ui/src/lib/components/DownloadCaptions.svelte rename to apps/fastvideo_studio/src/lib/components/DownloadCaptions.svelte diff --git a/ui/src/lib/components/Header.svelte b/apps/fastvideo_studio/src/lib/components/Header.svelte similarity index 100% rename from ui/src/lib/components/Header.svelte rename to apps/fastvideo_studio/src/lib/components/Header.svelte diff --git a/ui/src/lib/components/JobCard.svelte b/apps/fastvideo_studio/src/lib/components/JobCard.svelte similarity index 100% rename from ui/src/lib/components/JobCard.svelte rename to apps/fastvideo_studio/src/lib/components/JobCard.svelte diff --git a/ui/src/lib/components/JobQueue.svelte b/apps/fastvideo_studio/src/lib/components/JobQueue.svelte similarity index 100% rename from ui/src/lib/components/JobQueue.svelte rename to apps/fastvideo_studio/src/lib/components/JobQueue.svelte diff --git a/ui/src/lib/components/PrimarySidebar.svelte b/apps/fastvideo_studio/src/lib/components/PrimarySidebar.svelte similarity index 100% rename from ui/src/lib/components/PrimarySidebar.svelte rename to apps/fastvideo_studio/src/lib/components/PrimarySidebar.svelte diff --git a/ui/src/lib/components/SecondarySidebar.svelte b/apps/fastvideo_studio/src/lib/components/SecondarySidebar.svelte similarity index 100% rename from ui/src/lib/components/SecondarySidebar.svelte rename to apps/fastvideo_studio/src/lib/components/SecondarySidebar.svelte diff --git a/ui/src/lib/components/Slider.svelte b/apps/fastvideo_studio/src/lib/components/Slider.svelte similarity index 100% rename from ui/src/lib/components/Slider.svelte rename to apps/fastvideo_studio/src/lib/components/Slider.svelte diff --git a/ui/src/lib/components/TabSwitch.svelte b/apps/fastvideo_studio/src/lib/components/TabSwitch.svelte similarity index 100% rename from ui/src/lib/components/TabSwitch.svelte rename to apps/fastvideo_studio/src/lib/components/TabSwitch.svelte diff --git a/ui/src/lib/components/Toggle.svelte b/apps/fastvideo_studio/src/lib/components/Toggle.svelte similarity index 100% rename from ui/src/lib/components/Toggle.svelte rename to apps/fastvideo_studio/src/lib/components/Toggle.svelte diff --git a/ui/src/lib/components/UploadZone.svelte b/apps/fastvideo_studio/src/lib/components/UploadZone.svelte similarity index 100% rename from ui/src/lib/components/UploadZone.svelte rename to apps/fastvideo_studio/src/lib/components/UploadZone.svelte diff --git a/ui/src/lib/defaultOptions.ts b/apps/fastvideo_studio/src/lib/defaultOptions.ts similarity index 100% rename from ui/src/lib/defaultOptions.ts rename to apps/fastvideo_studio/src/lib/defaultOptions.ts diff --git a/ui/src/lib/jobConfig.ts b/apps/fastvideo_studio/src/lib/jobConfig.ts similarity index 100% rename from ui/src/lib/jobConfig.ts rename to apps/fastvideo_studio/src/lib/jobConfig.ts diff --git a/ui/src/lib/stores/activeDataset.ts b/apps/fastvideo_studio/src/lib/stores/activeDataset.ts similarity index 100% rename from ui/src/lib/stores/activeDataset.ts rename to apps/fastvideo_studio/src/lib/stores/activeDataset.ts diff --git a/ui/src/lib/stores/activeJob.ts b/apps/fastvideo_studio/src/lib/stores/activeJob.ts similarity index 100% rename from ui/src/lib/stores/activeJob.ts rename to apps/fastvideo_studio/src/lib/stores/activeJob.ts diff --git a/ui/src/lib/stores/createDatasetModalOpen.ts b/apps/fastvideo_studio/src/lib/stores/createDatasetModalOpen.ts similarity index 100% rename from ui/src/lib/stores/createDatasetModalOpen.ts rename to apps/fastvideo_studio/src/lib/stores/createDatasetModalOpen.ts diff --git a/ui/src/lib/stores/defaultOptions.ts b/apps/fastvideo_studio/src/lib/stores/defaultOptions.ts similarity index 100% rename from ui/src/lib/stores/defaultOptions.ts rename to apps/fastvideo_studio/src/lib/stores/defaultOptions.ts diff --git a/ui/src/lib/stores/headerActions.ts b/apps/fastvideo_studio/src/lib/stores/headerActions.ts similarity index 100% rename from ui/src/lib/stores/headerActions.ts rename to apps/fastvideo_studio/src/lib/stores/headerActions.ts diff --git a/ui/src/lib/stores/jobsRefresh.ts b/apps/fastvideo_studio/src/lib/stores/jobsRefresh.ts similarity index 100% rename from ui/src/lib/stores/jobsRefresh.ts rename to apps/fastvideo_studio/src/lib/stores/jobsRefresh.ts diff --git a/ui/src/lib/types.ts b/apps/fastvideo_studio/src/lib/types.ts similarity index 100% rename from ui/src/lib/types.ts rename to apps/fastvideo_studio/src/lib/types.ts diff --git a/ui/src/routes/+layout.svelte b/apps/fastvideo_studio/src/routes/+layout.svelte similarity index 100% rename from ui/src/routes/+layout.svelte rename to apps/fastvideo_studio/src/routes/+layout.svelte diff --git a/ui/src/routes/+layout.ts b/apps/fastvideo_studio/src/routes/+layout.ts similarity index 100% rename from ui/src/routes/+layout.ts rename to apps/fastvideo_studio/src/routes/+layout.ts diff --git a/ui/src/routes/+page.svelte b/apps/fastvideo_studio/src/routes/+page.svelte similarity index 100% rename from ui/src/routes/+page.svelte rename to apps/fastvideo_studio/src/routes/+page.svelte diff --git a/ui/src/routes/datasets/+page.svelte b/apps/fastvideo_studio/src/routes/datasets/+page.svelte similarity index 100% rename from ui/src/routes/datasets/+page.svelte rename to apps/fastvideo_studio/src/routes/datasets/+page.svelte diff --git a/ui/src/routes/distillation/+page.svelte b/apps/fastvideo_studio/src/routes/distillation/+page.svelte similarity index 100% rename from ui/src/routes/distillation/+page.svelte rename to apps/fastvideo_studio/src/routes/distillation/+page.svelte diff --git a/ui/src/routes/finetuning/+page.svelte b/apps/fastvideo_studio/src/routes/finetuning/+page.svelte similarity index 100% rename from ui/src/routes/finetuning/+page.svelte rename to apps/fastvideo_studio/src/routes/finetuning/+page.svelte diff --git a/ui/src/routes/gallery/+page.svelte b/apps/fastvideo_studio/src/routes/gallery/+page.svelte similarity index 100% rename from ui/src/routes/gallery/+page.svelte rename to apps/fastvideo_studio/src/routes/gallery/+page.svelte diff --git a/ui/src/routes/inference/+page.svelte b/apps/fastvideo_studio/src/routes/inference/+page.svelte similarity index 100% rename from ui/src/routes/inference/+page.svelte rename to apps/fastvideo_studio/src/routes/inference/+page.svelte diff --git a/ui/src/routes/lora/+page.svelte b/apps/fastvideo_studio/src/routes/lora/+page.svelte similarity index 100% rename from ui/src/routes/lora/+page.svelte rename to apps/fastvideo_studio/src/routes/lora/+page.svelte diff --git a/ui/src/routes/settings/+page.svelte b/apps/fastvideo_studio/src/routes/settings/+page.svelte similarity index 100% rename from ui/src/routes/settings/+page.svelte rename to apps/fastvideo_studio/src/routes/settings/+page.svelte diff --git a/ui/static/fastvideo.ico b/apps/fastvideo_studio/static/fastvideo.ico similarity index 100% rename from ui/static/fastvideo.ico rename to apps/fastvideo_studio/static/fastvideo.ico diff --git a/ui/static/logo.svg b/apps/fastvideo_studio/static/logo.svg similarity index 100% rename from ui/static/logo.svg rename to apps/fastvideo_studio/static/logo.svg diff --git a/ui/svelte.config.js b/apps/fastvideo_studio/svelte.config.js similarity index 100% rename from ui/svelte.config.js rename to apps/fastvideo_studio/svelte.config.js diff --git a/ui/training_config.py b/apps/fastvideo_studio/training_config.py similarity index 100% rename from ui/training_config.py rename to apps/fastvideo_studio/training_config.py diff --git a/ui/tsconfig.json b/apps/fastvideo_studio/tsconfig.json similarity index 100% rename from ui/tsconfig.json rename to apps/fastvideo_studio/tsconfig.json diff --git a/ui/vite.config.ts b/apps/fastvideo_studio/vite.config.ts similarity index 100% rename from ui/vite.config.ts rename to apps/fastvideo_studio/vite.config.ts diff --git a/performance_dashboard/README.md b/apps/performance_dashboard/README.md similarity index 100% rename from performance_dashboard/README.md rename to apps/performance_dashboard/README.md diff --git a/performance_dashboard/frontend/.gitignore b/apps/performance_dashboard/frontend/.gitignore similarity index 100% rename from performance_dashboard/frontend/.gitignore rename to apps/performance_dashboard/frontend/.gitignore diff --git a/performance_dashboard/frontend/index.html b/apps/performance_dashboard/frontend/index.html similarity index 100% rename from performance_dashboard/frontend/index.html rename to apps/performance_dashboard/frontend/index.html diff --git a/performance_dashboard/frontend/package-lock.json b/apps/performance_dashboard/frontend/package-lock.json similarity index 100% rename from performance_dashboard/frontend/package-lock.json rename to apps/performance_dashboard/frontend/package-lock.json diff --git a/performance_dashboard/frontend/package.json b/apps/performance_dashboard/frontend/package.json similarity index 100% rename from performance_dashboard/frontend/package.json rename to apps/performance_dashboard/frontend/package.json diff --git a/performance_dashboard/frontend/scripts/build.mjs b/apps/performance_dashboard/frontend/scripts/build.mjs similarity index 100% rename from performance_dashboard/frontend/scripts/build.mjs rename to apps/performance_dashboard/frontend/scripts/build.mjs diff --git a/performance_dashboard/frontend/src/App.tsx b/apps/performance_dashboard/frontend/src/App.tsx similarity index 100% rename from performance_dashboard/frontend/src/App.tsx rename to apps/performance_dashboard/frontend/src/App.tsx diff --git a/performance_dashboard/frontend/src/api.ts b/apps/performance_dashboard/frontend/src/api.ts similarity index 100% rename from performance_dashboard/frontend/src/api.ts rename to apps/performance_dashboard/frontend/src/api.ts diff --git a/performance_dashboard/frontend/src/main.tsx b/apps/performance_dashboard/frontend/src/main.tsx similarity index 100% rename from performance_dashboard/frontend/src/main.tsx rename to apps/performance_dashboard/frontend/src/main.tsx diff --git a/performance_dashboard/frontend/src/styles.css b/apps/performance_dashboard/frontend/src/styles.css similarity index 100% rename from performance_dashboard/frontend/src/styles.css rename to apps/performance_dashboard/frontend/src/styles.css diff --git a/performance_dashboard/frontend/tsconfig.json b/apps/performance_dashboard/frontend/tsconfig.json similarity index 100% rename from performance_dashboard/frontend/tsconfig.json rename to apps/performance_dashboard/frontend/tsconfig.json diff --git a/performance_dashboard/frontend/vite.config.ts b/apps/performance_dashboard/frontend/vite.config.ts similarity index 100% rename from performance_dashboard/frontend/vite.config.ts rename to apps/performance_dashboard/frontend/vite.config.ts diff --git a/docs/contributing/ci_architecture.md b/docs/contributing/ci_architecture.md index 82ca3057f..3d6761c1c 100644 --- a/docs/contributing/ci_architecture.md +++ b/docs/contributing/ci_architecture.md @@ -210,7 +210,7 @@ Scope labels are inferred from changed files. | `scope: infra` | `.github/`, `.buildkite/`, `fastvideo/tests/`, `docker/` | | `scope: distributed` | `fastvideo/distributed/` | | `scope: docs` | `docs/` | -| `scope: ui` | `ui/` | +| `scope: studio` | `apps/fastvideo_studio/` | | `scope: model` | `fastvideo/models/`, `fastvideo/layers/`, `fastvideo/configs/models/` | Process labels: diff --git a/pyproject.toml b/pyproject.toml index 4aba0d350..feb502cdb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -220,7 +220,7 @@ follow_imports = "silent" # ``*/_vendored/*`` matches upstream-provenance files vendored under any # ``_vendored/`` subdir (project-wide convention; mirrors the # ``_``-prefixed auto-discovery skip). -skip = "./data,./wandb,ui/package-lock.json,performance_dashboard/frontend/package-lock.json,*/_vendored/*" +skip = "./data,./wandb,apps/fastvideo_studio/package-lock.json,apps/performance_dashboard/frontend/package-lock.json,*/_vendored/*" # "tread" matches daVinci-MagiHuman's acronym "TReAD" (Token Routing and # Early Drop). codespell lowercases ignore-words entries, so the single # lowercase form silences all case variants. diff --git a/ui/__main__.py b/ui/__main__.py deleted file mode 100644 index e4163b7cf..000000000 --- a/ui/__main__.py +++ /dev/null @@ -1,7 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 -"""Allow ``python -m ui`` to start the server.""" - -from ui.server import main - -if __name__ == "__main__": - main() diff --git a/ui/models/__init__.py b/ui/models/__init__.py deleted file mode 100644 index ee985c4bb..000000000 --- a/ui/models/__init__.py +++ /dev/null @@ -1,14 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 -"""Pydantic request/response models for the API.""" - -from ui.models.create_job_request import CreateJobRequest -from ui.models.settings_update import SettingsUpdate -from ui.models.create_dataset_request import CreateDatasetRequest -from ui.models.update_caption_request import UpdateCaptionRequest - -__all__ = [ - "CreateJobRequest", - "SettingsUpdate", - "CreateDatasetRequest", - "UpdateCaptionRequest", -]