Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
fddb79d
refactor: streamline asset service methods by integrating reverse req…
chenyme Feb 9, 2026
d3a1b09
refactor: integrate reverse request handlers for image and video serv…
chenyme Feb 9, 2026
d947ef6
refactor: simplify usage service by removing model_name parameter and…
chenyme Feb 9, 2026
370edb5
refactor: integrate reverse request handlers for NSFW
chenyme Feb 10, 2026
06df48b
refactor: integrate reverse request handlers for NSFW
chenyme Feb 10, 2026
413493d
refactor: integrate reverse request handlers for image and voice serv…
chenyme Feb 10, 2026
4573a19
fix: response handling in LivekitTokenReverse
chenyme Feb 10, 2026
06357ad
refactor: remove gRPC-Web protocol implementation and integrate WebSo…
chenyme Feb 10, 2026
a864751
Merge remote-tracking branch 'origin/main' into reactor_reverse
chenyme Feb 11, 2026
90fc016
merge: remove unused header, retry, and Statsig utility files
chenyme Feb 11, 2026
9967bdd
refactor: optimize base64 validation and enhance header logging
chenyme Feb 11, 2026
eb00bbd
chore: remove unused gRPC-Web protocol files
chenyme Feb 11, 2026
716e274
refactor: update GROK services and remove unused components
chenyme Feb 11, 2026
432acf4
refactor: replace DownloadService with CacheService in admin API and …
chenyme Feb 12, 2026
0d0e793
feat: enhance asset management configuration and services
chenyme Feb 13, 2026
314102d
feat: add NSFW configuration and refactor related services for improv…
chenyme Feb 13, 2026
6228788
refactor: consolidate usage configuration and update related services…
chenyme Feb 13, 2026
c62faf1
refactor: update import paths for ModelService and remove unused mode…
chenyme Feb 13, 2026
e5df9ca
refactor: reorganize batch processing utilities and update import pat…
chenyme Feb 13, 2026
6257b68
refactor: remove unused files and streamline batch processing configu…
chenyme Feb 13, 2026
d04bc4e
refactor: streamline chat and video processing services, enhance vali…
chenyme Feb 13, 2026
7f0db52
refactor: enhance configuration management by adding public API key s…
chenyme Feb 14, 2026
928faab
refactor: update configuration settings, enhance public API integrati…
chenyme Feb 15, 2026
7b09328
docs: update README and documentation to reflect new features, includ…
chenyme Feb 15, 2026
2611aad
chore: update version to 0.3.0, enhance configuration migration logic…
chenyme Feb 15, 2026
8c27516
chore: update version to 0.3.0 across multiple files, including CSS a…
chenyme Feb 15, 2026
b62a454
docs: update README files to include support for text-to-video and im…
chenyme Feb 15, 2026
01fd280
docs: update README files to reflect changes in model names and image…
chenyme Feb 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion app/__init__.py

This file was deleted.

13 changes: 13 additions & 0 deletions app/api/pages/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
"""UI pages router."""

from fastapi import APIRouter

from app.api.pages.admin import router as admin_router
from app.api.pages.public import router as public_router

router = APIRouter()

router.include_router(public_router)
router.include_router(admin_router)

__all__ = ["router"]
32 changes: 32 additions & 0 deletions app/api/pages/admin.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
from pathlib import Path

from fastapi import APIRouter
from fastapi.responses import FileResponse, RedirectResponse

router = APIRouter()
STATIC_DIR = Path(__file__).resolve().parents[2] / "static"


@router.get("/admin", include_in_schema=False)
async def admin_root():
return RedirectResponse(url="/admin/login")


@router.get("/admin/login", include_in_schema=False)
async def admin_login():
return FileResponse(STATIC_DIR / "admin/pages/login.html")


@router.get("/admin/config", include_in_schema=False)
async def admin_config():
return FileResponse(STATIC_DIR / "admin/pages/config.html")


@router.get("/admin/cache", include_in_schema=False)
async def admin_cache():
return FileResponse(STATIC_DIR / "admin/pages/cache.html")


@router.get("/admin/token", include_in_schema=False)
async def admin_token():
return FileResponse(STATIC_DIR / "admin/pages/token.html")
44 changes: 44 additions & 0 deletions app/api/pages/public.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
from pathlib import Path

from fastapi import APIRouter, HTTPException
from fastapi.responses import FileResponse, RedirectResponse

from app.core.auth import is_public_enabled

router = APIRouter()
STATIC_DIR = Path(__file__).resolve().parents[2] / "static"


@router.get("/", include_in_schema=False)
async def root():
if is_public_enabled():
return RedirectResponse(url="/login")
return RedirectResponse(url="/admin/login")


@router.get("/login", include_in_schema=False)
async def public_login():
if not is_public_enabled():
raise HTTPException(status_code=404, detail="Not Found")
return FileResponse(STATIC_DIR / "public/pages/login.html")


@router.get("/imagine", include_in_schema=False)
async def public_imagine():
if not is_public_enabled():
raise HTTPException(status_code=404, detail="Not Found")
return FileResponse(STATIC_DIR / "public/pages/imagine.html")


@router.get("/voice", include_in_schema=False)
async def public_voice():
if not is_public_enabled():
raise HTTPException(status_code=404, detail="Not Found")
return FileResponse(STATIC_DIR / "public/pages/voice.html")


@router.get("/video", include_in_schema=False)
async def public_video():
if not is_public_enabled():
raise HTTPException(status_code=404, detail="Not Found")
return FileResponse(STATIC_DIR / "public/pages/video.html")
Loading
Loading