Web client for TypeType https://typetype.video
  • TypeScript 97.6%
  • CSS 1.7%
  • JavaScript 0.4%
  • HTML 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Tax_Tux a0c71d6a99
Merge pull request #90 from TypeType-Video/player/preroll-overlay
feat: optional pre-roll overlay before videos
2026-11-12 21:54:09 +01:00
.github ci: run Bun 1.4.4 like the Docker image 2026-11-07 10:41:09 +01:00
.woodpecker ci: run Bun 1.4.4 like the Docker image 2026-11-07 10:41:09 +01:00
apps/web Merge pull request #90 from TypeType-Video/player/preroll-overlay 2026-11-12 21:54:09 +01:00
patches fix: stop vidstack connecting player controls it already destroyed 2026-11-07 10:29:39 +01:00
scripts feat(player): introduce UnifiedTimeSlider with commit-on-release scrubbing 2026-11-08 21:18:41 +08:00
.dockerignore chore: add .dockerignore for monorepo Docker build 2026-03-12 08:31:05 +01:00
.gitattributes fix: stop vidstack connecting player controls it already destroyed 2026-11-07 10:29:39 +01:00
.gitignore chore: drop what was left of instance-served overlay media 2026-11-12 21:42:48 +01:00
biome.json build: update web dependencies and Paraglide to 3.2 2026-11-11 09:22:03 +01:00
bun.lock build: update web dependencies and Paraglide to 3.2 2026-11-11 09:22:03 +01:00
bunfig.toml chore: run Vite tools under Bun 2026-06-04 16:32:58 +02:00
CONTRIBUTING.md docs: ask for Bun 1.4.4 2026-11-07 10:51:03 +01:00
Dockerfile fix: stop vidstack connecting player controls it already destroyed 2026-11-07 10:29:39 +01:00
knip.jsonc build: keep three.js for future 3D work 2026-11-09 15:15:05 +01:00
LICENSE fix: fill in MIT license year and author 2026-03-13 06:08:58 +01:00
LOCALIZATION.md docs: add localization workflow and progress report 2026-08-28 00:02:26 +02:00
nginx.conf fix: preserve API path rewriting in nginx regex route 2026-10-22 14:14:15 +00:00
package.json build: update web dependencies and Paraglide to 3.2 2026-11-11 09:22:03 +01:00
README.md docs: ask for Bun 1.4.4 2026-11-07 10:51:03 +01:00
THIRD_PARTY_ASSETS.md docs: credit the loading and error reactions 2026-11-12 21:02:07 +01:00

TypeType

TypeType Frontend

The React web client for TypeType.

You want to know the current position of TypeType about AI ? Go check this.

Translation status

This repository contains the browser application and its nginx container. It owns the user interface, routing, settings, account flows, library views, and integration with the TypeType API and playback package.

If you want to install or update a complete TypeType instance, use the central TypeType repository and the self-hosting documentation.

Responsibilities

  • Responsive desktop and mobile interface
  • Search, channels, watch pages, playlists, subscriptions, and history
  • Account, administration, import, and instance settings flows
  • HTTP integration with TypeType-Server
  • Playback UI around @typetype/mse, Vidstack, DASH, and HLS providers
  • Theme, accessibility, and browser behavior

Playback engine internals belong in TypeType-Player. Extraction and user data belong in TypeType-Server.

Stack

Area Technology
UI React 19 and TypeScript
Build Vite 8
Routing and server state TanStack Router and TanStack Query
Local state Zustand
Styling Tailwind CSS 4
Playback shell Vidstack, @typetype/mse, dash.js, and hls.js
Tooling Bun, Biome, Knip, and Sherif

Development

Requirements:

bun install --frozen-lockfile
cp apps/web/.env.example apps/web/.env
bun run dev

The development server starts at http://localhost:5173 by default.

Variable Purpose
VITE_API_URL API URL embedded in the frontend
VITE_DEV_PROXY_TARGET API target used by the Vite development proxy

Project structure

Path Contents
apps/web/src/routes Application routes
apps/web/src/components Shared interface and player components
apps/web/src/hooks Query and behavior hooks
apps/web/src/lib API clients, helpers, and integration code
apps/web/src/settings Settings definitions and controls
apps/web/src/stores Client-side state stores
apps/web/tests Frontend tests

Checks

bun run check
bun run test
bun run knip
bun run sherif
bun run build

Translation contributors can use Weblate without editing code. The current catalog status can also be inspected locally with bun run localization:report -- --markdown. See LOCALIZATION.md for the source catalog, Weblate sync rules, and the contributor workflow.

Read CONTRIBUTING.md before opening a pull request. Bug reports and feature requests belong in the central issue tracker.

License

TypeType Frontend is licensed under the MIT License. TypeType is not affiliated with, authorized by, or endorsed by YouTube, Google, NicoNico, BiliBili, or their affiliates.