Coder Social home page Coder Social logo

mrchuckomo / poddycast Goto Github PK

View Code? Open in Web Editor NEW
180.0 180.0 28.0 186.93 MB

Podcast app made with Electron, lots of ❤️ and ☕️

License: GNU General Public License v3.0

HTML 3.14% JavaScript 82.69% CSS 14.17%
audio desktop desktop-app electron episodes feed html linux macos player playlist playlists podcast rss windows

poddycast's Introduction

poddycast's People

Contributors

alexdevero avatar daugsbi avatar denerfernandes avatar dependabot[bot] avatar ecottenot avatar ethangrahn avatar jeongkyu avatar josephsamela avatar mrchuckomo avatar paologiua avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

poddycast's Issues

Installer (setup)

Hi, this app is a portable app.
I need an installer for windows like this:
image

A valid Podcast-feed throws an error

Describe the bug
A well maintained Podcast with a valid FeedUrl throws an error on loading time or when visiting the Podcasts detail page.
The Podcast gets highlighted with the connection error icon.

To Reproduce
Steps to reproduce the behavior:

  1. Go to second menu item "Favorites"
  2. Click on the Podcast
  3. See error

Expected behavior
Well maintained Podcast should load the episode list properly.

Download support for Edpisodes

Being able to download episodes to your machine - so you'll be able to listen to your favorite Podcasts when you're offline.

Feature: Add support for import of opml files

User can add podcasts only by searching for them in iTunes catalog and subscribing them manually. Option to import OPML files would allow user import all his podcasts with a single click.

Option to test status of saved podcast URL

Sometimes there is a change in some podcast. The name, the artwork, the URL, etc. might change. This can lead to podcast no longer working and syncing. There is now no option to check, or see, which podcasts (URLs) are working and able to sync. Now, user has to open each podcast in "Favorites" and check if the feed with episodes loads or not.

It would be nice to have some way to check either if all podcasts, or specific podcast, work. Some indicator, like a red/green dot would be also useful. User would immediately know that some podcasts are unreachable, and potentially broken.

@MrChuckomo What do you think?

Broken state during the refresh process on app start, when quickly navigate to a different page

Describe the bug
When the app starts, the latest episodes are pulled. However, if you switch to another page during this process, you will automatically be shown the content of the latest episodes as soon as the pulling is complete.

To Reproduce
Steps to reproduce the behavior:

  1. Open the app
  2. Immediately go to e.g. 'Favorites'
  3. Wait for the pull-process to finish (fetching the latest episodes)
  4. Instead of the Favorites content you'll see now the New Episodes content

Expected behavior
Two options here to choose from:

  1. Stay on the page you're currently at and not overwrite the content with the new episodes
  2. Jump back to the New Episodes page and update the app accordingly to make clear where you are (navigation UI etc.) - not leaving the user in a broken state.

Additional context
Relates to #120, #125

Fresh new look for statistics

Adding some charts to give the statistics a new look.
Finding new ways to aggregate and visualize the episodes/historical data.

Additional context

New episodes count is wrong

The number of new episodes shown next to the "New episodes count is wrong" label in menu is incorrect. It shows double of the real value.

Screen:
poddy-episodes-count-issue

Migrate app to Electron JS v15+

To support latest Electron JS version, features and security, the app needs an overall restructuring.
This will be a bigger task. The benefit will be to deal with latest versions of Electron more easily.

The restructuring includes support of the IPC concept (introduced with Electron version 5+). This leads to more security within the app. And further Electron updates can be merged more easily into the app.

#106

