Git Product home page Git Product logo

vocadb-app's Issues

Play video inside App

There is 2 ways in my opinion

  • Use Webview and display from given link. I had tried on old version (1.0) but not worked. I'll try again on this version with React Native. Even if it worked, next problem will be Apple App Reviewer. I'm not sure they will okay with this.
  • Use Provider API (Such as Youtube) For in case if above not worked. But it will take cost if exceed free usage plan.

update to ios version

Currently vocadb on ios version is old than android. In the next version I'll will release it together.

TouhouDB Version

Because both site have same API structure. So I guess it's possible to build new App for TouhouDB.

TODO List for making as new app

  • Endpoint should set as config. Must remove all hard code url.
  • Change package name (Android) and identifier name (iOS) com.touhoudb.app
  • Create new app on Play store.
  • Create new app on ituneconnect.

Friendly back-button

Currently the back button exits the app when navigating in-app, which should not be the case.

Comments about song search / filtering

  • I think the "status" filter could be removed. It's mostly used to find entries that need work, but no one is going to do edits on the phone anyway, so it should be redundant on the mobile app.

  • For sort, you can leave out empty and "none" options. The default should be "name".

  • For tags, you might want to filter by "genres" category (same as website). The full list of top tags includes a lot of nonsense. Also, I added option to limit the number of top tags to return. I think displaying top 5 tags in the mobile app is enough.

  • A custom filter for tags (similar to artists list) would be useful too.

  • Perhaps consider adding filtering for minimum rating score, to get popular songs.

Otherwise I really like the filtering options :)

Support Deep linking and Android App Links

When user press VocaDB's site link from mobile (For example https://vocadb.net/Ar/1) it can take user to VocaDB app with Hatsune Miku detail page (or choose to browser depend on user decision)

Another use case is when user search from google and found result from VocaDB. User can choose to open this link via app or not.

Anyway this is an optional feature and maybe it should do after entry detail page contain all basic information that its should have.

Reference : https://developer.android.com/training/app-links/

User account and authentication features

I never working on about authentication directly by myself. Especially about from mobile to backend server. So I need to do some research for make sure not just its work, But must secure too.

Small grammar fixes

Current:

Favorite songs -> No any favorite song
Collections -> No any favorite album
Followed artists -> You did not followed any artist

Proposed fix:

Favorite songs -> No favorite songs / Nothing yet / Not found
Collections -> No favorite albums / Nothing yet / Not found
Followed artists -> Nothing yet / Not found

Show song type on details page

Original, cover, remix etc.

An icon is enough. VocaDB main site uses icons to save space in certain places.

This would also be useful for search pages.

Lyrics content should selectable

It will be useful if lyric can selectable so user can copy text or use built-in translator to translate the lyric.
This can be done by add attribute selectable to Text element.

Improve Song search state

There are some several problems on each search page that might cause some confusion to users.

For example

  • When user had filtered with some parameters and do pull refresh. Filter's parameters had disappears and result had reset to initial state.
  • When user had filtered songs. Got new results. Go back to home. Come back to song search. It reset to initial state.
  • When try to input text on search bar, close search bar and switch back to search again. text input had disappear

Those issues are cause from incorrect state control. This task might be complex because need to refactor code and redesign state so can work with navigation too.

Add more icons

Since there too many websites, So I'll target on popular sites first.

  • Facebook
  • Twitter
  • Bilibili

Not sure if anymore I should add?

How to add icon

  1. Looking (or create) icon file size with 128x128px. File size must small as much as possible.
  2. Add icon image to src/common/assets/img
  3. Add new Regex to file src/common/assets/iconSites.js This regex will check matching with web link or pv url.

About "See more" Button on home page

Each button should navigate user to listing page with same condition on main site (or match with title)

Highlighted PVs: onlyWithPVs=True&sort=AdditionDate
Recent or upcoming albums: sort=ReleaseDate
Random popular albums: sort=RatingTotal

Homescreen view

Homescreen logos (home/heart/menu icons) are a bit too large currently (too little top and bottom margin).
Buttons in the home screen should be in plural (song -> songs, artist -> artists).

Refactoring code #1

Since current code is hard to readable and using. This is my plan that need to be done

  • Separate each module (in controllers and services) to make them independence and can be easily for re-use.
  • Change some part of html code to directive if it's possible.
  • (Optional) Make a test unit for testing each function to make sure that it's can still work fine after refactoring

Add tags page

Similar to other page (songs, artists, albums, events)

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.