Giter Site home page Giter Site logo

ytcreator's Introduction

YTCreator


Welcome to YTCreator, a revolutionary platform designed to streamline the video upload process for YouTube creators. Our goal is to enhance the collaboration between creators and their editors, ensuring that high-quality, edited content is seamlessly uploaded to YouTube with minimal effort. It is built using Node.js, Express.js, Next.js, Prisma ORM, and PostgreSQL.


Features

  • Creator-Editor Collaboration: YTCreator allows YouTube creators to map their accounts with designated editors. This setup facilitates a smooth workflow where editors can directly upload edited videos to the creator's dashboard.
  • Secure Video Uploads: Once an editor uploads an edited video to the YTCreator platform, it awaits the creator's authorization. This ensures that creators have full control over the content before it goes live on their YouTube channel.
  • Simplified Authorization Process: Creators receive notifications when a new video is uploaded by their editor. With just a few clicks, creators can review, approve, and authorize the video for direct upload to their YouTube channel.
  • Direct Integration with YouTube: After authorization, the video is automatically uploaded to the creator's YouTube channel without the need for additional steps. This direct integration reduces the time and effort required for video publishing.

Run Locally

Clone the project

  git clone https://github.com/Akshat2403/YTCreator

Go to the project directory

  cd YTCreator

Install dependencies

In Client

  cd client
  npm i

In Server

  cd server
  npm i

Environment Variables

To run this project, you will need to add the following environment variables to your .env file in the server directory

DATABASE_URL: Your PostgreSQL DATABASE_URL

JWT_SECRETKEY:JWT_SECRETKEY

Migrate the Schema

  cd server
  npx prisma migrate dev

Run Client

  cd client
  npm run dev

Run Server

  cd server
  npx tsx index.ts

Open your web browser and visit http://localhost:3000 to access YTCreator.


Usage (Testing)

  1. Make sure you have completed the installation steps mentioned in the README.

  2. Open your web browser.In the address bar, enter http://localhost:3000.

  3. Sign Up for a account

  • Click on the "New to YTCreator" link.
  • Provide the required information, such as username and password, to create a new account.
  • During SignUp process, you can choose roles as Creator and Editor respectively.
  1. Log in to your account:
  • Click on the "Log In" link
  • Enter your credentials (username and password) to log in to your account.
  1. As a Creator, please follow these steps:
  • After Login you can create,read,update and delete the jobs from your Dashboard.
  • For each job, you have choose a designated editor which can be linked to your account in the profile page.
  • Each job can be assigned to only one editor at a time and can be seen by the editor on his dashboard.
  • After getting a job assigned, a editor can upload the edited video to the job marking the status as Uploaded.
  • The Creator can either Complete the job that is upload the video to Youtube or update the job demarking it as pending.
  • Befor uploading the video on Youtube, the creator has to add the credentials from the profile page which can be generated from Google Cloud console under the Youtube api section ref??????????
  • Along with the credentials, the creator has to provide a secret key(which can't be restored late to Secure the credentials).
  • For uploading the video, Select the job you want to complete and click the upload button, where you have to provide the secret key for authorizing the upload and fill/update the necessary details such title, description etc and hit the upload button after adding the secret key again to the form.
  1. As a editor, please follow these steps:
  • All the jobs assigned to the editor will be displayed on the dashboard.
  • The details of the job are provided in the additional comments section of the job.
  • After editing the video, editor can upload the video by filling the editor upload form of the respective job.
  • The creator can complete the job by uploading it to Youtube or can demark it as pending with new comments for any changes.

Screenshots

Dashboard

Dashboard

Login Screen

Login

SignUp Screen

SignUp

Profile Screen

Profile

Create/Update Job

Job

Upload Screen

Upload

Editor Upload Form

Uploadyoutube

ytcreator's People

Contributors

namanjangid2002 avatar akshat2403 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.