Checklist for transition to IPC concept

  • i18n works again
  • New Episodes list loads
  • New episode items are clickable and playing audio
  • Episodes can be deleted
  • Search for podcasts
  • Subscribe to podcasts
  • Unsubscribe to podcasts
  • App menu works
  • Import/export OPML
  • Refresh button works
  • Remove optional list view on the Favorites tab (keep only grid view)
  • Favorite podcasts loading
  • Favorite podcasts can be clicked and all episodes are shown
  • Episodes in a specific podcast feed can be clicked and audio is playing
  • Episodes from a podcast feed can be added
  • Context menu in Podcast detail view
  • Playlist loading
  • Playlist can be renamed
  • Playlist editable
  • Playlist context menu works again
  • Episodes in a playlist can be clicked and audio is playing
  • New playlist creation is possible again
  • Dark Mode
  • History is shown
  • Statistics are shown
  • Play/pause works
  • Episode progress updates
  • Episode progress can be clicked and any position can be selected
  • Next episode plays automatically after one episode finished
  • Volume works
  • Playback speed works
  • Tray icon works

Feature: Clear history

Keeping persistent history of played tracks is not necessary. User should be able to clear the history of played tracks if he wants.

Feature: Minimize app to system tray

The app doesn't have to be visible all the time when user listens to podcast. Option to minimize app to system tray would allow to hide the app without closing it.

Feature: Option to update/sync podcasts

At this moment, Poddycast updates/syncs podcasts automatically on start. Option for manual sync would allow to update podcasts without the need to re-launch the app.

Use Bootstrap Icons

At the moment icons are selectively downloaded and stored as svg in the project.

Using Bootstrap Icons gives more flexibility in dealing and experimenting with icons (e.g. using font-icons).
It also allows you to maintain a consistent look and feel for the app.

New episodes list not updating correctly

Describe the bug
The new episodes list does not show the latest episodes until you switch to a different tab then switch back. The new episode count on the left side is correct, but the right side does not include the episodes added since last launching the app.

To Reproduce

  1. Add podcasts to favorites
  2. Close app and wait for new episodes to release
  3. Open application

Expected behavior
New episodes should be added to the list automatically.

Screenshots
2023-01-18 08_28_27

Platform Info:

  • OS: Windows 10
  • Version 0.11.0

Lose folder infomation after imported

Describe the bug
The OPML contained a folder, but import to poddycast lost it.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Edit'
  2. Click on 'Import OPML'
  3. Select the OPML file.
  4. See error

Expected behavior
Folder remained.

Screenshots
image
As upper image, the OPML have a folder named "test". (Right is FeedBro, imported the same OPML file)

Desktop (please complete the following information):

  • OS: Windows 11
  • Version 23H2 22631.3527

Additional context
This is what is in the OPML:

<?xml version="1.0" encoding="UTF-8"?>
<opml version="1.0">
<head>
<title>Feed Subscriptions</title>
</head>
<body>
      <outline text="字谈字畅" title="字谈字畅" type="rss" 
            xmlUrl="https://www.thetype.com/typechat/feed/" htmlUrl="https://www.thetype.com/typechat/"/>
  <outline title="Test" text="Test">
      <outline text="文化有限" title="文化有限" type="rss" 
            xmlUrl="https://s1.proxy.wavpub.com/weknownothing.xml"/>
  </outline>
</body>
</opml>

Disable "Push to New Episodes" doesn't seem to work properly

Describe the bug
When uncheck the option "Push to New Episodes" on a Podcast it seems it still pulling latest episodes.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Favorites'
  2. Click on a Podcast to open the episodes list
  3. Click on the three dots button '...' to open the sub-menu
  4. Disable the option 'Push to New Episodes'
  5. Wait for new Episodes to get published
  6. Check if they appear in the 'New Episodes' tab

Expected behavior
When disabling the option 'Push to New Episodes' the Podcast should be set to a kind of 'quiet-mode'.
And no new episodes should be pulled and pushed automatically to the 'New Episodes' tab.

The Podcast still exists in the 'Favorites' tab and episodes can be explored manually.

Feature: Add support for exporting podcasts

There is no way to export favorite (subscribed) podcast from Poddycast. As a result, when something happens, user can lose all his data. Option to export podcasts, in opml file for example, would allow the user back up his data.

Replace skip forward/back icons

Is your feature request related to a problem? Please describe.
It is not clear to me that the skip buttons only skip a set amount of time and not the entire episode.

