Vinesauce App v3

12/31/19, 8:27 AM

What took so long?

The Vinesauce app was one of my favorite projects for quite a while, but I got sidetracked. I meant to release an update, but Google Play denied the request because it contained in-app purchases (which it doesn't). So, here we are again for another go at it, but this time the app is written in React Native.

I had attempted to use React Native before, but I didn't understand it. I was originally going to write this update using Flutter, but that didn't pan out. I didn't want to have to make another web-based app, so I switched from Vue to React as my web framework of choice and learned enough to use React Native. Now that I understand React, I enjoy it. Writing an app for both iOS and Android is easy, and it's using a language I already know very well. If I were just making an iOS app, I'd use Xcode and make a simple UIKit app, but with Android, it's a different story. My goal when making an Android app is to spend as little time in Android Studio as possible. I have experienced many crashes and other various issues with it, so React Native is a blessing here. But enough about what its made in and more about what it does.

What's new?

For starters, the app is rewritten from the ground up. There is not a single line of reused code from any previous version and therefore is built for React Native. This enabled me to focus on making things responsive and easy-to-use, which I believe I did just fine.

I also rewrote the APIs I had made for this app to be based off of the New Twitch API, so responses should be faster and more accurate to modern Twitch. Due to the 30 requests a minute limitation, I do cache responses for a minute so that people can use the app without worry.

Because of the new API changes, you can view more videos on the feed and the streamer page at once, which was one of my problem points.

Since there are only web views, no iframes, streams should be faster and you should be able to chat in-app now.

Notifications should finally be working, so you can see when people start streaming and what they're playing.