Skip to content

renatoxm/vod-next

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vod.io Next.js video on demand App

TypeScript Next JS Redis Storybook Vercel Upstash Sentry

Video on demand platform created in Next.js

Preview

Preview

Features

  • Next.js framework
  • Typescript
  • Redis
  • React Speech Recognition
  • Github workflows
  • Mobx store
  • Sentry

Development

To start the project locally, run:

pnpm dev

Documentation

Requirements

  • Node.js >= 12.22.0
  • pnpm 7

Directory Structure

  • .github — GitHub configuration including the CI workflow.
  • .husky — Husky configuration and hooks.
  • public — Static assets such as robots.txt, images, and favicon.
  • src — Application source code, including pages, components, styles.

Scripts

  • pnpm dev — Starts the application in development mode at http://localhost:3000.
  • pnpm build — Creates an optimized production build of your application.
  • pnpm start — Starts the application in production mode.
  • pnpm type-check — Validate code using TypeScript compiler.
  • pnpm lint — Runs ESLint for all files in the src directory.
  • pnpm format — Runs Prettier for all files in the src directory.

Path Mapping

TypeScript are pre-configured with custom path mappings. To import components or files, use the @ prefix.

import { Button } from '@/components/Button';
// To import images or other files from the public folder
import avatar from '@/public/avatar.png';

Switch to Yarn/npm

This starter uses pnpm by default, but this choice is yours. If you'd like to switch to Yarn/npm, delete the pnpm-lock.yaml file, install the dependencies with Yarn/npm, change the CI workflow, and Husky Git hooks to use Yarn/npm commands.

Open http://localhost:3000 with your browser to see the result.

License & disclaimer

This project is licensed under the MIT license. For more information, see the LICENSE file.

It was created for feature presentation and case study only, it is not intended for commercial use.

YouTube is a trademark of GOOGLE Inc.

All images and videos displayed were pulled from YouTube's API and Pexels respecting their licenses.