Giter Site home page Giter Site logo

steniowagner / mindcast Goto Github PK

View Code? Open in Web Editor NEW
1.2K 26.0 248.0 59.3 MB

A React-Native streaming-audio app that provides knowledge in the shape of Podcasts.

License: MIT License

JavaScript 97.54% Java 0.86% Objective-C 1.05% Starlark 0.56%
react-native redux react-navigation music podcast streaming-audio streaming redux-saga

mindcast's Introduction

MindCast

Preview-Screens

If you want to take a look on all screens of the App, they are here.

About this Project

The idea of the App is:

"Share knowledge in the form of podcasts, providing a simple way to learn".

PS: Podcasts was just the context chosen by me for this project, but all the code inside this app can be reused for any app that has audio-streaming as domain, so you can reuse everything here in your next music-player, podcast-library or anything inside this context!

On the Media ๐Ÿคฉ: A review about this app (pt-BR ๐Ÿ‡ง๐Ÿ‡ท).

Why?

This project is part of my personal portfolio, so, I'll be happy if you could provide me any feedback about the project, code, structure or anything that you can report that could make me a better developer!

Email-me: [email protected]

Connect with me at LinkedIn.

Also, you can use this Project as you wish, be for study, be for make improvements or earn money with it!

It's free!

Some Observations about this App

1 - There's no functionality of Login/Register, the buttons and the forms in the Login Screen are only for UI matters.

2 - The only option that works at Settings screen it's toggle the Dark/Light theme, all the others are just for UI matters too.

Installers

If you want to test the App in the Production mode, the installers are listed below:

Android .apk installer

iOS .ipa installer: Soon!

Functionalities

  • Choose your interests (all, technology, philosophy, science, business, pop-culture or history - it will be used to make requests in order to have a personalized app with what the user want to hear about)

  • Get informations about a specific Author, with his New Releases/Featured Podcats and Related Authors

  • Get Informations about a specific Podcast, with its description and Author

  • Listen and download a single podcasts to listen offline (no need to create a playlist)

  • Playlists

    • Create, Edit and Remove your Playlists
    • Download Playlists to listen when the user goes offline
    • Undownload Playlists
  • Player to listen the selected podcasts and also be able to:

    • Shuffle Playlist
    • Repeat Playist
    • Repeat a single Podcast
    • Download the current podcast
    • Add the current Podcast to a Playlist
    • Access the queue of next podcasts that will be played
    • Remove podcasts from the queue
    • Play/Pause the current Podcast
    • Next/Previous podcast on the Playlist
  • Bottom Player

    • Access the bottom player out of the Player screen in order to keep tracking the current podcast
    • Get the Author and the Title of the current podcast
    • Play/Pause/Forward the current podcast
    • Track the timer of the current podcast
  • Discover

    • A Dashboard with:
      • Trending Authors
      • Hottest Podcasts
      • New Podcasts Released
  • Search

    • Search for Authors by name

    • Get information about a certain category, showing it's featured and trending podcats, and the authors that talk about this category

  • Library

    • Create Playlists, add podcasts and download it to listen offline

    • Access Your Podcasts (Downloaded + Podcasts saved on your Playlists) in the form of playlist

    • Access your Podcasts downloaded in the form of playlist

    • Access recently played podcasts in the form of playlist

    • Change your interests

  • Settings

    • Choose between the Dark and Light theme

Getting Started

Prerequisites

To run this project in the development mode, you'll need to have a basic environment to run a React-Native App, that can be found here.

Also, you'll need to the server running locally on your machine with the mock data. You can find the server and all the instructions to start the server here.

Installing

Cloning the Repository

$ git clone https://github.com/steniowagner/mindCast

$ cd mindCast

Installing dependencies

$ yarn

or

$ npm install

Connecting the App with the Server

1 - Follow the instructions on the mindcast-server to have the server up and running on your machine.

2 - With the server up and running, go to the /.env.development file and edit the SERVER_URL value for the IP of your machine (you can have some issues with localhost if you're running on an android physical device, but you can use localhost safely on iOS).

It should looks like this:

SERVER_URL=http://IP_OF_YOUR_MACHINE:3001/mind-cast/api/v1

or

SERVER_URL=http://localhost:3001/mind-cast/api/v1

Running

With all dependencies installed and the environment properly configured, you can now run the app:

Android

$ react-native run-android

iOS

$ react-native run-ios

Built With

Support tools

Contributing

You can send how many PR's do you want, I'll be glad to analyse and accept them! And if you have any question about the project...

Email-me: [email protected]

Connect with me at LinkedIn

Thank you!

License

This project is licensed under the MIT License - see the LICENSE.md file for details

mindcast's People

Contributors

0xflotus avatar denishamann avatar steniowagner 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mindcast's Issues

Progress bar scrolling unreliably

First of all, thanks for this amazing mobile app.๐Ÿ‘ I have been playing around with it for the past 2 days and I am really impressed with the UI and functionality if the app. There is just 1 bug which I found which I am unable to fix myself.

When I scroll the progress bar when music is playing, the music does not always skip forward and most of the time continues playing normally whilst the indicator jumps back to its previous position before I moved it. Here is a video of the error.

Could you point me into the right direction as to how to solve this small bug? Thanks!

Not streaming on ios

Hello there i have tried this app it works fine on android but podcast not streamed on IOS it wait until whole podcast downloaded then start playing and i can't seek on ios

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.