Coder Social home page Coder Social logo

jamband / admin.plusarchive.com Goto Github PK

View Code? Open in Web Editor NEW
32.0 32.0 13.0 5.62 MB

Admin for plusarchive.com

Home Page: https://plusarchive.com

License: MIT License

JavaScript 0.58% PHP 97.11% Shell 0.08% SCSS 2.23%
bandcamp music php soundcloud vimeo yii youtube

admin.plusarchive.com's Introduction

admin.plusarchive.com's People

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

admin.plusarchive.com's Issues

Create Feature Page

トラックのジャンル分けやプレイリストとは別に、特定の音楽に絞った特集ページを作成する

なんでそれを作るの?

  • トラックが多くなると埋めれてしまうものが出てくるため
  • トラックをジャンル分けしても埋めれてしまうものが出てくるため
  • プレイリスト化しても埋めれてしまうトラックが多くあるため (Bandcamp ものは現状無理)
  • 特定の音楽を聴くきっかけになるかもしれないため
  • 個人ブログで似たようなことをやってるけどこのサイト内でもやりたいため

こういう感じでやりたい

  • track テーブルからトラックを引っ張ってくる
  • リスト表示はするけど、プレイリスト化はしない (できない)
  • レビューなどはしない
  • 若干プレイリストとかぶるので見た目を少し違う感じに
  • プレイリストと同じように作成後も更新できるように

例えば

  • The 20 Best Tracks of 2017
  • Minimal Folk Ambient Selections
  • Dream Pop Selections

メモ

  • プレイリストより数は増えるのでページネーションの実装はしたほうがいいかも
  • タイトルがプレイリストとかぶる、または似ている感じになるとまぎらわしいかも
  • 作成後の更新は、「更新した」とわかるようにする (現状プレイリストはそれをできていないので)
  • テーブル構成的には playlist, playlist_item と同じ感じかな?

Switch From Less to Sass

Bootstrap 4 の安定版リリースに向けて Less から Sass に変換する。以下、必要なタスクをすべてクリアしたあと、変換すること。

  • 各アセットの css が Sass に対応しているか
  • Less のような @import (less) "/path/to/example.css" が Sass で可能かどうか *1

*1 CSS ファイルを Sass ファイルとしてインポート

モデルの更新時にタグが新たに作成されるときがあるのと、存在するタグが補完されてしまう

原因: yii2-taggable は tagValues をデフォルトで "tag1, tag2, tag3" という文字列で表現するので更新時に tag1 を削除した場合 " tag2, tag3" となって新たに最初にスペースの入った " tag2" というタグが作成されてしまう。

解決方法: selectize のオプションで delimiter: ', ' を追加すること。そうすることで tagValues と selectize 側のタグの認識が同じになり 'tag1' を削除したとしても 'tag2' となり selectize 側?が新しいタグだと認識しなくなるはず。ついでに補完のバグも直る。

Thumbnail optimization

Convert as follows when saving:

  • Bandcamp: ...xxx_[0-9]+.jpg to ...xxx_4.jpg
  • SoundCloud: ...xxx-t500x500.jpg to ...t300x300.jpg
  • Vimeo: ..._[x0-9]+.jpg to ..._320.jpg
  • YouTube: .../hqdefault.jpg to .../mqdefault.jpg

Improve unit tests and acceptance tests

Yii 2.0.10 で Codeception 側に変更があり、テストのディレクトリ構成やフィクスチャ、設定などが変更されたので、それに合わせる。

Upgrade css framework from Bootstrap 3 to Bootstrap 4

  • 各アセットが Bootstrap 4 に対応した何かを提供しているかどうか *1
  • Yii 2 側の Bootstrap 3 に依存しているコードを Bootstrap 4 に置き換えられるかどうか
  • Masonry の代わりに .card-columns を使う (Masonry で OK)

*1 bootstrap-hover-dropdown, selectize など

Bootstrap 4 の安定版がリリースされてから、徐々に対応していく形を取る。
細かなデザインが変わったとしても、良い感じならどんどん採用していく。

Use Nuxt.js

  • api.plusarchive.com リポジトリを作成する (データを提供する API)
  • api.plusarchive.com は Yii で実装する
  • このリポジトリを admin.plusarchive.com にリネームする
  • plusarchive.com リポジトリを作成して Initial commit する
  • README に api.plusarchive.com, plusarchive.com へのリンクを作成する

Upgrade composer from 1.0 to 1.1

1.1 にアップグレードすると hirak/prestissimo がスキップされるのでちょい待ち。あと composer.json の scripts セクションで変更が可能な箇所は修正する (オプションがいくつか追加されたのでいろいろ触る) 。

Deprecation warning of selectize.css

node-sass のバージョンアップで出た警告メッセージ。selectize.css を sass 上で import しているのが原因だと思われる。

カスタムインポーターとかなんやらかんやらあるみたいだけど、これだというものが現状見つからないので、以前にやっていたように package.json の postinstall スクリプトで selectize.css を selectize.scss に置き換えて対処する。これもベストではないが...。

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.