GithubHelp home page GithubHelp logo

jiro4989 / coc-radar Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 0.0 11.54 MB

キャラクター保管所のクトゥルフの探索者の能力値をレーダーチャートで表示するWebサイト

Home Page: https://jiro4989.github.io/coc-radar/index.html

License: MIT License

Shell 0.15% Nim 11.42% JavaScript 86.51% HTML 0.19% CSS 1.72%
chart cthulhu-rpg gh-pages javascript nim reactjs

coc-radar's Introduction

jiro4989's github stats

Profile

Key value
Name Jiro (次郎)
Birthday 1995
Place of birth Japan
Job SRE
Skill (Programming) Go, Nim, Bash, Java, Kotlin, Python
Skill (Cloud infra) AWS
Skill (IaC) Terraform, CloudFormation, Ansible

coc-radar's People

Contributors

jiro4989 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

coc-radar's Issues

テスト環境構築

今の所GitHubPagesのdataにしかデータがない。つまり本番のデータしかない状態。
これだとテストがやりづらいので、テスト用の環境を整備する。

色が分かりづらい

2人くらいしかいないとき、0と1がほぼ同じ赤色になって判別しづらい。
カラーマップは定義してあるものの、もうちょい分散するようにしたほうがよい

今は8色しか色を用意していない。
しかしながら、8色でも分散の仕方はあるはずで、以下のように人数によって使う色を分散させたい。

  1. Actor1
  2. Actor2

これが4名のときは

  1. Actor1
  2. Actor2
  3. Actor3
  4. Actor4

という具合に。

このアプローチが可能なら、8色しか用意していなかったカラーマップを増やすことも可能なはず。
しかしながら、カラーマップの定義を今までみたいにベタ打ちで定義するとHTMLのファイルサイズが肥大化するので、
やるとするならJavaScriptで動的にカラーマップを生成する。
Bashで書いたスクリプトをJSで書き直せばいけるだろうか?

page.csvをjsonにしたい

やっぱり構造化データのが好き。

それをやるならnimble publishみたいにデータ追加用のコマンドがいる。
CSVなら手書きでも平気だけれど、JSONなら手書きはしたくない。

JSONの書式チェックのスクリプトも必要になる。

デプロイの仕方も、PRがマージされたときに走るようにしないといけなかったりと、
リリースフローも考える必要がありそう。

いっそのことリポジトリを分けてしまうのもありか?

tagでずれる

tagが2列になったことでレイアウトがずれてしまった。よくよく考えれば、タグはこれからも増え続けるしレイアウトを変更しないといけない

【固定】レーダー出力対象の追加について

この画面の右上の「New Issue」のボタンを押して
追加したい探索者ページのURLを貼り付けて貰えれば、あとは僕の方でそちらをデータに反映します。
追加したい探索者のURLは以下の2つが可能です。

  1. 探索者のページ
  2. 探索者のタグ検索のページ
    (※URLは一例)

僕が対応可能な時しかデータを反映できないため、Issuesを作ってもらってから反映されるまでにタイムラグがあると思います。ご了承ください。

また、データを反映してもブラウザの履歴、キャッシュの関係で画面の表示が反映されない場合があります。
その場合は時間をおいて再度アクセスするか、キャッシュを削除してみてください。

タグを検索欄に入力するだけに留める方法がほしい

クエリパラメータにtagを使用するアプローチは欲しいので、タグでの画面遷移自体は残したい。
しかしながら、自分の探索者を検索するのにいちいちタグを手入力するのもアホらしいので、タグを検索欄に入力するだけというアプローチが欲しい。

棒グラフにする

能力値のほうは円グラフでいいけれど技能値は棒グラフのがよいとの意見をいただいたので。
実際そっちのがわかりやすそうなので反映する

src/coc_radar.nimの移動

プロジェクトとしてはReactのプロジェクトなのでnimのコードはtoolsとかに移動したほうが良いかも

idを変更したい

idという項目のほうが短いし、こちらのほうがより自然だと考える

定期実行jobを組む

今はmasterブランチが更新されたタイミングでデータが更新される。
更新がない日が続くとデータが古いままになってしまうので、定期実行のタスクを組む。
毎日深夜1時くらいに開始を想定。

JSONファイルを分割する

今はすべてのURLを1つのJSONファイルに出力している。
このアプローチだとURLの数が増えたときにデータの取得が完了するのに時間がかかるようになる。
それに関係ないファイルまで取得することになってしまうので、非常に無駄が多い。
よって、必要なデータだけ取得できるようにファイルを分割する。

方針としては

  1. 検索ページで表示するのに必要なindex.json
  2. 1探索者1JSONで、URL末尾のIDをファイル名にしたxxxxxx.json

の2種類にすればファイル数が増えたとしてもある程度処理時間の延びは軽減できると考える。

index.jsonにはいま表示されているテーブルの情報のみ保持する。(tag, id, name)
探索者のJSONのファイル名はIDなので、tagからIDを導き出せるようにする必要がある。
URLクエリパラメータのtagからindex.jsonをfetchし、index.jsonからタグにマッチする探索者のidを取り出せば
探索者ID.jsonをfetchすることは可能なはず。

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.