Describe the solution you'd like
The icons should match the common icon that other audio players use for skipping based on time.
Example:
image

Feature: indicator for loading podcast episodes on podcast detail

When podcast contains a lot of episodes, or the connections is slow, it takes a while until the list with episodes appear. During this time, the app shows the podcast "detail page" with empty list. There is no feedback or indicator about anything happening on the background. There is also no feedback if app fails to fetch the episode list.

  1. Add some loading indicator showing that the app is fetching the data on the background.
  2. Add some indicator or message in case the fetching the data fails.

Current state step 1:
ddy

Current state step 2:
ddy 2

Minimum window size

The application window does not get smaller than one size.
Please reduce the minimum window size.
image

Suggestion: change "Search" to "Find podcast"

Sorry...wrong github account on previous issue. :-(

First...thank you for releasing this app. I'm currently listening to Chris Hardwick's new podcast, ID10T, as we speak on my ubuntu desktop. I have a suggestion based on my initial onboard experience.

When I first opened the app, it took me a few minutes to figure out how to add podcasts to my lists. I saw the search box right away but assumed it would be searching the within podcasts I had already added to my lists. Simple change that might help with initial usability would be changing placeholder text to "Find podcasts" from "Search"

I'd be happy to submit a pull request if that might help.

Chapter Support

Some Podcast-Feeds support chapter-marks for their episodes.

One ways to structure chapters, see the example below:

psc:chapters: 
    psc:chapter: [
        { @_start: '00:00:00.000', @_title: 'Intro' }
        ....
]

Unable to switch between dark and light mode

Describe the bug
Enable or disable the dark mode (the menu item) doesn't work anymore.

To Reproduce
Steps to reproduce the behavior:

  1. Open the app
  2. Go to the menu View
  3. Click on Dark Mode

Expected behavior
If this menu item is enabled the app should be in dark-mode.
If the menu item is disabled the app should be in light-mode.

Proxy Mode

Love the app! Having a little trouble with proxy mode.

I have HTTP_PROXY and HTTPS_PROXY set as environment variables and Proxy Mode checked in settings. My proxy is working with other applications just not Poddycast. I'm using Windows 7.

untitled

Entering a search term logs errors to console:

Problem with request: connect ECONNREFUSED 143.102.42.55:8080

Any tips for getting this setup? Thanks!

image

Change size of left side of screen where favorites and whatnot are

Is your feature request related to a problem? Please describe.
I am using the Pine Phone which is a phone that basically runs Debian and would like to use this but without the side being collapsible it isn't viable unless in landscape mode.

Describe the solution you'd like
Left side of the screen and section with play buttons being collapsible

Describe alternatives you've considered
Being able to change the size of those areas manually.

Trying to get in touch with you regarding a security issue

Hi there,

I couldn't find a SECURITY.md in your repository and so am not sure how to best contact you privately to disclose the security issue.

Can you add a SECURITY.md file with your e-mail to your repository, so that I know who to contact? GitHub suggests that a security policy is the best way to make sure security issues are responsibly disclosed.

Once you've done that, please let me know so I can ping you the info.

Thanks! (cc @JamieSlome)

not able to favorite a podcast?

hey! i love the app! faster and easier to navigate than iTunes, which is what i usually use. the only issue i have is not being able to favorite a podcast for listening? the specific cast is Alice Isn't Dead, I click the heart and it doesn't fill in?

Keep up the good work

Sorry couldn't find any other way of reaching out to you. Just have to give some feedback. I've been testing a few podcast players on Ubuntu and so far Poddycast is the one player that works best (for me). Please keep up the good work on Poddycast!

Eliminate podcast settings file

Merge ...-podcast_setting.json into ▶️ ...-favorite_podcasts.json

The settings file contains just one unique property (addToInbox). Which can be included into the favorites file. This should result in less file handling.

Related Issues

  • Podcast status refresh (discussion about new property) #73

Episode list information

Click on a show to view episodes. See all that white space?

How about sprucing these list elements with some more info. For example, description, publication date, time remaining, etc.

screenshot from 2018-04-23 21-51-43

For reference here's the layout in Google Music.

screenshot 2018-04-23 at 9 52 58 pm

Maybe even options of sorting episodes? Sort by date for example.

Click on plus + button should add new playlist

When you create a new playlist you need to press enter to create the new list.
An alternative should be in place to make it easier for users to create a playlist.

The plus + icon (next to the playlist input field) can be a button to create the new playlist.

Suggestion: Change "Search" to "Find podcasts"

First...thank you for releasing this app. I'm currently listening to Chris Hardwick's new podcast, ID10T, as we speak on my ubuntu desktop. I have a suggestion based on my initial onboard experience.

When I first opened the app, it took me a few minutes to figure out how to add podcasts to my lists. I saw the search box right away but assumed it would be searching the within podcasts I had already added to my lists. Simple change that might help with initial usability would be changing placeholder text to "Find podcasts" from "Search"

I'd be happy to submit a pull request if that might help.

Small Thumbnails

The thumbnails can be too small and ux for the app is not that great. If you want help on the design I can help you massively and be of help to the project.

Latest episodes that have been listened to are still loaded when not tracking history

Describe the bug
If you have the history tracking setting disabled, when you open the app it will load the latest episode for all of your favorite podcasts. It does not take into account whether you have listened to them or not.

To Reproduce
Steps to reproduce the behavior:

  1. Open the app
  2. Delete the latest episode for a podcast
  3. Close the app
  4. Open the app
  5. See that the episode is loaded again

Expected behavior
Only episodes that I have not listened to or deleted should be displayed.

Desktop (please complete the following information):

  • OS: Windows
  • Version [e.g. 22]

Additional context
This happens because history was used to determine whether you listened to (or deleted) an episode. We should save info about the latest listened to, deleted, or displayed (on the new episodes page) to use for loading newer episodes. This would also resolve an issue where if a podcast releases more than one episode since you last loaded the app, it will only show the most recent.

Missing npm scripts & deps

The app is missing npm scripts and dependencies in package.json. Without them it is hard to contribute to the codebase of the project.

Add support for RSS audio feeds

I found this app while searching for a desktop application to use with a Patreon podcast RSS feed. It would be nice to be able to save RSS feeds the same way as the current itunes podcasts. I have already started implementing this, so I can take on the task. It'll be beneficial if we discuss the implementation here such as new UI to accommodate this, backend implementation, etc.

Podcasts found, favourited, but epsiodes not identified

A couple of podcasts are found. I favourite them. But no episodes are identified.

See images:
Screenshot - 07_06_2021 , 11_21_59

Windows 10 Pro build 19041. x64 app version. Always-on VPN. Proxy mode not used.

Looking good - saves me disk space - but see bug above.

Deleting a playlist stops the currently playing episode

Describe the bug
If there is an episode actively playing while you delete a playlist, the window refreshes and the active episode is removed from the bottom bar and stops playing audio.

To Reproduce

  1. Create a playlist
  2. Start playing a podcast episode from favorites
  3. Right click and delete playlist

Expected behavior
The audio player should not be refreshed. The active episode should continue playing and the playlist gets deleted.

Desktop (please complete the following information):

  • OS: Windows
  • Version v0.10.0

Poddycast-linux-x64 Dark mode didn't work

System: Ubuntu 18.04

Details

I clicked on View > Dark Mode

Console Error
dark_mode.js:18 Uncaught TypeError: Cannot read property 'checked' of null
    at darkMode (dark_mode.js:18)
    at click (/home/phellipe/Downloads/Poddycast-linux-x64/resources/app.asar/menu.js:30)
    at CallbacksRegistry.apply (/home/phellipe/Downloads/Poddycast-linux-x64/resources/electron.asar/common/api/callbacks-registry.:48)
    at EventEmitter.<anonymous> (/home/phellipe/Downloads/Poddycast-linux-x64/resources/electron.asar/renderer/api/remote.js:299)
    at emitThree (events.js:116)
    at EventEmitter.emit (events.js:197)

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.