Flutter Spotify Clone - MVVM Architecture Full Course For Beginners | Python, FastAPI, Riverpod

preview_player
Показать описание
In this 10 hour tutorial, we'll be building a music streaming app very similar to Spotify using the MVVM Architecture. In this project, we'll be using Flutter for the app's frontend, FastAPI for the backend, PostgreSQL for the database, Hive for local data storage and Riverpod (Generators) for state management.

Prerequisites:
Knowledge of MVVM, FastAPI, Hive, or PostgreSQL is NOT required.

Android Manifest XML Audio Wave Code:
```
resolutionStrategy {
eachDependency {
useVersion("1.8.0")
}
}
}
}
```

Timestamps:
(00:00:00) Introduction & Prerequisites
(00:00:56) Project Installation
(00:02:29) Flutter Installation & Boilerplate Code
(00:03:35) MVVM Architecture + Feature-wise Development
(00:09:39) Signup Page UI, Theming & Form
(00:47:46) Login Page UI
(00:52:43) Virtual environment, FastAPI Setup, Exploring FastAPI, Docs
(01:12:58) Signup API Route, PostgreSQL Setup & SQLAlchemy
(01:54:09) Code Refactoring - Signup API
(02:10:03) Login API Route
(02:20:22) Psycopg2 error!
(02:20:56) Client Side Login & Signup Route Integration
(03:12:37) Auth View Model - Introducing Riverpod Generators, Lint!
(03:52:49) Running on Android Emulator
(03:55:14) Persisting Auth State & Getting User Data - JWT
(04:58:58) Upload Song Page UI, Picking Color, Audio & Image Files
(05:26:14) Testing on Android, Audio Wave UI
(05:40:55) Uploading Song Data - PostgreSQL, Cloudinary
(06:14:38) Song ViewModel - Upload Song
(06:32:26) Home Page Bottom NavBar
(06:42:42) Fetching & Displaying All Songs
(07:13:21) Playing Songs in Flutter (from anywhere in the app)
(07:25:15) Music Slab UI
(07:40:45) Music Slab Functionalities - Play/Pause Music, Display Song Progress
(07:56:09) Music Player UI & Functionalities
(08:40:05) Storing, Fetching & Displaying Recently Played Music - Hive
(09:04:07) Playing Background Music in Flutter
(09:09:17) Favorite Music - Backend, Frontend (Displaying Fav Music)
(10:03:19) Conclusion

Connect With Me Here:
Рекомендации по теме
Комментарии
Автор

Let's like the video to support the creator. He has been delivering free contents for a while now which includes industry standard practices. Thanks a lot Rivaan.

gajendrapandeya
Автор

void main() {
final feedback = {
"comments": "It was so enlightening and helped me understand the concepts clearly. I've been working with BLoC, but I'm eager to learn Riverpod as well. Thank you for providing such valuable content! I've been following your work since 2023 on Udemy, and it has greatly enhanced my skills. Looking forward to more amazing videos!"
};
Rivan");
}

aksbytegaming
Автор

YESSSS!!! Finally, a flutter project with python. We have been waiting for this.

mahmoudtokura
Автор

you are crazy myan..
I am not getting time to see your other flutter project and here you have uploaded next one..
The determination is fully fired❣️💖

manishkarki
Автор

The Goat is Back!! I have successfully done this project. I learned a lot from that. Thanks a million

flutterVerseMyanmar
Автор

Dear Rivaan, You are so talented. You are one of the reasons why I love Flutter. Keep up the good work, bro. Thanks for your helpful and invaluable tutorials.

rejebdendir
Автор

I just finished the course and I have to give a followup comment. This was totally amazing. Both the FastApi and the Flutter sides came together nicely. I highly recommend it for anyone looking to build a professional app. Loads of stuff to learn, from page transition to basic animation.
I personally prefer using a custom backend (python) over Firebase because I can control more of the functionality and the billing.😅

I'm looking forward to more Python and Flutter tutorials.

mahmoudtokura
Автор

🔥 This 10-hour tutorial is a game-changer! Building a Spotify-like music streaming app with Flutter, FastAPI, PostgreSQL, Hive, and Riverpod using MVVM architecture is just what I needed. This channel is the best and most honest out there! 🎶🚀

apdayn
Автор

Man, I can't stop saying it, Bro, you're the best of the best! The content and the way you break it down is straight fire. ❤❤❤❤❤

seamensclubaihub
Автор

Very good tutorial, learned a lot. One mention - if you return exception by the server you shouldn't tell user that password is incorrect because this may be used as good information for attacker. Rather just something generous "Invalid email or password"

Kuba-xfgi
Автор

Anytime I want to start building a new project, I come to check if he has built a feature I would love to add to my project.
Thanks for delivering such an amazing contents.

mightyboateng
Автор

Wow, you just keep on providing better and better tutorials. Thank you

hw
Автор

I was confused with MVVM architecture, but you defined it clearly, thanks man! your tutorial deserves millions of likes ❤ appreciate your efforts!

wasibhussain
Автор

Rivan we love you. Thanks for this amazing project

juniormutalbe
Автор

Great Rivaan is back, Let's celebrate it.

kevinkone
Автор

Hey Rivaan, good job on this, I've learnt some new techniques from this video. Can I suggest that your next video be about a full ride-hailing app like Uber? Using Maps with Riverpod is a sore point for many flutter developers

daviddedeke
Автор

no way rivan you are a genius! this project is awesome!

ahmadumar
Автор

Always love it when you drop your videos.... Ur amazing man

sammyjokes
Автор

thank you. now i have a clear view how to use riverpod in a simplest way

AkhmadKhanifZyen
Автор

Hey man, great project. I just want to highlight one thing. You should not be sending incorrect password as a result. Invalid credential is better from the security perspective. I know its not really a production based project but trust me, people who watch you will dieectly use the same things. Thank you for your content.❤

rishabhbajpai