Giter Club home page Giter Club logo

kirishima2018's Introduction

これはアスタルテゆるゆるアドベントカレンダー 2018 3日目の記事です。

私について

最初に自己紹介ですが、ねじわさと申します。
普段はknzk.meのモデレーターっぽい事をしていて、KnzkAppやKnzkLiveとか色々OSS作ってました。
JavaScriptとかPHPが好きな学生です。

超どうでもいいけど今日(12/3)から私の学校期末テストなんですよね。

霧島鯖との関係

さて、普段はknzk.meにいるので霧島鯖の方はほぼほぼ私を知らないでしょう。

きりひな(と勝手に呼んでいる)とはいつ頃からは忘れたけどそこそこ前からの縁で、たまーに遊びにくる感じです。
また、霧島鯖の改造Mastodonはベースが旧Knzk.meの改造になっているので、そこら辺関係でも関わりがあったりします。

今回やった事

皆さんは霧島鯖の左下にあるRadio機能を使っていますでしょうか。
統計データを取っていないのでどのくらいの割合で使われているかなどは分かりませんが…

そのRadio機能なのですが、それも元はKnzk.meで実装していたものが霧島鯖に移植されたものです。
これは、オープンソースのプレイヤーを無理やりiframeで埋め込んでいるという形でした。

しかし、これによる問題が二点ほどありました。

デザインがダサい

まあそのままなのですが、無理やり埋め込んでいるのでとりあえずダサいです。
スクロールバーとかも出てくるし。

プレイヤーのライセンスが心配

実は大丈夫だった説もある

元々のKnzk.meはGitHub上でプレイヤー部分のみsubmoduleで管理していた(らしい)のですが、
霧島鯖では普通にGitHub上にアップロードされていたため割と心配でした。

また、プレイヤーのコードを改変するPRがあったのですが、それもどうなんだろうなぁ...という話があったりして、
どうせなら作り直そうみたいな感じになりました。

と、いう訳で

JavaScriptは出来てもReactが一切さっぱりピーマンだった私が出したPRです。
Kirishima21/mastodon#21

多分直接DOMを操作している時点でReactとは呼べない気がしますが、一応それっぽいコードは書けました。

仮想DOMの仕組みが全然分からない

これにより、元々Radio上部にあったアナウンスメントの部品を使用する事で一体感が出て、
ライセンスの面でも問題無くなったのでまあ良しとしましょう。(適当)

今後の課題

このプレイヤーでは音量調節ができなかったり、曲名表示ができないので、暇が出来たら直していきたいですし、
もしくは霧島鯖にいるプログラミングできる方が気になっている点を直してくださると有難いです。

最後に

期末テスト、ヤバい。

あとクソどうでも良いけど今日(12/3)私の誕生日なのでもし良ければ @[email protected] に「おめでとーーーー!!!」ってリプ投げまくってくれると嬉しいです。

干し芋投げてくれると嬉しいなー!(

kirishima2018's People

Contributors

nzws avatar

Stargazers

 avatar

Watchers

 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.