Code Monkey home page Code Monkey logo

zs1l3nt / soundroid-v2 Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 1.84 MB

A rebuild of another music streaming application, this time written in Flutter. It uses a fork of the old Express server but updated the endpoint names

License: GNU General Public License v3.0

Kotlin 0.04% Swift 0.12% Objective-C 0.01% Dart 81.59% HTML 2.06% JavaScript 0.05% CSS 0.18% CMake 2.50% C++ 5.14% C 0.22% Shell 0.06% Dockerfile 0.04% TypeScript 7.97%
dart express flutter typescript youtube nodejs

soundroid-v2's Introduction

SounDroid v2

License Languages Top Language Commit Activity Last commit

SounDroid v2 is a rebuild of the original SounDroid v1.

View the video demonstration of the application here.

Motivation

I need a deliverable for my MBAP (Mobile Application Development) submission and I wanted to rebuild my original SounDroid v1 application.

Subrepositories

The Flutter Application

The Express Backend for converting YouTube Videos to MP3

Features

  • Music Playing
    • Lyrics fetching (timed/non-timed)
    • Music Controls
      • Play & Pause
      • Skip Forward & Backward
      • Seek bar
      • Volume control
      • Repeat & Shuffle
      • Auto Pause when Offline
    • Queue Management
      • Loop Off, Single and Queue
      • Shuffle Off and On
      • Add to Queue
      • Reorder Queue
      • Swipe to remove from Queue
    • Floating Action Button
      • Current Song's Thumbnail
      • Playing Progress
    • Music Session & Notification
      • Play & Pause
      • Skip Forward & Backward
      • Seek bar
  • Playlists
    • Modifying
      • Title
      • Cover (Gallery, Camera)
      • Playlist Songs (Add, Remove, Reorder)
      • Delete
    • Downloading
      • Auto Pause when Offline
    • Playlist for Liked Songs
  • API Interactions
    • Searching (Song, Album)
      • Autocomplete
      • Recent searches
      • Uses YouTube Music Scraper
    • Song Recommendations
      • Uses Spotify API
      • Reads user's listening history
  • Accounts & Authentication
    • Login with Google or Email
    • Register with Google or Email
    • Forgot Password with backlinking
    • Email Verification with backlinking
    • Update user information
    • Connect/Disconnect from Google
    • Delete user data
      • Listening History
      • Search History
      • All Data

Usage

Setup the Firebase Project

Instructions are listed in Firebase-Setup.md.

Setup the Express Backend

Copy the .env.example file to .env then fill in the correct project credentials

$ npm i
$ npm run dev

Setup the Flutter App

Copy the env.example.dart file to env.dart then fill in the correct project credentials

$ flutter pub get
$ flutter run

Built with

  • Flutter
    • Flutter SDK
      • build_runner
      • flutter
      • flutter_lints
      • provider
    • Audio
      • audio_session
      • just_audio
      • just_audio_background
      • perfect_volume_control
    • Firebase
      • cloud_firestore
      • firebase_auth
      • firebase_core
      • firebase_storage
      • google_sign_in
    • API
      • cached_network_image
      • connectivity_plus
      • hive
      • hive_flutter
      • hive_generator
      • http
      • json_annotation
      • json_serializable
      • palette_generator
      • shimmer
    • Miscellaneous
      • auto_size_text
      • awesome_notifications
      • copy_with_extension
      • copy_with_extension_gen
      • diffutil_dart
      • equatable
      • flutter_bloc
      • flutter_launcher_icons
      • flutter_native_splash
      • flutter_settings_screens
      • great_list_view
      • image_cropper
      • image_picker
      • marquee
      • path_provider
      • rxdart
      • uni_links
  • Express
    • TypeScript
      • @types/express
      • @types/node
      • @types/sharp
      • @types/spotify-web-api-node
      • @types/string-similarity
      • ts-node-dev
      • typescript
    • Firebase
      • firebase-admin
      • google-it
    • YouTube APIs
      • ytdl-core
      • ytmusic-api
    • Miscellaneous
      • axios
      • colors
      • dotenv
      • express
      • no-try
      • sharp
      • spotify-web-api-node
      • string-similarity
      • tracer
      • ts-node-dev
      • typescript
      • validate-any

soundroid-v2's People

Contributors

zs1l3nt avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.