All Projects → stonega → Tsacdop

stonega / Tsacdop

Licence: gpl-3.0
Enjoy podcasts with Tsacdop! A podcast player built with flutter.

Programming Languages

dart
5743 projects

Projects that are alternatives of or similar to Tsacdop

Awesome Podcasts
🎙 A collection of awesome engineering podcasts! ARCHIVED in favor of https://github.com/rShetty/awesome-podcasts
Stars: ✭ 184 (-2.13%)
Mutual labels:  podcast, podcasts
podverse-api
Data API, database migration scripts, and backend services for all Podverse models
Stars: ✭ 15 (-92.02%)
Mutual labels:  podcast, podcasts
Podgrab
A self-hosted podcast manager/downloader/archiver tool to download podcast episodes as soon as they become live with an integrated player.
Stars: ✭ 194 (+3.19%)
Mutual labels:  open-source, podcast
Spotifeed
A simple service to serve up Spotify podcasts as RSS feeds for use in any podcast app.
Stars: ✭ 238 (+26.6%)
Mutual labels:  podcast, podcasts
Podlive Macos
Never miss a live streaming podcast!
Stars: ✭ 40 (-78.72%)
Mutual labels:  podcast, podcasts
podhouse
The best way to listen to your favorite podcasts.
Stars: ✭ 39 (-79.26%)
Mutual labels:  podcast, podcasts
podcast
A curated list of awesome dev podcast around the globe
Stars: ✭ 17 (-90.96%)
Mutual labels:  podcast, podcasts
Spotify-Podcast-Feed
A service which provides Spotify podcast as RSS feed, which can be subscribed in any podcast app.
Stars: ✭ 16 (-91.49%)
Mutual labels:  podcast, podcasts
Awesome Russian It
📖 🎧 📺 📆 Список полезных русскоязычных ресурсов, связанных с ИТ
Stars: ✭ 323 (+71.81%)
Mutual labels:  podcast, podcasts
Awesome Learning Resources
🔥 Awesome list of resources on Web Development.
Stars: ✭ 3,928 (+1989.36%)
Mutual labels:  open-source, podcast
Podstation
podStation is a web podcast aggregator for Chrome.
Stars: ✭ 76 (-59.57%)
Mutual labels:  podcast, podcasts
Winds
A Beautiful Open Source RSS & Podcast App Powered by Getstream.io
Stars: ✭ 8,530 (+4437.23%)
Mutual labels:  podcast, podcasts
Awesome Podcasts
🎙 Curated podcasts for designers, developers, product managers, entrepreneurs and hustlers
Stars: ✭ 116 (-38.3%)
Mutual labels:  podcast, podcasts
Mygpo
The gpodder.net webservice
Stars: ✭ 176 (-6.38%)
Mutual labels:  podcast
Baldphone
A new accessible interface for your smartphone, suitable for seniors
Stars: ✭ 181 (-3.72%)
Mutual labels:  open-source
Recent slam research
Track Advancement of SLAM 跟踪SLAM前沿动态【2021 version】
Stars: ✭ 2,387 (+1169.68%)
Mutual labels:  open-source
Free Computer Science University
So after watching all the resources i thought to put all the important technical courses in one place.And help those people who wants to learn computer science.All the courses are free here.
Stars: ✭ 175 (-6.91%)
Mutual labels:  open-source
Changedetection.io
changedetection.io - The best and simplest self-hosted website change detection monitoring service. An alternative to Visualping, Watchtower etc. Designed for simplicity - the main goal is to simply monitor which websites had a text change. Open source web page change detection.
Stars: ✭ 180 (-4.26%)
Mutual labels:  open-source
Blender Launcher
Standalone client for managing official builds of Blender 3D
Stars: ✭ 174 (-7.45%)
Mutual labels:  open-source
Crawler Commons
A set of reusable Java components that implement functionality common to any web crawler
Stars: ✭ 173 (-7.98%)
Mutual labels:  open-source

Tsacdop Banner

github action GitHub Release Github Downloads Localizely style: effective dart License badge

About

Enjoy podcasts with Tsacdop.

Tsacdop is a podcast player developed with Flutter, a clean, simply beautiful and friendly app, which is also free and open source.

Credit to Flutter team and all involved plugins, especially webfeed , Just_Audio and Provider.

The podcast search engine is powered by ListenNotes & PodcastIndex.

Features

  • Podcast group management
  • Playlists support
  • Sleep timer / speed setting
  • OPML file export and import
  • Auto syncing in background
  • Listening and subscription history record
  • Dark mode / accent color
  • Download for offline play
  • Auto download new episodes / auto delete outdated downloads
  • Settings backup
  • Skip silence
  • Boost volume

More to come...

Preview

Home Page Group Podcast Episode Dark Mode

Localization

Please Email me you'd like to contribute to support more languages!

Credit to Localizely for kind support to open source projects.

English

Chinese Simplified

French

Spanish

Portuguese

License

Tsacdop is licensed under the GPL v3.0 license.

Build

  1. If you don't have Flutter SDK installed, please visit offcial Flutter site.
  2. Fetch latest sorce code from master branch.
git clone https://github.com/stonega/tsacdop.git
  1. Add api search api configure file.

Tsacdop uses ListenNotes API 1.0 pro to search for podcasts, which is not free, so I can not expose the API key in the repo. If you want to build the app, you need to create a new file named .env.dart in lib folder. Add the following code to .env.dart. If you don't have ListenNotes api key, just keep apiKey ''. Than the app will only support the PodcastIndex search. You can get your own ListenNotes API key on ListenNotes, remember that you need to get pro plan API, because basic plan dosen't provide rss link for serach result.

final environment = {"apiKey":""};
  1. Run the app with Android Studio or Visual Studio. Or the command line.
flutter pub get
flutter run

Contribute

If you have an issue or found a bug, please raise a GitHub issue. Pull requests are also welcome.

Archetecture

Plugins

  • Local storage
    • sqflite
    • shared_preferences
  • Audio
    • just_audio
    • audio_service
  • State management
    • provider
  • Download
    • flutter_downloader
  • Background task
    • workmanager

Directory Structure

UI
src
└──home
   ├──home.dart [Homepage]
   ├──searc_podcast.dart [Search Page]
   └──playlist.dart [Playlist Page]
└──podcasts
   ├──podcast_manage.dart [Group Page]
   └──podcast_detail.dart [Podcast Page]
└──episodes
   └──episode_detail.dart [Episode Page]
└──settings
   └──setting.dart [Setting Page]

STATE
src
└──state
   ├──audio_state.dart [Audio State]
   ├──download_state.dart [Episode Download]
   ├──podcast_group.dart [Podcast Groups]
   ├──refresh_podcast.dart [Episode Refresh]
   └──setting_state.dart [Setting]

Service
src
└──service
   ├──api_service.dart [Podcast Search]
   ├──gpodder_api.dart [Gpodder intergate]
   └──ompl_builde.dart [OMPL export]

Known Issue

  • Playlist is unstable

Contact

You can reach out to me directly at [email protected].

Or you can join our Telegram Group.

Getting Started with Flutter

This project is a starting point for a Flutter application.

Here are a few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].