Podcast Manager

Descrição

O Podcast Manager é uma aplicação inspirada no estilo da Netflix, que permite centralizar diferentes episódios de podcasts separados por categoria. Este projeto visa facilitar o acesso e a organização de episódios de podcasts em formato de vídeo, proporcionando uma experiência de navegação intuitiva e agradável para os usuários.

Funcionalidades

  • Listar os episódios de podcasts em sessões de categorias: Os episódios são organizados em categorias como saúde, bodybuilder, mentalidade e humor, permitindo aos usuários explorar facilmente os conteúdos disponíveis.
  • Filtrar episódios por nome de podcast: Os usuários podem realizar buscas específicas por nome de podcast, facilitando o acesso aos episódios desejados.

Implementação

Listar os episódios de podcasts em sessões de categorias

  • Endpoint: GET /list
  • Descrição: Retorna uma lista de episódios de podcasts organizados por categorias.
  • Exemplo de resposta:
[
  {
    "podcastName": "flow",
    "episode": "CBUM - Flow #319",
    "videoId": "pQSuQmUfS30",
    "cover": "https://i.ytimg.com/vi/pQSuQmUfS30/maxresdefault.jpg",
    "link": "https://www.youtube.com/watch?v=pQSuQmUfS30",
    "categories": ["saúde", "esporte", "bodybuilder"]
  },
  {
    "podcastName": "flow",
    "episode": "RUBENS BARRICHELLO - Flow #339",
    "videoId": "4KDGTdiOV4I",
    "cover": "https://i.ytimg.com/vi/4KDGTdiOV4I/maxresdefault.jpg",
    "link": "https://www.youtube.com/watch?v=4KDGTdiOV4I",
    "categories": ["esporte", "corrida"]
  }
]

Filtrar episódios por nome de podcast

  • Endpoint: GET /episode?podcastName={nome}
  • Descrição: Retorna uma lista de episódios de podcast com base no nome do podcast fornecido.
  • Exemplo de requisição: GET /episode?podcastName=flow

Tecnologias Utilizadas

  • TypeScript: Linguagem de programação utilizada para o desenvolvimento do projeto.
  • Tsup: Ferramenta de construção e empacotamento para projetos TypeScript.
  • Tsx: Compilador TypeScript que suporta a construção de projetos.
  • Node.js: Ambiente de execução JavaScript que permite executar código JavaScript do lado do servidor.
  • @types/node: Pacote de definições de tipos para Node.js para auxiliar no desenvolvimento com TypeScript.

Como Utilizar

  1. Clone este repositório.
  2. Instale as dependências usando npm install.
  3. Inicie o servidor executando start:dev.
  4. Acesse os endpoints fornecidos para listar os episódios de podcasts ou filtrá-los por nome de podcast.

Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para abrir problemas ou enviar solicitações de recebimento (pull requests) para melhorar este projeto.

Licença

Este projeto está licenciado sob a MIT License.