Skip to content

LitoHDD/PodProse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💻 PodProse

Discord Language count GitHub release (latest by date) GitHub License

📝 Description

PodProse is a podcast platform designed to provide engaging, informative, and entertaining content. Focusing on captivating narratives, we cover a variety of topics from culture to education and current events. Our mission is to create a space where listeners can find thought-provoking stories and insights.

🎯 Project Objectives

The main objectives of PodProse are:

  • To deliver high-quality podcast content that informs, entertains, and inspires our audience.
  • To create a community of listeners and content creators who share a passion for storytelling.
  • To offer an intuitive and accessible platform for discovering and enjoying podcasts.

🔧 Technologies Used

HTML CSS React&JavaScript NestJS MySQL

🤝 Contributors

Contributors
GitHub contributors

📄 License

This project is under the MIT License. For more information, please refer to the LICENSE file.

🔰 Let's Get Started

To get involved with PodProse, start by exploring our content on the platform. Creators interested in contributing their podcasts can reach out via our Discord server or follow the instructions on our GitHub repository for content submission.

📝 Additional Notes

For more detailed information about PodProse and its features, please refer to the README.md file located at the root of the repository. Our Discord server is also a great place for help and discussions with other developers and content creators.

🚀 How to Start the Application

Requirements

  • MySQL:

    • Server
    • Shell
  • NodeJs

    • NPM

Docker

  • Build Docker image:

    docker build -t mysql-image .
  • Run Docker container:

    docker run --name mysql-container -d -p 3306:3306 -v mysql-data:/var/lib/mysql mysql-image
  • Dockerfile

    FROM mysql:latest
    
    # Set the root password (change it to whatever you want)
    ENV MYSQL_ROOT_PASSWORD=password
    
    # Exposes port 3306 so it can be accessed from other machines
    EXPOSE 3306
    
    # Custom MySQL configuration
    RUN echo "[mysqld]\nbind-address = 0.0.0.0" > /etc/mysql/my.cnf
    
    # Create a directory for the volume where the data will be stored
    VOLUME /var/lib/mysql
    
    # CMD to start MySQL automatically when starting container
    CMD ["mysqld", "--user=mysql", "--console"]

API Installation

  • Install dependencies:

    npm i

Database Setup

  • Create tables:

    npx prisma migrate dev
  • Insert required data:

    npm run megafactory
  • Open graphical environment:

    npx prisma studio

Running the API

  • Watch mode:

    npm run start:dev

API Documentation

Access the Swagger UI for API documentation at: http://localhost:3000/api/

APP Installation

  • Install dependencies:

    npm i

Running the APP

  • Watch mode:

    npm run dev