A modern video platform showcasing scalable application architectures, built with React 19, TypeScript, and Tailwind CSS.
KillrVideo is a reference application that demonstrates best practices for building modern, scalable web applications. It features video sharing, user authentication, comments, and real-time interactions.
- React 19 - Modern React with latest features
- TypeScript - Type-safe development
- Vite - Fast build tool and dev server
- Tailwind CSS - Utility-first styling
- shadcn/ui - High-quality UI components (Radix primitives)
- React Query - Server state management
- React Router - Client-side routing
- Node.js (install via nvm)
- npm
VITE_BACKEND_URL: set to the URL of the backend.
Example:
export VITE_BACKEND_URL=https://localhost:8443# Clone the repository
git clone <YOUR_GIT_URL>
# Navigate to the project directory
cd killrvideo-react-frontend
# Install dependencies
npm install
# Start the development server
npm run devThe application will be available at http://localhost:8080.
npm run dev # Start dev server (proxies /api to https://localhost:8443)
npm run build # Production build
npm run build:dev # Development build (unoptimized)
npm run lint # Run ESLint
npm run preview # Preview production buildsrc/pages/- Route-level componentssrc/components/- Reusable components organized by featuresrc/components/ui/- shadcn/ui primitivessrc/hooks/- Custom React hookssrc/lib/- Utilities and API clientsrc/types/- TypeScript type definitions
The frontend connects to the KillrVideo backend API:
- Base URL:
/api/v1(proxied to backend in development) - Authentication: JWT tokens stored in localStorage
- API Client: Class-based client in
src/lib/api.ts - OpenAPI Spec:
docs/killrvideo_openapi.yaml
Please see CLAUDE.md for detailed development guidelines and conventions.
This project is provided as a reference application for educational purposes.