QiitaのOrganizationsのデータを集めるプロジェクト
-
Organizationsの全ユーザのフォロワー数を集計してランキングする。
Fetching Qiita organization members page: https://qiita.com/organizations/sigma/members Total members in sigma organization: 4 Users ranked by follower count: 1. User: hoge, Followers: 777 2. User: fuga, Followers: 666 3. User: hogehoge, Followers: 188 4. User: sigma_devsecops, Followers: 160
Deno: 2.2.5
- install VSCode, Docker
- install VSCode Extensions Dev ContainerS
- On the VSCode,
Ctrl shift pand runDev Containers: Rebuild Containers - create .env and add
QIITA_API_KEY
cat << EOF > org_ranker/.env
QIITA_API_KEY=hogehogefugafuga
EOF- create .env and add
QIITA_API_KEY
cat << EOF > org_ranker/.env
QIITA_API_KEY=hogehogefugafuga
EOF- build docker image
docker compose buildcd org_ranker
deno run --allow-net --allow-env --allow-read main.ts <organization_name>docker compose run deno_app <organization_name>公式ドキュメント通りにinstallすると~/.deno/配下にinstallされてしまう。 Dockerで使う場合などはユーザの$HOME配下にインストールされると不便なので,/usr/local/配下にinstallした
RUN curl -fsSL https://deno.land/install.sh | sudo DENO_INSTALL=/usr/local shdeno init org_rankercd org_ranker
deno run main.ts
deno testdeno fmt
deno fmt --watch # ファイルが変更されると自動でフォーマットされるdeno check main.tsOn the first invocation of deno compile, Deno will download the relevant binary and cache it in $DENO_DIR. deno compile
deno compileはデフォルトで依存関係を自動的に解決するのでmain.tsを指定してcompileするだけで良い。
deno compile --allow-net --allow-env --allow-read --output main main.tsnpm runで実行するやつみたいなものだと思っておけば良さそう
deno.jsonにtaskを定義できるみたい。
deno task dev