Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/wolfgunblood/frontend-test

Fullstack video application
https://github.com/wolfgunblood/frontend-test

t3-stack

Last synced: 2 months ago
JSON representation

Fullstack video application

Awesome Lists containing this project

README

        


Vidpod


๐Ÿ”ฅ Build using T3 Stack



Vidpod

# VidPod

Vidpod is a full stack web application that allows video creators,podcasters and content creators to analyze and place ads dynamically.
This app is build using T3 stack.


## ๐Ÿ”ด Demo

๐Ÿงช [Live Demo](https://frontend-test-coral.vercel.app/) available. Click "Live Demo" to open it.

## Showcase ๐ŸŽฌ

You can see a GIF of my application below.Preview the main functionality of the app.


![](https://github.com/wolfgunblood/frontend-test/blob/main/public/videoedit.gif?raw=true)

## Table of Contents

- [Installation](#installation)
- [Usage](#usage)
- [Features](#features)
- [Design Patterns](#design-patterns)
- [Technologies Used](#technologies-used)
- [Contact Information](#contact-information)
- [Resources](#resources)

## Installation

1. **Clone the repository:**
```bash
git clone https://github.com/wolfgunblood/frontend-test
```
1. **Navigate to the project directory:**
```bash
cd frontend-test
```
1. **Install dependencies:**
```bash
npm install
```

## Usage

**Run the development server:**

```bash
npm run dev
```

## Features

**Homepage** - Displays the dashboard for editing and adding of ads.

**Video Player** - An awesome video player with play/pause,skip,fast forward and rewind functionality.

**Custom Video Slider** - Built a custom video silder using the design which has zoom and drag functionality.

**Dynamic ads insertion** - One can add ads on the desired time.

**Dynamic ads edit** - After ads placement ads can be edited through drag and drop or just through a edit form.

**Dynamic ads deletion** - One can delete ads without any hassle.

**Undo and Redo** - One can undo and redo without any hassle.

**Server-side Rendering** - This site leverages NextJS server side rendering for faster load times and greater user experience.

**Custom Animations** - Custom animations are featured throughout the application.

**ShadCN components** - Highly customisable pre built components are featured throught the app.

**Simulated Database Response** - I have intentional made the API fetch the data slower to simulate a database and to show user feedback as well as showcasing loading and fetching states.

## Design Patterns


Banner Image for Design pattern

**Maintainability** - I have tried to keep components modular and scalable and dynamic, with an emphasis on reusability and readability.

**Server fetching and formatting** - I am handling fetching and formatting of data on the backend, allowing for tsx components to render data without unnecessary logic or formatting on the front end. I have achieved this by creating dynamic helper functions that process and reformat the data.

**Dynamic fetch function** - I have created two highly flexible server functions to handle all the data fetching necessary for the application.

**Type Safety** - The use of types and interfaces is constant throughout the app, without a single use of the word 'any' to override the type check.

**File and folder structure** - The app is organised to seperate components based on their role, as well as separating types, utils, server functions and constants.

**Saving and committing work often** - I regularly made commits and pull requests to github using a total of 36 pull requests with clear commit messages. This keeps the project organised and allows me to work on tasks without altering the main codebase.

## Technologies Used

This tool is built using these technologies:

- โ—ผ๏ธ [Next.js](https://nextjs.org)
- โš›๏ธ React 18
- ๐Ÿ”ฐ TypeScript
- ๐Ÿ’  [Tailwind CSS](https://tailwindcss.com)
- ๐Ÿ—‚ [Prisma](https://prisma.io)
- ๐Ÿ”ฅ [NextAuth.js](https://next-auth.js.org)
- ใ€ฐ๏ธ [tRPC](https://trpc.io)
- ๐Ÿ“ ESLint
- โœจ Prettier


## Contact Information:

[![linkedin](https://skillicons.dev/icons?i=linkedin)](https://www.linkedin.com/in/jalajdorai/)
[![twitter](https://skillicons.dev/icons?i=twitter)](https://www.x.com/jalajdu/)
[![github](https://skillicons.dev/icons?i=github)](https://github.com/wolfgunblood/)

#### Made by Jalaj Doraiburu

#### Email: **[email protected]**

#### Tel: **+91 7209787530**

### Thank you for reading

I am really grateful for your time and I hope you like what you see here.